为什么我的 pandas 索引器在我尝试仅过滤两个值时不起作用?
Why does't my pandas indexer work when I tried to filter just two values?
我尝试使用索引器从 DataFrame 中过滤两个值(1 和 2),但是如果我检查 .csv 文件,我发现了大约 77 个值。
#我的 len 是 15333,这是因为“77”的值,正确的应该是 15286,即只考虑 1 和 2 的值。
'HAD_CPOX' 中的 PD:All 是 int64,我尝试使用 != 77。
如果我查看你的代码,而你只想获取值 HAD_CPOX==1
或 HAD_CPOX==2
,那么你仍然必须像这样再次将过滤后的 df 分配回变量 df:
df = df[(df['HAD_CPOX'] == 1) & (df['HAD_CPOX'] == 2)]
你也可以这样写:
df = df[df['HAD_CPOX'].isin([1, 2])
在你的代码中你只有:
df[(df['HAD_CPOX'] == 1) & (df['HAD_CPOX'] == 2)]
但是你的 df 没有被分配,所以你的数据帧没有任何改变或过滤。
我尝试使用索引器从 DataFrame 中过滤两个值(1 和 2),但是如果我检查 .csv 文件,我发现了大约 77 个值。
#我的 len 是 15333,这是因为“77”的值,正确的应该是 15286,即只考虑 1 和 2 的值。 'HAD_CPOX' 中的 PD:All 是 int64,我尝试使用 != 77。
如果我查看你的代码,而你只想获取值 HAD_CPOX==1
或 HAD_CPOX==2
,那么你仍然必须像这样再次将过滤后的 df 分配回变量 df:
df = df[(df['HAD_CPOX'] == 1) & (df['HAD_CPOX'] == 2)]
你也可以这样写:
df = df[df['HAD_CPOX'].isin([1, 2])
在你的代码中你只有:
df[(df['HAD_CPOX'] == 1) & (df['HAD_CPOX'] == 2)]
但是你的 df 没有被分配,所以你的数据帧没有任何改变或过滤。