2017-02-16 232 views
2
>>> data = data.drop(data.columns[[1,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]], axis=1) 
>>> data = data.drop(data.index[[0,1]],axis = 0) 
>>> print(data.head()) 
      0   2 3 4 20 
2 500292014600  .00 .00 .00 NaN 
3 500292014600 100.00 .00 .00 NaN 
4 500292014600 11202.00 .00 .00 NaN 
>>> data = data.reset_index(drop = True) 
>>> print(data.head()) 
       0   2 3 4 20 
0 500292014600  .00 .00 .00 NaN 
1 500292014600 100.00 .00 .00 NaN 
2 500292014600 11202.00 .00 .00 NaN 

如何當我使用df.reset_index列的索引不重置? 我該如何着手將此索引重置爲0,1,2,3,4?重置列索引熊貓?

回答

5

嘗試更換列名:

>>> import numpy as np 
>>> import pandas as pd 

>>> my_data = [[500292014600, .00, .00, .00, np.nan], 
       [500292014600, 100.00, .00, .00, np.nan], 
       [500292014600, 11202.00, .00, .00, np.nan]] 
>>> df = pd.DataFrame(my_data, columns=[0,2,3,4,20]) 
>>> df 
       0  2 3 4 20 
0 500292014600  0.0 0.0 0.0 NaN 
1 500292014600 100.0 0.0 0.0 NaN 
2 500292014600 11202.0 0.0 0.0 NaN 

>>> df.columns = [i for i in range(df.shape[1])] 
>>> df 
       0  1 2 3 4 
0 500292014600  0.0 0.0 0.0 NaN 
1 500292014600 100.0 0.0 0.0 NaN 
2 500292014600 11202.0 0.0 0.0 NaN 
1

在熊貓中,通過索引你基本上是指行索引。正如您在數據中看到的那樣,行索引在drop和reset_index()後復位。

對於列,則需要重命名它們,你可以這樣做

data.columns = [ 0,1,2,3,4] 
2

嘗試以下操作:

df = df.T.reset_index(drop=True).T 
0

如果你有numpy進口import numpy as np

只需將列設置爲基於零的索引data.columns = [np.arange(0,data.shape[1])]