我使用to_csv保存set
参数。
csv
文件如下。
1,59,“set([17122,196,26405,13032,39657,12427,25133,35951, 38928,2 6088,10258,49235,10326,13176,30450,41787,14084, 46149])“,18,19.0,1 1,5.36363649368
我可以使用read_csv
并返回set
类型,但str
users = pd.read_csv(DATA_PATH + "users_match.csv", dtype={
})
答案 0 :(得分:1)
答案是肯定的。你的解决方案
users = pd.read_csv(DATA_PATH + "users_match.csv", header = None)
只要您在set([...])
附近有双引号,就会将第2列作为字符串返回。 然后使用
users[2].apply(lambda x: eval(x))
将其转换回set
答案 1 :(得分:1)
要将DataFrame的str
对象(以字符“set”开头的字符串)转换为内置的Python set
对象,这是一种方法:
>>> import pandas as pd
>>> df = pd.read_csv('users_match.csv', header=None)
>>> type(df[2][0])
str
>>> df.set_value(0, 2, eval(df[2][0]))
>>> type(df[2][0])
set