作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下数据框。
指数
旗帜
数据
0
1
啊啊啊
1
0
bbbb
2
0
cccc
3
0
滴滴
4
1
eeee
5
0
噗
6
1
嘎嘎
7
1
呵呵
8
1
iii
我想得到 垂直合并数据 由 分隔标志 1 .
指数
旗帜
数据
合并数据
0
1
啊啊啊
aaaabbbbccccdddd
1
0
bbbb
——
2
0
cccc
——
3
0
滴滴
——
4
1
eeee
哎呀
5
0
噗
——
6
1
嘎嘎
嘎嘎
7
1
呵呵
呵呵
8
1
iii
iii
也许,我可以用 来做FOR 循环 .
但是,我相信 Pandas 提供了比上述更聪明的解决方案。
///////////////////////////////////////////////////////////////////
后记01
打扰一下。
我无法得到上述结果。
import numpy as np
import pandas as pd
Array01 = np.array([[0, 1, 'aaaa'],
[1, 0, 'bbbb'],
[2, 0, 'cccc'],
[3, 0, 'dddd'],
[4, 1, 'eeee'],
[5, 0, 'ffff'],
[6, 1, 'gggg'],
[7, 1, 'hhhh'],
[8, 1, 'iiii']])
df = pd.DataFrame(data=Array01,columns=['index', 'Flag', 'Data'])
df.loc[df.Flag==1,'newmerge'] = df.groupby(df.Flag.cumsum())['Data'].sum().values
df
最佳答案
我们只需要cumsum
标记获取groupby
key
df.loc[df.Flag==1,'newmerge'] = df.groupby(df.Flag.cumsum())['Data'].sum().values
df
Out[47]:
index Flag Data newmerge
0 0 1 aaaa aaaabbbbccccdddd
1 1 0 bbbb NaN
2 2 0 cccc NaN
3 3 0 dddd NaN
4 4 1 eeee eeeeffff
5 5 0 ffff NaN
6 6 1 gggg gggg
7 7 1 hhhh hhhh
8 8 1 iiii iiii
关于python - 如何在 Pandas 中沿垂直方向部分合并单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67643620/
我是一名优秀的程序员,十分优秀!