对变量值为字符串的对象,分组求和也就是相当于对各字符串执行了拼接的操作。但可能遇到一些问题。
以下是《射雕英雄传》第三回的文本数据,每一行表示对应文本中的一句话,变量para表示该句子所在的段落。现欲将各句子合并为对应的段落。
若直接使用groupby聚合后求和,就是将值拼接起来后:
发现缺少响应的句号,作为一个“完美主义者”(强迫症患者)怎么能忍。添加一个值为句号的临时变量(temp)。拼接变量 sentence 和 temp 的值后再进行“分组求和”:
chap['temp'] = '。'
chap['sentence'] = chap['sentence'] + chap['temp']
del chap['temp']
chap.groupby('para').sum()