python熊猫:为什么我不能在同一个read\u csv语句中同时使用index\u col和usecols?增值误差

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

如果我使用以下代码读取csv文件:

    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中进行排序。非常感谢!非常感谢你!