sfo*_*ney 3 python contains letters dataframe pandas
我在数据框中有一列想要转换为int数据类型。但是,由于某些行的条目中有字母,因此会引发错误。我想创建一个新的数据框,在此列中仅包含纯数字条目(或至少没有字母)的条目。
所以我的问题是:有没有办法做下面的事情,
df=df[df['addzip'].str.contains("a")==False]
Run Code Online (Sandbox Code Playgroud)
但是带有“ a”的列表?请参见下面的示例,
df=df[df['addzip'].str.contains(list(str(string.ascii_lowercase)+str(string.ascii_uppercase)))==False]
Run Code Online (Sandbox Code Playgroud)
我知道这很可能与apply命令有关,但是我想尽可能将其向量化,所以这不是我想要的。到目前为止,我在堆栈溢出的其他任何地方都没有找到任何解决方案。
只需使用正则表达式
df = df[~df['addzip'].str.contains("[a-zA-Z]").fillna(False)]
Run Code Online (Sandbox Code Playgroud)