Pandas read_csv摆脱了封闭的双引号

use*_*890 5 python csv pandas

这是我的例子:

我首先创建数据帧并将其保存到文件中

import pandas as pd
df = pd.DataFrame({'col_1':[['a','b','s'], 23423]})
df.to_csv(r'C:\test.csv')
Run Code Online (Sandbox Code Playgroud)

然后df.col_1[0]返回['a','b','s']一个列表

后来我从文件中读到了它:

df_1 = pd.read_csv(r'C:\test.csv', quoting = 3, quotechar = '"')
Run Code Online (Sandbox Code Playgroud)

现在df_1['col_1'][0]返回"['a' 's']"一个字符串.

我想回到列表.我正在尝试不同的read_csv设置,但到目前为止没有运气

piR*_*red 6

如果没有一点工作,你就不会得到这份清单

使用literal_eval该列表转换

import ast

conv = dict(col_1=ast.literal_eval)
pd.read_csv(r'C:\test.csv', index_col=0, converters=conv).loc[0, 'col_1']

['a', 'b', 'c']
Run Code Online (Sandbox Code Playgroud)