【发布时间】:2023-03-24 12:01:01
【问题描述】:
我的问题类似于here 提出的问题。我有一个数据框,我想重复数据框的每一行k 次数。除此之外,我还想创建一个值0 到k-1 的列。所以
import pandas as pd
df = pd.DataFrame(data={
'id': ['A', 'B', 'C'],
'n' : [ 1, 2, 3],
'v' : [ 10, 13, 8]
})
what_i_want = pd.DataFrame(data={
'id': ['A', 'B', 'B', 'C', 'C', 'C'],
'n' : [ 1, 2, 2, 3, 3, 3],
'v' : [ 10, 13, 13, 8, 8, 8],
'repeat_id': [0, 0, 1, 0, 1, 2]
})
下面的命令完成了一半的工作。我正在寻找添加repeat_id 列的熊猫方式。
df.loc[df.index.repeat(df.n)]
【问题讨论】:
-
你的“一半工作”正是我想要的!