分隔列的迭代,矩阵

时间:2018-12-26 20:11:19

标签: python pandas dataframe

从以下数据框中:

enter image description here

我想将每一列除以该列之前的列:我的意思是

column[2] / column[1]
column[3] / column[2]  
column[4] / column[3]  
column[5] / column[6]  
column[7] / column[8]
...
column[13] / column[12]  

1 个答案:

答案 0 :(得分:1)

pct_change为您提供了行与列之间或列与列之间的相对变化(另请参见@ W-B的注释)。

import pandas as pd
import numpy as np

df = pd.DataFrame([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])  # toy dataframe

print(df)

df_new = df.pct_change(axis=1) + 1

print(df_new)


xxx@yyy:~/Desktop/test$ python test.py                                                  
   0   1   2   3                                                                                      
0  1   2   3   4                                                                                      
1  5   6   7   8                                                                                      
2  9  10  11  12                                                                                      
    0         1         2         3                                                                   
0 NaN  2.000000  1.500000  1.333333                                                                   
1 NaN  1.200000  1.166667  1.142857                                                                   
2 NaN  1.111111  1.100000  1.090909