如何编写Python代码实现DataFrame每行元素相乘并得到指定输出?
逐行计算DataFrame元素乘积的实现
直接使用pandas内置的行向聚合方法即可完成计算,无需手动循环遍历,运行效率更高,完整实现流程和代码如下:
- 导入pandas依赖库
- 构造和题目一致的输入DataFrame
- 调用
prod()方法沿行维度(axis=1)计算每行所有元素的乘积,将结果封装为列名为Multiplication的输出DataFrame
import pandas as pd # 构造题目给定的输入数据 df = pd.DataFrame( data={ "A": [1, 1, 1], "B": [2, 3, 1], "C": [3, 5, 1] }, index=[1, 2, 3] ) # 计算行乘积并匹配输出格式 result = pd.DataFrame({"Multiplication": df.prod(axis=1)})
代码运行后得到的输出完全匹配题目要求的格式:
Multiplication 1 6 2 15 3 1
补充提示:prod()方法默认会自动跳过数据中的缺失值(NaN),如果需要将含缺失值的行的乘积结果直接判定为0,可在方法调用时传入skipna=False参数。
内容的提问来源于stack exchange,提问作者Anant Sakhare
相关产品推荐
相关产品推荐

