You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python DataFrame中筛选小于等于3072的数据?

解决方法

你的问题在于把布尔判断结果直接覆盖了原列,所以只看到True/False,而不是筛选出符合条件的数据。按下面的方式操作就能拿到具体数据:

步骤1:确保列是数值类型

先把字符串列转成数值型(如果有非数字内容,errors='coerce'会把它们转成NaN,避免报错):

df['Free disk space'] = pd.to_numeric(df['Free disk space'], errors='coerce')

步骤2:筛选符合条件的行

用布尔索引直接筛选整个DataFrame,就能得到所有满足<=3072的数据行:

# 筛选出符合条件的全部数据
filtered_data = df[df['Free disk space'] <= 3072]

# 如果只需要这一列的具体数值,就取对应列
filtered_values = filtered_data['Free disk space']

也可以一步完成(不修改原列)

如果不想改动原DataFrame的列类型,直接在筛选时转换:

filtered_data = df[pd.to_numeric(df['Free disk space'], errors='coerce') <= 3072]

注意:你的代码里列名写的是Free Disk Space,但原始数据列名是Free disk space,大小写和空格要完全对应,不然会报KeyError。

内容的提问来源于stack exchange,提问作者Priyatosh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 22:09:54