python – 在期望的原始文本文件上迭代,收到字符串对象

前端之家收集整理的这篇文章主要介绍了python – 在期望的原始文本文件上迭代,收到字符串对象前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试构建一个如 this link.中提到的朴素贝叶斯分类
参考这条线
X_new_tfidf = tfidf_transformer.transform(X_new_counts)

在Training the Classifier子标题下,我在我的代码中有一个类似的行X_new_counts = count_vect.transform(input.plot_movie),它应该使用iterable作为transform函数的输入.输入是来自DataFrame的记录,其类型为pd.Series,包含以下条目,我将input.plot_movie作为输入转换为函数

但是,我收到以下错误:对期望的原始文本文件进行Iterable,收到字符串对象

我该如何解决这个错误?我还提到this答案,其中该人说s是可迭代的,因为它被分配了一个字符串.我还遇到了this link,遇到了TypeError:’String’对象不可迭代.我在这里错过了什么吗?这些联系似乎相互矛盾.

编辑:
我刚刚意识到input.plot_movie的类型是unicode,并决定将其转换为字符串.我再次遇到同样的错误.

解决方法

这个问题的解决方案是因为input只是一个String,但是需要的是一个包含单个元素的列表(或者一个可迭代的)(它只是String本身).

可以通过添加以下行来删除错误

input=[input]

之前

X_new_counts = count_vect.transform(input.plot_movie)

猜你在找的Python相关文章