从以下数据框中:
我想将每一列除以该列之前的列:我的意思是
column[2] / column[1]
column[3] / column[2]
column[4] / column[3]
column[5] / column[6]
column[7] / column[8]
...
column[13] / column[12]
答案 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