我的问题类似于问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
列的pandas方法。
df.loc[df.index.repeat(df.n)]