4

这是我的数据

No  Body
1   DaTa, Analytics 2
2   StackOver. 67%

这是我的预期输出

No  Body                 Non Alphanumeric   
1   DaTa, Analytics 2    1       
2   StackOver. 67%       2  

我只计算非字母数字,如! @ # & ( ) % – [ { } ] : ; ', ? / * 空格和数字不计算

4

1 回答 1

6

您可以使用:

df['Non Alphanumeric'] = df['Body'].str.findall(r'[^a-zA-Z0-9 ]').str.len()

或者:

df['Non Alphanumeric'] = df['Body'].str.count(r'[^a-zA-Z0-9 ]')

print (df)
   No               Body  Non Alphanumeric
0   1  DaTa, Analytics 2                 1
1   2     StackOver. 67%                 2
于 2018-03-12T09:30:08.957 回答