pandas - fasttext 错误:预测一次处理一行(删除 '\n')
问题描述
您好我有一个数据框列包含文本。我想使用 fasttext 模型从中进行预测。我可以通过将文本数组传递给 fasttext 模型来实现这一点。
import fasttext
d = {'id':[1, 2, 3], 'name':['a', 'b', 'c']}
df = pd.DataFrame(data=d)
我从系列中删除了 '\n'
name_list = df['name'].tolist()
name_list = [name.strip() for name in name_list]
并做出预测model.predict(name_list)
然而,我得到了ValueError: predict processes one line at a time (remove '\n')
我在列表中没有 '\n' 并'\n' in name_list
返回False
我还发现了一个类似问题的帖子,但仍然遇到同样的错误。
predictions=[]
for line in df['name']:
pred_label=model.predict(line, k=-1, threshold=0.5)[0][0]
predictions.append(pred_label)
df['prediction']=predictions
解决方案
在给出 model.predict(name_list) 之前,尝试给出一个 for 循环:
for item in name_list:
item = item.replace("\n"," ")
model.predict(item)
推荐阅读
- python - 使用运算符“in”计算布尔 NumPy 数组
- google-drive-api - 如何在共享驱动器上显示由其他用户和我的应用程序创建的用户文件和文件夹?
- r - 如何将变量引用和取消引用到函数中并遍历数据框
- python - Python 中是否有与 Swift 的 keypath 功能等效的功能?
- html - 如何在我的 Angular JS 网站中使用在 Adobe XD 中创建的设计?
- pandas - Pandas 复杂排序
- java - 如何在 Spring Framework 的前端接收验证消息?
- html - 边距自动未居中
- reactjs - ChunkLoadError:加载块 XY 失败。- 在生产中随机致命
- javascript - 如何避免在Android中重新渲染相机?