我在下面尝试:
df ['best_rate'] = df.loc [ df [[ 'a', 'b', 'c', ..... , 'z' ]] ].min(axis=1)
其中a
,b
,c
,...,z
是df
中的列。
现在,由于前面的某些声明,当我尝试查找最小值时,其中某些列将不可用。基本上,这些列会像我应用dropna()一样被删除。但是哪个列会丢失取决于数据集。
现在,在删除某些列后,我将查找最小值。我不知道哪些列已删除。但是我知道在删除列之前,新的一组列将是这些列的子集。那么,在尝试查找最小值时如何忽略那些被删除的列?
如果我使用:
df ['best_rate'] = df.loc [ df [[ 'a', 'b', 'c', ..... , 'z' ]] ].min(axis=1)
我收到错误消息:column 'x' not in index
答案 0 :(得分:0)
类似的事情应该起作用:
df['best_rate'] = df.loc[:, set([ 'a', 'b', 'c', ..... , 'z' ]) & set(df.columns)].min(axis=1)
它使用set相交来查找预定义列表和现有列之间的公共列。