计算 pandas 中数据列中的单词数

counting words in a datacolumn in pandas

嗨,我有一个数据框,

df,

 Name
 Raj
 NaN
 Ravi,kumar

我正在尝试获取 df["Name"] 中的字数,

我试过了,df['count']=df['Names'].str.count(',') + 1

但是我得到的是 NaN 字段的“1”,如何解决这个问题 我得到

 Name        count
 Raj          1
 NaN          1  
 Ravi,kumar   2

但我想要的输出应该是,

 Name        count
 Raj          1
 NaN            
 Ravi,kumar   2

这里好像NaN是一个字符串。尝试这样做:

df['Name'].replace('NaN', np.nan).str.count(',') + 1

你应该得到一些东西:

0    1.0
1    NaN
2    2.0
Name: Name, dtype: float64

然后您可以调用 .fillna('') 来填空。

也许您需要 np.where 即

df['count'] = np.where(df['Name']!='NaN',df['Name'].str.count(',')+1,'')

         Name count
0         Raj   1.0
1         NaN      
2  Ravi,kumar   2.0