python熊猫:为什么我不能在同一个read\u csv语句中同时使用index\u col和usecols?增值误差
如果我使用以下代码读取csv文件:python熊猫:为什么我不能在同一个read\u csv语句中同时使用index\u col和usecols?增值误差,python,pandas,valueerror,Python,Pandas,Valueerror,如果我使用以下代码读取csv文件: df = pd.read_csv('amazon2.csv' , names=["year","state","month","number","date"] , index_col = ['month'] , usecols=["year","state","number"] , encoding = "ISO-88
df = pd.read_csv('amazon2.csv'
, names=["year","state","month","number","date"]
, index_col = ['month']
, usecols=["year","state","number"]
, encoding = "ISO-8859-1")
将引发以下错误:
raise ValueError("Index {col} invalid".format(col=col))
ValueError: Index month invalid
但如果usecols或index_col被注释掉,则不会引发错误
提前谢谢!
数据库如下所示:
错误源是由于列列表中未包含索引列名月份:usecols
df1=pd.read_csv("test.csv",index_col="month",usecols=["year","state","number","date","month"])
输出:
year state number date
month
Janeiro 1998 Acre 0 1998/1/1
Janeiro1 1998 Acre 1 1998/1/1
Janeiro1 1999 Acre2 2 1999/1/1
Janeiro2 2000 Acre 3 2000/1/1
Janeiro2 2000 Acre1 4 2000/1/1
但是我同意索引列中不应该有重复的值。错误源是因为索引列名称month未包含在列列表中:usecols
df1=pd.read_csv("test.csv",index_col="month",usecols=["year","state","number","date","month"])
输出:
year state number date
month
Janeiro 1998 Acre 0 1998/1/1
Janeiro1 1998 Acre 1 1998/1/1
Janeiro1 1999 Acre2 2 1999/1/1
Janeiro2 2000 Acre 3 2000/1/1
Janeiro2 2000 Acre1 4 2000/1/1
但是我同意索引列中不应该有重复的值。可能需要允许索引中有重复的值。默认情况下,我认为索引只有唯一的值。我同意@mgrollins的观点,即索引是问题最可能的根源。在不将该列指定为索引的情况下对其进行解析,然后在Pandas中进行排序。可能需要允许索引中存在重复项。默认情况下,我认为索引只有唯一的值。我同意@mgrollins的观点,即索引是问题最可能的根源。解析它而不指定该列作为索引,然后在Pandas中进行排序。非常感谢!非常感谢你!