Pandas 未找到列中的所有值
Pandas not finding all values in column
当我尝试在列中查找具有特定值的所有行时,我没有像在 excel 中筛选时那样得到所有行。
例如:
第 1 列是对象类型,有时会有不同数字的行与字符混合。
df[df['column1']== 250] returns 100 results
df[df['column1']=='250'] returns 50 results
是什么原因造成的,我该如何解决?
我尝试再次将其转换为对象但没有成功。
看起来 column1
中的一些值是 str
,有些是 int
。
将所有值转换为一种类型,像这样使用 Series.astype
:
df['column1'] = df['column1'].astype(str)
然后这样做:
df[df['column1']== '250']
您现在应该取回 150
条记录。
当我尝试在列中查找具有特定值的所有行时,我没有像在 excel 中筛选时那样得到所有行。 例如:
第 1 列是对象类型,有时会有不同数字的行与字符混合。
df[df['column1']== 250] returns 100 results
df[df['column1']=='250'] returns 50 results
是什么原因造成的,我该如何解决?
我尝试再次将其转换为对象但没有成功。
看起来 column1
中的一些值是 str
,有些是 int
。
将所有值转换为一种类型,像这样使用 Series.astype
:
df['column1'] = df['column1'].astype(str)
然后这样做:
df[df['column1']== '250']
您现在应该取回 150
条记录。