我用熊猫编写了代码,以便传递CSV并检索列,然后我有更多的代码应该使用re库来拆分数据,但是会引发错误,指出“ TypeError:期望的字符串或类似字节的对象。”
我相信我只需要在运行re之前将CSV转换为字符串即可,但是我不知道怎么做。
CSV列中的数据如下:“ HB1.A1D62no.0016,HB31.N33NO.89,HB 54 .N338”
import pandas as pd
data = pd.read_csv('HB_Lib.csv', delimiter = ',')
s = [data[['Call Number']]]
import re
pattern = r"(^[a-z]+)\s*(\d+(?:\.\d+)?)"
print(list(map("".join, [re.findall(pattern, part, flags=re.I)[0] for part in s])))
跟踪:
Traceback (most recent call last):
File "C:/Python/test2.py", line 8, in <module>
print(list(map("".join, [re.findall(pattern, part, flags=re.I)[0] for part in s])))
File "C:/Python/test2.py", line 8, in <listcomp>
print(list(map("".join, [re.findall(pattern, part, flags=re.I)[0] for part in s])))
File "C:\Python37\lib\re.py", line 223, in findall
return _compile(pattern, flags).findall(string)
TypeError: expected string or bytes-like object
答案 0 :(得分:0)
data['Call Number'] = data['Call Number'].astype(str)
答案 1 :(得分:0)
我认为您应该做的第一件事是在声明s时移除外部方形制动盘。
因此,获得类似的内容
a = data[['something']]