给定以下dataframe:
| col_a| col_B| col_c| col_d|
| - -----|- -----|- -----|- -----|
| - 一百|2| 4|一百|
| 两百|4|八|两百|
我想计算不包括最小值和最大值的各行的平均值:
| col_a| col_B| col_c| col_d|平均值超出最小值最大值|
| - -----|- -----|- -----|- -----|- -----|
| - 一百|2| 4|一百|三个|
| 两百|4|八|两百|六|
我知道我可以通过mean(axis=1)
使用mean
,但我不知道如何排除min和max值。我处理的数据集非常大,所以理想情况下,我正在寻找一个矢量化的解决方案。
有什么想法吗
创建dataframe的代码:
data = {
"col_a": [-100, -200],
"col_b": [2, 4],
"col_c": [4, 8],
"col_d": [100, 200],
}
df = pd.DataFrame(data)
2条答案
按热度按时间3zwjbxry1#
我认为这是一个简单的方法:
编辑:需要先求MAX和MIN,再做负值
8yoxcaq72#
Python一行程序: