【发布时间】:2022-01-25 03:52:22
【问题描述】:
我有以下数据框:
a b x y language
0 id1 id_2 3
1 id2 id_4 6 ,0=/%
2 id3 id_6 9 |-|/#
3 id4 id_8 12 text4
我使用 langdetect 来检测 y 列中文本元素的语言。
这是我为此目的使用的代码:
for i, row in df.iterrows():
try:
df.loc[i, "language"] = detect(row["y"])
except:
continue
这是结果:
a b x y language
0 id1 id_2 3
1 id2 id_4 6 ,0=/%
2 id3 id_6 9 |-|/#
3 id4 id_8 12 text4 en
4 id5 id_9 14 text5 de
5 id6 id_10 12
然后我尝试使用以下任一命令用字符串“N/A”填充语言列中的空白:
df['language'].replace([''],"N/A", inplace=True)
df['language'] = df['language'].fillna(0)
对于上面的每个命令,我收到了以下结果:
a b x y language
0 id1 id_2 3 N/A N/A
1 id2 id_4 6 ,0=/% ,0=/%
2 id3 id_6 9 |-|/# |-|/#
3 id4 id_8 12 text4 text4
4 id5 id_9 14 text5 text5
5 id6 id_10 12 N/A N/A
我如何得到以下结果:
a b x y language
0 id1 id_2 3 N/A
1 id2 id_4 6 ,0=/% N/A
2 id3 id_6 9 |-|/# N/A
3 id4 id_8 12 text4 en
4 id5 id_9 14 text5 de
5 id6 id_10 12 N/A
【问题讨论】:
-
请为您认为最有帮助的答案投票,即社区如何保持积极性。