删除pandas中的索引列

我有以下代码导入CSV文件。 有3列,我想把他们的前两个variables。 当我把第二列设置为variables“效率”时,索引列也被加上了。 我怎样才能摆脱索引列?

df = pd.DataFrame.from_csv('Efficiency_Data.csv', header=0, parse_dates=False) energy = df.index efficiency = df.Efficiency print efficiency 

我试过使用

 del df['index'] 

我设置后

 energy = df.index 

我发现在另一个职位,但结果在“KeyError:'索引'”

DataFrames和Series始终有一个索引。 虽然它显示在列的旁边,但它不是列,这就是为什么del df ['index']不起作用。

如果要用简单的顺序号replace索引,请使用df.reset_index() 。 我强烈build议读一下pandas的文档,比如10分钟pandas,以了解为什么索引在那里是如何使用的。

当你读取和从你的csv文件包括参数index = False所以例如

  df.to_csv(filename , index = False) 

并从csv中读取

 df.read_csv(filename , index = False) 

这应该防止这个问题,所以你不需要以后修复它。

例如,您可以将其中一列设置为索引,以防其为“id”。 在这种情况下,索引列将被您select的列中的一个replace。

 df.set_index('id', inplace=True) 

如果您的问题与我只想将列标题从0重置为列大小的问题相同。 做

 df = pd.DataFrame(df.values); 

编辑:

不是一个好主意,如果你有不同的数据types。 更好的使用

 df.columns = range(len(df.columns)) 

你可以使用from_csv函数的index_col参数指定哪一列是你的csv文件中的一个索引,如果这不能解决你的问题,请提供你的数据的例子