【发布时间】:2022-11-01 12:56:20
【问题描述】:
我在这里没有看到任何关于此的帖子。我有一个包含一些数据的数据框,我想用字典中的值替换这些值。这可以简单地使用.replace 完成,但我想保持这种动态并使用配对字典映射引用 df 列名。
import pandas as pd
data=[['Alphabet', 'Indiana']]
df=pd.DataFrame(data,columns=['letters','State'])
replace_dict={
"states":
{"Illinois": "IL", "Indiana": "IN"},
"abc":
{"Alphabet":"ABC", "Alphabet end":"XYZ"}}
def replace_dict():
return
df_map={
"letters": [replace_dict],
"State": [replace_dict]
}
#replace the df values with the replace_dict values
我希望这是有道理的,但为了解释更多,我想用在 replace_dict 中找到的值替换“字母”和“状态”列下的数据,但从 df_map 中找到的键中引用列名。我知道这个例子过于复杂,但我想提供一个更容易理解的例子。
我需要帮助制作函数“replace_dict”来执行上述操作。
预期输出为:
data=[['ABC', 'IN']]
df=pd.DataFrame(data,columns=['letters','State'])
通过创建一个函数,然后按照这些思路运行该函数
for i in df_map:
for j in df_map[i]:
df= j(i, df)
我将如何创建一个函数来运行这些操作?我还没有看到有人尝试使用 replace_dict 中的多个字典键来执行此操作
【问题讨论】:
标签: python pandas dataframe dictionary