加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 将重复的行添加到DataFrame

发布时间:2020-12-20 12:13:48 所属栏目:Python 来源:网络整理
导读:我没弄明白如何解决以下问题! 考虑以下数据集: df = pd.DataFrame(data=np.array([['a',1,2,3],['a',4,5,6],['b',7,8,9],10,11,12]]),columns=['id','A','B','C']) id A B C a 1 2 3 a 4 5 6 b 7 8 9 b 10 11 12 我需要按id对数据进行分组,并在每个组中复
我没弄明白如何解决以下问题!
考虑以下数据集:

df = pd.DataFrame(data=np.array([['a',1,2,3],['a',4,5,6],['b',7,8,9],10,11,12]]),columns=['id','A','B','C'])

  id   A    B    C
  a    1    2    3
  a    4    5    6
  b    7    8    9
  b    10   11   12

我需要按id对数据进行分组,并在每个组中复制第一行并将其添加到数据集,如下面的数据集:

id   A    B    C    A  B  C
  a    1    2    3    1  2  3
  a    4    5    6    1  2  3
  b    7    8    9    7  8  9
  b    10   11   12   7  8  9

我非常感谢你的帮助.

我做了以下步骤,但我无法扩展它:

df1 = df.loc [0:0,'A' :'C']
df3 = pd.concat([df,df1],axis=1)

解决方法

首先使用groupby,然后将df与此结果连接:

v = df.groupby('id').transform('first')
pd.concat([df,v],1)

  id   A   B   C  A  B  C
0  a   1   2   3  1  2  3
1  a   4   5   6  1  2  3
2  b   7   8   9  7  8  9
3  b  10  11  12  7  8  9

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读