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

python – 使用计数复制数据框中的每一行

发布时间:2020-12-20 12:03:37 所属栏目:Python 来源:网络整理
导读:对于数据框中的每一行,我希望创建一个副本,并附加一列来标识每个副本. E.g原始数据帧是 A | A B | B 我希望使用附加列对每行进行复制以识别它.导致: A | A | 1A | A | 2B | B | 1B | B | 2 解决方法 您可以在df.index上使用df.reindex,然后使用groupby. df
对于数据框中的每一行,我希望创建一个副本,并附加一列来标识每个副本.

E.g原始数据帧是

A | A 

B | B

我希望使用附加列对每行进行复制以识别它.导致:

A | A | 1

A | A | 2

B | B | 1

B | B | 2

解决方法

您可以在df.index上使用df.reindex,然后使用groupby.

df = df.reindex(df.index.repeat(2))
df['count'] = df.groupby(level=0).cumcount() + 1
df = df.reset_index(drop=True)

df
   a  b  count
0  A  A      1
1  A  A      2
2  B  B      1
3  B  B      2

同样,使用reindex并使用np.tile分配:

df = df.reindex(df.index.repeat(2))
       .assign(count=np.tile(df.index,2) + 1)
       .reset_index(drop=True)

df

   a  b  count
0  A  A      1
1  A  A      2
2  B  B      1
3  B  B      2

(编辑:李大同)

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

    推荐文章
      热点阅读