Python 如何选择所选列*中包含值*大于阈值的所有行?

Python 如何选择所选列*中包含值*大于阈值的所有行?,python,pandas,filter,any,Python,Pandas,Filter,Any,我正试图做与中相同的事情,但我有一个字符串类型的列,我需要保留在数据框中,以便我可以识别哪些行是哪些行。(我想我可以通过索引来实现这一点,但我希望能够保存一个步骤。)有没有一种方法可以在使用.any()时不计算列,而是将其保留在生成的数据帧中?谢谢 以下是所有列上显示文字的代码: df[(df > threshold).any(axis=1)] df[df.select_dtype(include='number').gt(threshold).any(axis=1)] 以下是我目前正

我正试图做与中相同的事情,但我有一个字符串类型的列,我需要保留在数据框中,以便我可以识别哪些行是哪些行。(我想我可以通过索引来实现这一点,但我希望能够保存一个步骤。)有没有一种方法可以在使用.any()时不计算列,而是将其保留在生成的数据帧中?谢谢

以下是所有列上显示文字的代码:

df[(df > threshold).any(axis=1)]
df[df.select_dtype(include='number').gt(threshold).any(axis=1)]
以下是我目前正在使用的硬编码版本:

df[(df[list_of__selected_columns] > 3).any(axis=1)]

这对我来说似乎有点笨拙,所以我想知道是否有更好的方法。

您可以使用
。选择\u dtype
选择全部,比如数字列:

df[(df > threshold).any(axis=1)]
df[df.select_dtype(include='number').gt(threshold).any(axis=1)]
或者是一块带有
iloc
的连续列:

df[df.iloc[:,3:6].gt(threshold).any(axis=1)]

如果您想选择一些随机列列表,最好通过硬编码列表解决。

请共享数据,并提供预期输出。我的数据与第一个问题示例中的数据相同,链接到: