我正在下面尝试:
df ['best_rate'] = df.loc [ df [[ 'a', 'b', 'c', ..... , 'z' ]] ].min(axis=1)
其中a
、b
、c
、,。。。,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来查找预定义列表和现有列之间的公共列。