Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python-re:search抛出错误:应为字符串或类似字节的对象_Python_Pandas - Fatal编程技术网

python-re:search抛出错误:应为字符串或类似字节的对象

python-re:search抛出错误:应为字符串或类似字节的对象,python,pandas,Python,Pandas,问题: 我正在学习一个教程,并尝试对csv文件进行重新搜索,该文件包含tweet(日期、用户名、tweet本身、tweet id,以及它是真是假)。 这是我的原始代码: import pandas as pd import re filename = 'sample.csv' data = pd.read_csv(filename, encoding='utf-8') print(data.info()) def word_in_text(word,text): match =

问题:

我正在学习一个教程,并尝试对csv文件进行重新搜索,该文件包含tweet(日期、用户名、tweet本身、tweet id,以及它是真是假)。

这是我的原始代码:

import pandas as pd
import re

filename = 'sample.csv'
data = pd.read_csv(filename, encoding='utf-8')

print(data.info())

def word_in_text(word,text):
     match = re.search(word,text)

     if match:
         return True
     return False

[kai, hatsu] = [0, 0]

for index, row in data.iterrows():
    kai += word_in_text('会', row['text'])
    hatsu += word_in_text('初', row['text'])
这就是它抛出的错误:

Traceback (most recent call last):
File "C:\Python\enkousaiTF.py", line 28, in <module>
kai += word_in_text('会', row['text'])
File "C:\Python\enkousaiTF.py", line 19, in word_in_text
match = re.search(word,text)
File "C:\Python\Python36-32\lib\re.py", line 182, in search
return _compile(pattern, flags).search(string)
TypeError: expected string or bytes-like object
但它只是抛出了另一个错误:

TypeError: decoding str is not supported

然后我尝试用

dtype_dic= {'date': str, 
            'username' : str,
            'text': str,
            'id': str,
            'enko': str}
但它仍然抛出
类型错误:预期的字符串或字节,如object
,即使我检查数据类型时,它都是
object


如何解决此问题?

您的文本文件可能不支持unicode。检查此项并检查格式

更改
时会发生什么情况会'由其他一些“正常”字符串,如
'foo'
?错误仍然出现在同一行吗?@JosuéCortina是的,遗憾的是,它仍然会在同一行上抛出相同的错误,如果您将
行['text']
替换为
'foo'
?。另外,告诉我
类型(行['text'])
的输出是什么?
类型(行['text'])
。我想数据可能有问题,因为当我尝试打印多少次时会 在文档中,它显示了正确的数字(190),但之后它抛出了错误,因此。。我检查了数据,发现了问题所在。由于某些原因,在数据的末尾有三个逗号,
,,
,当我删除它时,一切正常。。。。真的很抱歉
TypeError: decoding str is not supported
dtype_dic= {'date': str, 
            'username' : str,
            'text': str,
            'id': str,
            'enko': str}