如何将两个数据帧的最小值作为pandas数据帧方程的一部分引用?我尝试使用python min()
函数,该函数不起作用。对不起,如果这在某处有详细记录,但我无法找到解决此问题的有效方法。我正在寻找类似的东西:
data['eff'] = pd.DataFrame([data['flow_h'], data['flow_c']]).min() *Cp* (data[' Thi'] - data[' Tci'])
我也尝试使用pandas min()
函数,这也无效。
min_flow = pd.DataFrame([data['flow_h'], data['flow_c']]).min()
InvalidIndexError: Reindexing only valid with uniquely valued Index objects
我对此错误感到困惑。数据列只是数字和名称,我不确定索引在哪里发挥作用。
In [108]: data['flow_c']
Out[108]:
0 74.014640
1 74.150579
2 74.014640
3 73.960195
4 74.069046
5 73.960195
6 73.987423
7 73.905710
答案 0 :(得分:36)
我的问题对我来说不是很清楚,但我的猜测是你试图获得两个mininum
(不是Series
s)的元素DataFrame
。如果这是您想要的,请尝试:data[['flow_h','flow_c']].min(axis=1)
。
答案 1 :(得分:4)
如果您希望获得多个列的单个最小值:
data[['flow_h','flow_c']].min().min()
第一个“ min()”计算每列的最小值,并返回一个熊猫系列。第二个“最小值”返回每列最小值的最小值。