为了账号安全,请及时绑定邮箱和手机立即绑定

如何根据 pandas 中的条件删除行,并将字符串转换为整数进行比较

如何根据 pandas 中的条件删除行,并将字符串转换为整数进行比较

MMTTMM 2023-09-19 15:00:19
我试图删除“建造年份”列中值小于 1920 的所有行。我不明白如何转换为整数,因此我可以评估 1920 年以内的建成条件,然后删除 1920 年之前建造的那些建筑物。任何方向都值得赞赏!没有错误:YearBuilt_convert_to_integer = dframe[13].astype(int)没有错误:YearBuilt_less_than_1920 = YearBuilt_convert_to_integer < 1920输出:YearBuilt_less_than_192042      False43      False44      False45       True46      False        ...  3533    False3534    False3535    False3536    False3537    FalseName: 13, Length: 3347, dtype: bool产生 0 行:dframe = dframe.loc[~dframe[13].astype(int)<1920, :]    0   1   2   3   4   5   6   7   8   9   ... 32  33  34  35  36  37  38  39  40  410 rows × 42 columns
查看完整描述

2 回答

?
神不在的星期二

TA贡献1963条经验 获得超6个赞

dframe[np.invert(dframe.loc[:,13].astype(int)<1920)]



查看完整回答
反对 回复 2023-09-19
?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

当您同时使用 .loc 和布尔索引时,熊猫似乎会变得混乱。一项简单的修改将仅使用布尔索引 dframe_sub = dframe[dframe[13].astype(int) >= 1920]。



查看完整回答
反对 回复 2023-09-19
  • 2 回答
  • 0 关注
  • 92 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信