Jia*_*ang 6 python string numpy dataframe pandas
我知道我们可以使用str.contains方法来选择部分字符串。
我的专栏是这样的
col1
V2648   
V9174.
V9071
V0021;+
V7615***
()()
random
words
我想选择包含带有 的模式的所有行V+ 4 digits number。因此我们需要对这些字符串应用多个条件。
我的输出会是这样的,
col1
V2648   
V9174.
V9071
V0021;+
V7615***
你可以这样做:
mask = df.col1.str.startswith('V') & df.col1.str.contains('\d+')
print(df[mask])
输出
       col1
0     V2648
1    V9174.
2     V9071
3   V0021;+
4  V7615***
掩码df.col1.str.startswith('V')检查所有以 开头的内容'V'并df.col1.str.contains('\d+')检查所有包含4数字的内容。如果您想精确匹配 aV后跟 4 位数字,请使用:
mask = df.col1.str.contains('^V\d+')