我只想选择那些满足我条件的行。
options = ['apple', 'banana','cat','dog']
#selecting rows based on condition
rslt_df = data[(data['Animal'] == "All") & data['Category'].isin(options)]
print(rslt_df)
但是我收到此错误。
#selecting rows based on condition
-----> rslt_df = data[(data['Animal'] == "All") & data['Category'].isin(options)]
print(rslt_df)
TypeError: invalid type comparison
答案 0 :(得分:1)
此错误是在某些旧版本的熊猫中造成的,解决方案是升级到最新版本,然后使用原始解决方案:
rslt_df = data[(data['Animal'] == "All") & data['Category'].isin(options)]
答案 1 :(得分:-1)
如果您提供了示例DataFrame,我们可以检查您为什么有TypeError。但是,如果您具有相同的数据类型,则应该可以。
mask = (data['Animal'] == "All") & (data['Category'].isin(options))
new_df = df.loc[mask]