[英]How to identify minimum squared value of an entire pandas dataframe column by column?
我有一个 pandas dataframe 像这样:
column1 | column2 | column3
1 | 4 | 10.4
4 | 7 | 11.1
3 | 3 | 3.3
我如何计算整个列的平方值的总和(我在循环中尝试像deviation = df[columnName].pow(2).sum()
的东西,但是非常欢迎想法?)但后来也确定具有最小总和和实际最小总和的列?
编辑:添加所需的 output
在这种情况下,所需的 output 将是:
Minimum sum of squared values: 26
Column containing minimum sum of squared values: column1
您可以计算整个数据帧的平方和,它返回一个以列名作为索引的系列 object。 然后您可以使用min
和idxmin
找到最小值和最小索引:
col_squares = df.pow(2).sum()
col_squares
#column1 26.00
#column2 74.00
#column3 242.26
#dtype: float64
col_squares.min(), col_squares.idxmin()
#(26.0, 'column1')
获得相同结果的更简单/易于理解的方法如下
def minimum_square_sum_col(col):
sums = 0
for i in col:
sums += i**2
return sums
col_to_sum_dict = dict(df.apply(minimum_square_sum_col))
print(col_to_sum_dict)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.