Python/Pandas:使用(Python-)列表读取csv
因此,我将以下格式的数据保存在csv中 供应商1,产品,[[rating',[review_text',datetime.datetime(2014,11,21,0,0)],[rating2',[review2_text',datetime.datetime(2014,11,29,0,0)]] 好几排。格式为Python/Pandas:使用(Python-)列表读取csv,python,csv,pandas,Python,Csv,Pandas,因此,我将以下格式的数据保存在csv中 供应商1,产品,[[rating',[review_text',datetime.datetime(2014,11,21,0,0)],[rating2',[review2_text',datetime.datetime(2014,11,29,0,0)]] 好几排。格式为string,string,list。 列表的长度可以是可变的。在这个列表中是包含我想在熊猫中使用的数据的列表。例如,我想在给定的一天对产品(行)的评论进行计数。我想我可以通过pandas.
string,string,list
。
列表的长度可以是可变的。在这个列表中是包含我想在熊猫中使用的数据的列表。例如,我想在给定的一天对产品(行)的评论进行计数。我想我可以通过pandas.read\u csv(…)
导入这个。分隔符当然是逗号,但结果很奇怪,将列表拆分为多个逗号,只留下用于拆分的逗号
导入后的预期格式应为
(第1行)供应商1产品评审列表
这样,我就可以在第三栏中查找日期并对其进行总结。
有没有办法做到这一点?我不确定csv格式是否理解数组。我会考虑用不同的格式对数据进行格式化。< /P> 如果设置了3个属性,第三个属性是数组,那么可以将其设置为字符串,并使用python的
eval
获取数组变量。不过在这里要小心。。aseval
可能会产生破坏性后果。只有在完全控制输入时才使用此选项
对于包含以下内容的输入csv文件(请注意阵列周围的“
):
python脚本,如:
import pandas as pd
import datetime
f = pd.read_csv("file.csv")
for index, row in f.iterrows():
as_array = eval(row['reviewlist'])
将为您提供一个数组变量来操作
import pandas as pd
import datetime
f = pd.read_csv("file.csv")
for index, row in f.iterrows():
as_array = eval(row['reviewlist'])