Python pandas从csv文件中读取列表数据类型中的列表

时间:2017-11-04 06:41:17

标签: python list csv

我有一个csv文件,如下所示:

A       B
aaa     [['a1','b1'],['a2','b2']]
bbb     [['a3','b3']]

我尝试将此文件读入python。我希望列表数据类型中的“B”列 我试过了 pd.read_csv('filename.csv'),我得到的是str类型"[['a1','b1'],['a2','b2']]",而不是列表类型 我也试过pd.read_csv('filename.csv', converters={'B':list}),我在这里得到的是:[[,[','','1,','b,'....,而不是我想要的清单。
你能告诉我如何直接从csv文件中读取列表吗?非常感谢。

2 个答案:

答案 0 :(得分:1)

此处的问题是由列 B list的序列化格式引起的。它存储为列表的字符串表示形式。为了从字符串中恢复python列表,您可以使用eval作为转换器:

df = pd.read_csv(source, converters={'B': eval})

答案 1 :(得分:0)

阅读列表你应该试试这个

import csv
with open('filename.csv', 'rb') as f:
    reader = csv.reader(f)
    your_list = list(reader)

print your_list