我有一个数据框Reduce(function(x, y) merge(x, y, all=TRUE), list1)
,如下所示
df
其中df:
zip-code
0 00234
1 23450
2 23450
3 10786
4 0
5 xyzvd
。我想只保留type(df['zip-code']) = str
值并删除所有其余值。
答案 0 :(得分:5)
您可以将str.match
与正则表达式一起使用:
df[df['zip-code'].str.match("^\d{5}$")]
#zip-code
#0 00234
#1 23450
#2 23450
#3 10786
答案 1 :(得分:2)
z = df['zip-code']
df[z.str.len().eq(5) & z.str.isdigit()]
zip-code
0 00234
1 23450
2 23450
3 10786