首页 > 解决方案 > Pandas Python - 每隔一行从不同的列相乘

问题描述

我的数据如下所示:

Column_1     Column_2    Result
17.3604
            7.4342
20.5787
            13.3504
14.9661
            8.85
12.5978
            6.2025
11.7481
            17.9338
...
            ...

如何将 的第一个值Column_1与 的第一个值相乘Column_2,并将结果放在该值的Result同一行中的列中Column_2,使其如下所示:

Column_1     Column_2    Result
17.3604
            7.4342       129.0607
20.5787
            13.3504      274.7339
14.9661
            8.85         132.4500
12.5978
            6.2025       78.1379
11.7481
            17.9338      210.6881
...
            ...

我试过了:df['Result'] = df.Column_1[0::2] * df.Column_2[1::2]但它没有按预期工作。

知道怎么做吗?

标签: pythonpandasmultiplication

解决方案


你可以试试:

df['Result'] = df.Column_1.ffill()*df.Column_2

输出:

   Column_1  Column_2      Result
0   17.3604       NaN         NaN
1       NaN    7.4342  129.060686
2   20.5787       NaN         NaN
3       NaN   13.3504  274.733876
4   14.9661       NaN         NaN
5       NaN    8.8500  132.449985
6   12.5978       NaN         NaN
7       NaN    6.2025   78.137854
8   11.7481       NaN         NaN
9       NaN   17.9338  210.688076

推荐阅读