2016-06-21 28 views
2

我有一個名爲ndf2這個熊貓數據幀:差異爲所有列設置索引列

 ds  sc 
0 1000 0.516512 
1 1100 0.542311 
2 1200 0.552666 
3 1300 0.567540 
4 1400 0.585531 
5 1500 0.595928 
6 1600 0.601140 
7 1700 0.602802 
8 1800 0.605209 
9 1900 0.616163 
10 2000 0.627078 
11 2100 0.632283 

我想計算爲列設置索引列的每一行之間的德差:

ndf2.set_index().diff() 

是給我這個錯誤:

TypeError: set_index() missing 1 required positional argument: 'keys'

我怎樣才能改變呢?

回答

3

我想你只需要diff

print (df.diff()) 
     ds  sc 
0  NaN  NaN 
1 100.0 0.025799 
2 100.0 0.010355 
3 100.0 0.014874 
4 100.0 0.017991 
5 100.0 0.010397 
6 100.0 0.005212 
7 100.0 0.001662 
8 100.0 0.002407 
9 100.0 0.010954 
10 100.0 0.010915 
11 100.0 0.005205 

或加列名作爲參數傳遞給set_indexdiff

print (df.set_index('ds').diff()) 
      sc 
ds    
1000  NaN 
1100 0.025799 
1200 0.010355 
1300 0.014874 
1400 0.017991 
1500 0.010397 
1600 0.005212 
1700 0.001662 
1800 0.002407 
1900 0.010954 
2000 0.010915 
2100 0.005205