根据列类型删除Pandas中的DataFrame行

时间:2016-10-07 15:33:31

标签: pandas python-2.x

我有一个Panda的DataFrame,在特定的列中,有一些不同类型的值,而不是所需的值。我尝试使用类似暴露here的方法,但它不起作用。在我的情况下,某些行存储floats而其他行存储strings,我只想保留strings

这就是我的尝试。

将pandas导入为pd

d = {"name": [1.0, 2.0, "hello", "world"]}
df = pd.DataFrame(d)

print df
print df[(type(df["name"]) == type("str"))]

显然,我收到了与KeyError相关的错误。

1 个答案:

答案 0 :(得分:1)

.str访问者与isalpha一起使用 这会为浮点数返回NaN,因此我fillna(False)

df[df.name.str.isalpha().fillna(False)]

enter image description here