【发布时间】:2020-06-20 22:37:07
【问题描述】:
我想在数据框中添加一个新列,如果它是用英文编写的,它将粘贴另一列中的数据,如果不是英文,则使用 langdetect 库不粘贴任何内容。
df['lyrics_english'] = np.where(detect(df["lyrics"]) == 'en', df["lyrics"], '')
我希望,意思很清楚。但我有这样的错误。
File "C:/Users/PycharmProjects/pythontask/example", line 128, in <module>
df['lyrics_english'] = np.where(detect(df["lyrics"]) == 'en', df["lyrics"], '')
File "C:\Users\AppData\Local\Programs\Python\Python38-32\lib\site-packages\langdetect\detector_factory.py", line 129, in detect
detector.append(text)
File "C:\Users\AppData\Local\Programs\Python\Python38-32\lib\site-packages\langdetect\detector.py", line 104, in append
text = self.URL_RE.sub(' ', text)
TypeError: expected string or bytes-like object
如果我输入
df['lyrics_english'] = np.where(detect(df["lyrics"]) == 'en', 0, '')
再次出现与 AppData 关联的相同错误。我能做什么?
【问题讨论】:
-
detect函数的内容是什么?
标签: python pandas numpy dataframe sentiment-analysis