[英]Applying python dictionary to column of a CSV file
我有一个 CSV 文件,其中包含一个对用户不友好的列数据。 我需要将这些数据翻译成有意义的东西。 简单的查找/替换似乎很笨重,因为我要翻译的可能组合有几十个,如果不是几百个的话。
例如:BLK = 黑色或 MNT TP = 山顶
可能有几十个甚至几百个翻译——我在 CSV 表中已经有很多翻译了。 问题是如何使用该字典来更改另一个 CSV 表中的值。 同样重要的是要注意,这将(最终)需要每隔几分钟自行运行一次 - 而不仅仅是一次性翻译。
如果您能更详细地描述您正在处理的数据是什么,那就太好了。 不过我会尽力猜测。
假设您有一个 CSV 文件,您使用pandas
将其读入名为df
的数据框和名为col
的“非用户友好”列。 要替换col
中的所有值,首先,您需要一个包含所有键(原始文本)和值(新文本)的字典:
my_dict = {"BLK": "Black", "MNT TP": Mountain Top,...}
然后,将 map 字典列到:
df["col"] = df["col"].map(lambda x: my_dict.get(x, x))
如果某个键出现在字典中,则将其替换为字典中新的对应值,否则保持原值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.