如何在具有可变列的行中找到最小值python pandas



我正在下面尝试:

df ['best_rate'] = df.loc [ df [[ 'a', 'b', 'c', ..... , 'z' ]] ].min(axis=1)

其中abc、,。。。,CCD_ 4是CCD_。

现在,由于前面的一些语句,当我试图找到最小值时,其中一些列将不可用。基本上,这些列会被删除,因为我会应用dropna((。但删除哪一列取决于数据集。

现在,我要在一些列被删除后找到最小值。我不知道哪些专栏被删除了。但我知道,在我删除列之前,新的列集将是列的子集。那么,在试图找到最小值时,如何忽略那些已删除的列呢?

如果我使用:

df ['best_rate'] = df.loc [ df [[ 'a', 'b', 'c', ..... , 'z' ]] ].min(axis=1)

我得到错误:column 'x' not in index

这样的东西应该可以工作:

df['best_rate'] = df.loc[:, set([ 'a', 'b', 'c', ..... , 'z' ]) & set(df.columns)].min(axis=1)

它使用set intersect来查找预定义列表和现有列之间的公共列。

最新更新