我的数据(.csv)看起来像这样:
col1, col2, col3, col4, col5, col6
XXX, BBB, "[{\"col31\":\"XXX\",\"col32\":\"XXX\",\"col33\":1}, {\"col31\":\"XXX\",\"col32\":\"XXX\",\"col33\":1}]", DDD, EEE, GGG
XXX, BBB, "[{\"col31\":\"XXX\",\"col32\":\"XXX\",\"col33\":1}]", DDD, , GGG
当我使用pd.read_csv()时,结果将是:
result from my attempt
我希望table是:
| col1| col2| col3| col4| col5| col6|
| --|--|--|--|--|--|
| XXX| BBB| [{“col31”:“XXX”,“col32”:“XXX”,"col33:1},{“col31”:“XXX”,“col32”:“XXX”,“col33”:1}]| DDD| EEE| GGG|
| XXX| BBB| [{“col31”:“XXX”,“col32”:“XXX”,col33:1}]| DDD||GGG|
而第3列是字典列表格式。
2条答案
按热度按时间nwo49xxi1#
看起来你在引号/转义方面有问题,这可以由pandas从头开始处理,但你必须将正确的参数传递给
read_csv
,因为默认参数对你不起作用:sep=','
指定字段分隔符(默认)quotechar='"'
表示"
是引号(默认)*
escapechar='\\'
表示\
正在转义"
中的一些*
skipinitialspace=True
忽略,
分隔符后的空格输出量:
注意,这将导入“字典列表”作为字符串,如果你需要python对象,你可以进一步用途:
h6my8fg22#