我想在将其写入csv文件时保留作为列表的数据框的列的数据类型。阅读时,我必须使用lis格式的值。
我尝试过
@XmlElement(name = "A")
private String a;
@XmlElement(name = "B")
private String b;
但它说
pd.read_csv('namesss.csv',dtype = {'letters' = list})
这是一个例子
dtype <class 'list'> not understood
df = pd.DataFrame({'name': ['jack','johnny','stokes'],
'letters':[['j','k'],['j','y'],['s','s']]})
print(type(df['letters'][0]))
df
<class 'list'>
name letters
0 jack [j, k]
1 johnny [j, y]
2 stokes [s, s]
df.to_csv('namesss.csv')
print(type(pd.read_csv('namesss.csv')['letters'][0]))
答案 0 :(得分:1)
您可以使用ast module
将字符串放入列表中:
import ast
df2 = pd.read_csv('namesss.csv')
df2['letters'] =[ast.literal_eval(x) for x in df2['letters'] ]
In [1] : print(type(df2['letters'][0]))
Out[1] : <class 'list'>