2024-09-27 23:28:27 发布
网友
我想计算列的条件平均值: 如果行元素的值大于等于0,则计算所有这些元素的平均值;如果为<;0,则计算这些元素的平均值并存储在avgGain和avgLoss中。在
输入:
ProfitLoss -8.000 14.400 13.150 3.050 -8.000 -8.000 3.425 7.350 -8.000 -8.000 0.000
输出:
所有这些计算都应该在一个语句中使用pandappy或aggregate函数。在
谢谢
IIUC可以做到:
# Setup (for reproducibility) import pandas as pd data = [-8.000, 14.400, 13.150, 3.050, -8.000, -8.000, 3.425, 7.350, -8.000, -8.000, 0.000] df = pd.DataFrame(data, columns=["ProfitLoss"]) # Calculate the respective means (vectorized) avgGain = df[df['ProfitLoss'] > 0].mean().values[0] avgLoss = df[df['ProfitLoss'] < 0].mean().values[0] # Print outputs to console print("avgGain:", avgGain) print("avgLoss:", avgLoss)
如有需要
IIUC可以做到:
输出:
^{pr2}$如有需要
相关问题 更多 >
编程相关推荐