Python 计算单元格中字符串中的元素数
我的数据是这样的Python 计算单元格中字符串中的元素数,python,pandas,Python,Pandas,我的数据是这样的 >df Employee Entries 0 A abc,sed,yrs,sef 1 B wes,det,fyd 我想计算“entries”列的每行中有多少个单词。第一排是4,第二排是3 我试过了 # Count Comma and add 1 df['Entries_Count'] = df.Entries.str.count(',')+1 没关系,我知道有些行不是空的 那么如何计算每个单元格中的元素数呢。
>df
Employee Entries
0 A abc,sed,yrs,sef
1 B wes,det,fyd
我想计算“entries”列的每行中有多少个单词。第一排是4,第二排是3
我试过了
# Count Comma and add 1
df['Entries_Count'] = df.Entries.str.count(',')+1
没关系,我知道有些行不是空的
那么如何计算每个单元格中的元素数呢。此外,这不是一个列表,而是一个字符串。使用
pandas.Series.str.count
和regex
Employee Entries
0 A abc,sed,yrs,sef
1 B wes,det,fyd
2 C oneword # Added for a demonstration
3 D # Added for a demonstration
4 E NaN # Added for a demonstration
df['Entries'].str.count('\w+')
输出:
0 4.0
1 3.0
2 1.0
3 0.0
4 NaN
Name: Entries, dtype: float64
8
您可以添加sum
以获得总计数:
df['Entries'].str.count('\w+').sum()
输出:
0 4.0
1 3.0
2 1.0
3 0.0
4 NaN
Name: Entries, dtype: float64
8
Use也可以使用lambda函数:
df['Entries\u Count']=df['Entries'].apply(lambda x:x.Count(',')+1)