计算 pandas 列中列表元素的总数

新手上路,请多包涵

我有一个熊猫数据 Akeywords 作为(这里我只显示 4 行,但实际上有数百万行):-

  keywords
 ['loans','mercedez','bugatti']
 ['trump','usa']
 ['galaxy','7s','canon','macbook']
 ['beiber','spiderman','marvels','ironmen']

我想对列中的列表元素总数求和 keywords 并将其存储到某个变量中。就像是

total_sum=elements in keywords[0]+elements in keywords[1]+elements in
          keywords[2]+elements in keywords[3]

total_sum=3+2+4+4
total_sum=13

我如何在熊猫中做到这一点?

原文由 Learner 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 556
1 个回答

IIUC

设置

df = pd.DataFrame()
df['keywords']=[['loans','mercedez','bugatti'],
                ['trump','usa'],
                ['galaxy','7s','canon','macbook'],
                ['beiber','spiderman','marvels','ironmen']]

然后juse str.lensum

 df.keywords.str.len().sum()


细节:

 df.keywords.str.len()

0    3
1    2
2    4
3    4
Name: keywords, dtype: int64


Ps:如果你有 strings 看起来像一个列表,使用 ast.literal_eval 转换为列表。

 df.keywords.transform(ast.literal_eval).str.len().sum()

原文由 rafaelc 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题