大熊猫获得两列的最小值作为等式的一部分

kil*_*les 24 python dataframe pandas

如何将两个数据帧的最小值作为pandas数据帧方程的一部分引用?我尝试使用min()不起作用的python 函数.对不起,如果这在某处有详细记载,但我无法找到解决此问题的有效方法.我正在寻找类似的东西:

data['eff'] = pd.DataFrame([data['flow_h'], data['flow_c']]).min() *Cp* (data[' Thi'] - data[' Tci'])
Run Code Online (Sandbox Code Playgroud)

我也尝试使用pandas min()功能,这也是行不通的.

min_flow = pd.DataFrame([data['flow_h'], data['flow_c']]).min()

InvalidIndexError: Reindexing only valid with uniquely valued Index objects
Run Code Online (Sandbox Code Playgroud)

我对此错误感到困惑.数据列只是数字和名称,我不确定索引在哪里发挥作用.

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
Run Code Online (Sandbox Code Playgroud)

Hap*_*001 52

你的问题对我来说不是很清楚,但我的猜测是你试图得到mininum两个元素Series(不是DataFrames).如果这是你想要的,试试:data[['flow_h','flow_c']].min(axis=1).


b0l*_*e b 8

如果您想获得多列的单个最小值:

data[['flow_h','flow_c']].min().min()
Run Code Online (Sandbox Code Playgroud)

第一个“min()”计算每列的最小值并返回一个熊猫系列。第二个“min”返回每列最小值中的最小值。