【发布时间】:2017-12-10 16:57:40
【问题描述】:
我有一个这样的数据框
import pandas as pd
df = pd.DataFrame({'a': ['abc', 'r00001', 'r00010', 'rfoo', 'r01234', 'r1234'], 'b': range(6)})
a b
0 abc 0
1 r00001 1
2 r00010 2
3 rfoo 3
4 r01234 4
5 r1234 5
我现在要选择此数据框的所有列,其中 a 列中的条目以 r 开头,后跟五个数字。
From here 我知道如果它只以r 开头而不带数字:
print df.loc[df['a'].str.startswith('r'), :]
a b
1 r00001 1
2 r00010 2
3 rfoo 3
4 r01234 4
5 r1234 5
类似的东西
print df.loc[df['a'].str.startswith(r'[r]\d{5}'), :]
当然不行。如何正确地做到这一点?
【问题讨论】: