我试图对一些信号进行分组,同时连接文本,因为我使用了类似于下面代码的东西。在这里,我使用sum\u x custom函数连接“text”下的文本
lst = [{'name': 'A', 'reg': '1', 'text': 'txt1', 'value': 5},
{'name': 'A', 'reg': '1', 'text': 'txt2', 'value': 2},
{'name': 'B', 'reg': '2', 'text': 'txt3', 'value': 2}]
data = pd.DataFrame(lst)
sum_x = lambda x : x.sum()
data.groupby(by=['name', 'reg']).apply(sum_x)
Out[48]:
name reg text value
name reg
A 1 AA 11 txt1txt2 7
B 2 B 2 txt3 2
然而,这并不能产生预期的结果 注意文本列是如何按预期添加的,还有“by”列是如何连接的。反应也有一个额外的层次。 是否有可能获得如下结果:
name reg text value
A 1 txt1txt2 7
B 2 txt3 2
“by”中的列保存在哪里?你知道吗
您可以选择执行
groupby
操作的列:最后,如果不希望索引中的
name
和reg
,可以使用reset_index()
:试试这个:
相关问题 更多 >
编程相关推荐