如何检查Python数据帧列中的第一个字符是否是digi

2021-02-25 03:57:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Python数据帧中有一些地址信息,我想检查其中一列的第一个字符是否是数字。我也发现了类似的查询,但在数据框中什么也没有。我可以使用以下方法提取第一个字符:

check = df['ADDRESS_LINE_1'].str[0]

但是如果我尝试

^{pr2}$

我知道错误了

'Series' object has no attribute 'isdigit'

我找不到一个等效的代码来让它在数据帧中工作。我还尝试创建一个新列,其中包含check信息,但这会导致相同的错误。感谢任何帮助。在

2条回答
网友
1楼 ·

另一个选项是,您可以使用str.match,它从字符串开头匹配正则表达式:

df
#     A
#0  2sdf
#1  sd3
#2  sss
#3  45q

df.A.str.match("\d")

#0     True
#1    False
#2    False
#3     True
#Name: A, dtype: bool
网友
2楼 ·

您需要连接另一个str

check = df['ADDRESS_LINE_1'].str[0].str.isdigit()
                                   #^ here

示例:

^{pr2}$

您可以使用正则表达式来确定第一个字符是否为数字:

In [128]:
s.str.match('^\d')

Out[128]:
0     True
1    False
2     True
3    False
dtype: bool

错误告诉您isdigit不是{}的方法,^{}

相关问题