用python进行分组,将第一个词想同的变量分在同一组,并求和

问题遇到的现象和发生背景

我需要用python进行分组,分组是基于变量名称的第一个单词
比如下图表格中的情况:

img

我要把开头都是Apple的分为一组,开头都是baby的分为另一组,同时表格中的变量要保持不变,还要将同组中的B列值求和。我想要的效果大概如下:

img

我是尝试了用groupby和split函数。split函数先把首词分开,首词创建一个新列,然后基于新列用group.sum()求和,结果就不是我上面想要的效果了。代码如下:

Shipmanager_full_number['Shipmanager 2'] = Shipmanager_full_number['Shipmanager']
Shipmanager_full_number['Shipmanager 2'] = Shipmanager_full_number['Shipmanager 2'].str.split(' ', n=1, expand=True)
Shipmanager_full_number

Shipmanager_alias_number = Shipmanager_full_number.groupby('Shipmanager 2', as_index=False).sum()

想请教一下该怎么实现想要的效果呢?

问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

试试这样:

import pandas as pd 

df=pd.read_csv('datas/t1.csv')
df['new']=df['A'].str.split(
' ',expand=True)[0]
a = df.groupby('new')['B'].sum()
df.index=df['new']
df['B列合计']=a
print(df)


您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632