dataframe怎样把多行合并到一行

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

要把name列名相同的sub列对应的行合并

问题相关代码,请勿粘贴截图
from pandas import DataFrame

data={'id':[1,2,3,4,5,6],'name':['aa','bb','bb','cc','dd','dd'],'sub':['None','橙子','湘江','None','香蕉','椰子']}
df=DataFrame(data)
print(df)

   id name   sub
0   1   aa  None
1   2   bb    橙子
2   3   bb    湘江
3   4   cc  None
4   5   dd    香蕉
5   6   dd    椰子
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

想做成这样
第一步合并
id name sub
0 1 aa 橙子,湘江
1 2 bb 橙子
2 3 bb 湘江
3 4 cc 香蕉椰子
4 5 dd 香蕉
5 6 dd 椰子
第二步删掉多余的行
id name sub
0 1 aa 橙子,湘江
1 4 cc 香蕉椰子