Я хочу дублировать строки в кадре данных Pandas.Каждая строка должна повторяться n раз, где n - количество столбцов от шага 1 до шага N.Что у меня есть:
import pandas as pd
pd.DataFrame(data={
'id': ['A', 'B', 'C'],
'n' : [ 1, 2, 3],
'step1' : [ '10rs', '13rs', '8rs'],
'step2' : [ '100rs', '130rs', '8rs'],
'step3' : [ '1000rs', '1rs', '8rs'],
'step4' : [ '1rs', '3rs', '8rs']
})
id n step1 step2 step3 step4
0 A 1 10rs 100rs 1000rs 1rs
1 B 2 13rs 130rs 1rs 3rs
2 C 3 8rs 8rs 8rs 8rs
что я хочу получить взамен:
pd.DataFrame(data={
'id': ['A', 'A', 'A', 'A', 'B', 'B','B','B','C','C','C','C'],
'n' : [1 , 1 , 1 , 1, 2 , 2 , 2 ,2 , 3,3 ,3, 3 ],
'step' : [ 10, 13, 13, 1, 13, 130 , 1, 1, 8 ,8 ,8 ,8 ]})
id n step
0 A 1 10
1 A 1 13
2 A 1 13
3 A 1 1
4 B 2 13
5 B 2 130
6 B 2 1
7 B 2 1
8 C 3 8
9 C 3 8
10 C 3 8
11 C 3 8
Я пытался pd.pivot
, но слишком много шагов для достижения финальной стадии. Возможно ли это?