У меня есть df, и он содержит все числовые столбцы.Я хочу найти cumprod
для каждого столбца и добавить результат результата каждого столбца рядом.Как это сделатьЯ хочу, чтобы этот результат для удобства сравнивался
Например:
Мой Ввод df:
col1 col2 col3
0 1.000000 1.000000 1.000000
1 0.998766 0.999490 0.998892
2 0.997779 0.999081 0.998005
3 0.996299 0.998469 0.996676
4 0.994573 0.997754 0.995126
5 0.993095 0.997140 0.993797
6 0.991125 0.996322 0.992027
7 0.989648 0.995708 0.990699
8 0.988171 0.995094 0.989372
9 0.986695 0.994480 0.988045
10 0.984729 0.993660 0.986276
11 0.983010 0.992943 0.984730
Cum prod of df:
col1 col2 col3
0 1.000000 1.000000 1.000000
1 0.998766 0.999490 0.998892
2 0.996547 0.998572 0.996899
3 0.992859 0.997043 0.993585
4 0.987471 0.994803 0.988742
5 0.980653 0.991958 0.982609
6 0.971949 0.988310 0.974775
7 0.961887 0.984069 0.965708
8 0.950509 0.979241 0.955444
9 0.937863 0.973836 0.944022
10 0.923541 0.967662 0.931066
11 0.907850 0.960833 0.916849
Ожидаемый результат:
col1 col1 col2 col2 col3 col3
0 1.000000 1.000000 1.000000 1.000000 1.000000 1.000000
1 0.998766 0.998766 0.999490 0.999490 0.998892 0.998892
2 0.997779 0.996547 0.999081 0.998572 0.998005 0.996899
3 0.996299 0.992859 0.998469 0.997043 0.996676 0.993585
4 0.994573 0.987471 0.997754 0.994803 0.995126 0.988742
5 0.993095 0.980653 0.997140 0.991958 0.993797 0.982609
6 0.991125 0.971949 0.996322 0.988310 0.992027 0.974775
7 0.989648 0.961887 0.995708 0.984069 0.990699 0.965708
8 0.988171 0.950509 0.995094 0.979241 0.989372 0.955444
9 0.986695 0.937863 0.994480 0.973836 0.988045 0.944022
10 0.984729 0.923541 0.993660 0.967662 0.986276 0.931066
11 0.983010 0.907850 0.992943 0.960833 0.984730 0.916849
Примечание: если я получу cum_of_coln
вместо coln
в имени столбца, то предпочтительнее будет
Код для получения cum_prod, который я использовал,
print df
print df.cumprod()