0

从(数字)pandas DataFrame 中获取最多可变行的有效方法是什么?对于大多数可变行,我的意思是相对于列值变化最大的行 - 具有最高标准偏差的行,但由于每一行可能处于不同的比例,不能只取每行的最大绝对标准偏差跨栏。定义它的一种方法是计算绝对变异系数:

df = pandas.DataFrame({"a": np.random.randn(10), "b": np.random.randn(10), "c": np.random.randn(10)})
new_df = df.std(axis=1).div(df.mean(axis=1)).abs()
var_df = df[new_df.max(axis=1) > np.percentile(new_df.max(axis=1),80)]

在 pandas/numpy 中是否有更好的更简洁/有效的方法来做到这一点?

4

0 回答 0