首页 > 解决方案 > TypeError:Pandas 中的预期字符串或类似字节的对象

问题描述

我想标记文本,但不能。我该如何解决这个问题?这是我的问题: 在此处输入图像描述

第二张图是我的问题

#read_text from file

data = pd.read_csv("input data.txt",encoding = "UTF-8")

print(data)

输出:孟加拉语文本

t = Tokenizers()
print(t.bn_word_tokenizer(data))

错误

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-17-f9f299ecf33d> in <module>
      1 `t = Tokenizers()`
----> 2 `print(t.bn_word_tokenizer(dataStr))`

D:\anaconda\lib\site-packages\bnltk\tokenize\bn_word_tokenizers.py in bn_word_tokenizer(self, input_)
     15                 `tokenize_list` = []
     16                 `r = re.compile(r'[\s\।{}]+'.format(re.escape(punctuation)))`
---> 17                 `list_ = r.split(input_)`
     18                 `list_ = [i for i in list_ if i`]
     19                 `return list_`

TypeError: expected string or bytes-like object

标签: pythonpandas

解决方案


尝试这个:

for column in data:
    a = data.apply(lambda row: t.bn_word_tokenizer(row), axis=1)
    print(a)

这将一次打印一列。如果您想转换整个数据帧而不是只打印,则在上面的代码中将 a 替换为 data[column] 。


推荐阅读