我拥有的示例数据集如下所示:

Language Count
Russian 1000
English 1500
Spanish 500
Arabic,Russian, English, Spanish 2
Arabic, English 15

我希望它进行变换,使结果如下所示:

Language Count
Russian 1002
English 1517
Spanish 502
Arabic 17

所以,我分析了包含多种语言的行.将它们添加到已经给定的语言中.如果没有给出(本例中为阿拉伯语),则创建新的.

我怎样才能做到这一点?

推荐答案

使用DataFrame.assign加上Series.str.splitDataFrame.explode和最后的合计金额:

df = (df.assign(Language=df.Language.str.split(','))
        .explode('Language')
        .groupby('Language', as_index=False, sort=False)
        .sum())
print (df)
  Language  Count
0  Russian   1002
1  English   1517
2  Spanish    502
3   Arabic     17

Python相关问答推荐

替换为Pandas

将两个收件箱相连导致索引的列标题消失

正在设置字段.需要为假,因为错误列表索引必须是整数或切片,而不是字符串

使用子字符串动态更新Python DataFrame中的列

ValueRight:参数目标和输出必须具有相同的形状.接收:目标.形状=(无,512),输出.形状=(无,3)

使用decorator 重复超载

情节生成的饼图文本超出页面边界

Pandas使用过滤器映射多列

在Python中根据id填写年份系列

有什么方法可以避免使用许多if陈述

如何用symy更新分段函数

剧作家Python:expect(locator).to_be_visible()vs locator.wait_for()

Odoo -无法比较使用@api.depends设置计算字段的日期

如何让 turtle 通过点击和拖动来绘制?

Python 3.12中的通用[T]类方法隐式类型检索

非常奇怪:tzLocal.get_Localzone()基于python3别名的不同输出?

图像 pyramid .难以创建所需的合成图像

转换为浮点,pandas字符串列,混合千和十进制分隔符

如何在Python中获取`Genericums`超级类型?

如何使用Numpy. stracards重新编写滚动和?