joa*_*asa 3 python dictionary dataframe pandas
我有一个包含3列的数据框,所有这些都有字符串值.数据框具有以下形式:
Key Word Synonym Alternatives
A word1 NaN
A word2 NaN
A word3 word11
B word4 word12
B word5 NaN
B word6 word13
C word7 word14
C word8 NaN
C word9 NaN
D word10 word15
Run Code Online (Sandbox Code Playgroud)
我想要的是将它转换为字典,它将根据Key Word
列进行分组,并为每个key_word返回所有相应的同义词和替代同义词.所以,所有的值A
都将指代存在于Synonym
和Alternatives
for A
等中的相应值.有没有办法做到这一点?先感谢您.
我认为你需要stack
掉落NaN
然后groupby
用list
.最后来电to_dict
:
d = df.set_index('Key').stack().groupby('Key').apply(list).to_dict()
print (d)
{'B': ['word4', 'word12', 'word5', 'word6', 'word13'],
'D': ['word10', 'word15'],
'C': ['word7', 'word14', 'word8', 'word9'],
'A': ['word1', 'word2', 'word3', 'word11']}
Run Code Online (Sandbox Code Playgroud)