我想将字典值与csv Dataframe 列中的条目进行匹配,并将相应的字典键放在新列中。
我有一个csv数据框,有一个链接和六列数字。我有一个字典,网站和许多链接。
import pandas as pd
# reproducible data
data = {'Link': ['A1', 'B2', 'X7', '8G'],
'Town1': [0.124052256, 0.939612252, 0.861338299, 0.981016558],
'Town2': [0.605572804, 0.561737172, 0.479567258, 0.476371433],
'Town3': [0.41687511, 0.321543551, 0.1243927, 0.097894068],
'Town4': [0.068305033, 0.280721459, 0.600126058,0.93097328]}
# Create DataFrame
df = pd.DataFrame(data)
# Print the output.
df
#Dictionary
d = {'Sample1': '[A1, 6H, 8J, A3, 4L]', 'Sample2': '[X7, 8G, 4R]', 'Sample3': '[B2, V6, 8U]' }
我想要找到字典值与“链接”列中的条目匹配的位置,并在同一csv文件中创建一个新列,其中包含字典键。
这是我所尝试的,它在新列中返回None
def get_key(node):
for node in df['Link']:
if node in d.values():
return d.keys()
df['Parent'] = df['Link'].apply(lambda x: get_key(x))
df
输出如下:
我最不想做的事情是对df ['Parent']列执行. groupby.sum(),并为Samples和每个'Town'列中的总和创建一个最终的透视表。
决赛桌示例:
1条答案
按热度按时间juud5qan1#