首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用熊猫组来查找每组中文本的平均长度。

使用熊猫组来查找每组中文本的平均长度。
EN

Stack Overflow用户
提问于 2017-11-23 16:24:21
回答 3查看 8.2K关注 0票数 3

我在用莎士比亚的语料库。

代码语言:javascript
复制
    act literature_type scene   scene_text  scene_title speaker title
0   1   Comedy  1   In delivering my son from me, I bury a second ...   Rousillon. The COUNT's palace.  COUNTESS    All's Well That Ends Well
1   1   Comedy  1   And I in going, madam, weep o'er my father's d...   Rousillon. The COUNT's palace.  BERTRAM All's Well That Ends Well
2   1   Comedy  1   You shall find of the king a husband, madam; y...   Rousillon. The COUNT's palace.  LAFEU   All's Well That Ends Well
3   1   Comedy  1   What hope is there of his majesty's amendment?  Rousillon. The COUNT's palace.  COUNTESS    All's Well That Ends Well
4   1   Comedy  1   He hath abandoned his physicians, madam; under...   Rousillon. The COUNT's palace.  LAFEU   All's Well That Ends Well

我想找到每个标题的平均scene_text长度。

我想用一些类似于:

代码语言:javascript
复制
all_works_by_speaker_df.groupby('title').apply(lambda x: np.mean(len(x)))

这只会返回每个标题中的场景数。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-11-23 16:32:43

如果需要字符的len

代码语言:javascript
复制
df = (all_works_by_speaker_df.groupby('title')['scene_text']
                            .apply(lambda x: np.mean(x.str.len()))
                            .reset_index(name='mean_len_text'))
print (df)

                       title  mean_len_text
0  All's Well That Ends Well           48.4

如果需要的话,使用len的单词,使用Vaishali's solution

票数 7
EN

Stack Overflow用户

发布于 2017-11-23 16:35:22

从列中取字符串的长度,然后由一个数组组成,这是您的播放标题,然后应用平均值。

代码语言:javascript
复制
mean_len = df.scene_text.str.len().groupby(df.title).mean()
票数 3
EN

Stack Overflow用户

发布于 2017-11-23 16:33:08

分裂,卑劣

代码语言:javascript
复制
df.groupby('title').scene_text.apply(lambda x: x.str.split().str.len().mean())


title
All's Well That Ends Well    9.2
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47459824

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档