我目前运行以下脚本,它使用Fuzzylogic从列表中替换一些常见单词。 Dataframe df1
包含我可能值的默认列表。 Dataframe df2
是参考Dataframe df1
后进行转换/更改的主要数据帧。代码如下:熊猫数据框包含列表
df1 = pd.DataFrame(['one','two','three','four','five','tsst'])
df2 = pd.DataFrame({'not_shifted':[np.nan,'one','too','three','fours','five','six',np.nan,'test']})
# Drop nan value
df2=pd.DataFrame(df2['not_shifted'].fillna(value=''))
df2['not_shifted'] = df2['not_shifted'].map(lambda x: difflib.get_close_matches(x, df1[0]))
问题是输出是一个包含方括号的数据帧。更糟糕的是,没有一个文本内df2['not_shifted']
是可视/可调出:
Out[421]:
not_shifted
0 []
1 [one]
2 [two]
3 [three]
4 [four]
5 [five]
6 []
7 []
8 [tsst]
请帮助。
'df2.not_shifted.apply(拉姆达X:X [0]如果len(x)= 0,否则, “!”)'或'简单地DF2 .not_shifted.str [0]'。 – Psidom