我在pandas中有一个来自csv文件的Dataframe对象。我想检查这些列中是否有负值。 这是我的数据帧
d = {'country_region': ["Afganistan", "Albania","Poland"], 'confirmed': [23131, 323134,0]}
df2 = pd.DataFrame(data=d)
(df2 < 0).any().any()
或
(df2.columns[1] < 0).any().any()
两次都出现错误'<;'“str”和“int”实例之间不支持
虽然我检查并确认列是int64。我做错了什么
在
(df2 < 0).any().any()
中,发生的情况是在所有列上测试条件。因为您有一些字符串列,str < 0
没有意义在另一种情况下,
df2.columns[1]
返回'confirmed'
,因此条件(df2.columns[1] < 0).any().any()
与('confirmed' < 0).any().any()
相同,它再次测试字符串是否小于零只有这样一列,
(df2[df2.columns[1]] < 0).any().any()
应该可以工作相关问题 更多 >
编程相关推荐