如何 select 所有包含值 *在 select 列中* 大于阈值的行?
How to select all rows which contain values *in selected columns* greater than a threshold?
我正在尝试做与 中相同的事情,但我有一个字符串类型的列,我需要将其保留在数据框中,以便我可以识别哪些行是哪些行。 (我想我可以通过索引来做到这一点,但我希望能够节省一个步骤。)有没有一种方法可以在使用 .any() 时不对列进行计数,而是将其保留在生成的数据框中?谢谢!
这是所有列上的单词的代码:
df[(df > threshold).any(axis=1)]
这是我现在正在使用的硬编码版本:
df[(df[list_of__selected_columns] > 3).any(axis=1)]
这对我来说似乎有点笨拙,所以我想知道是否有更好的方法。
可以用.select_dtype
全选,比如数值列:
df[df.select_dtype(include='number').gt(threshold).any(axis=1)]
或者一大块连续的列 iloc
:
df[df.iloc[:,3:6].gt(threshold).any(axis=1)]
如果您想 select 一些随机的列列表,您最好通过硬编码列表来解决。
我正在尝试做与
这是所有列上的单词的代码:
df[(df > threshold).any(axis=1)]
这是我现在正在使用的硬编码版本:
df[(df[list_of__selected_columns] > 3).any(axis=1)]
这对我来说似乎有点笨拙,所以我想知道是否有更好的方法。
可以用.select_dtype
全选,比如数值列:
df[df.select_dtype(include='number').gt(threshold).any(axis=1)]
或者一大块连续的列 iloc
:
df[df.iloc[:,3:6].gt(threshold).any(axis=1)]
如果您想 select 一些随机的列列表,您最好通过硬编码列表来解决。