I have a question about splitting columns into multiple rows at Pandas with condition.
For example, I have this dataframe which contains PersonID and some codes.
PersonID Code1 Code2 Code3 Code4 Code5 Code6 Code7 Code8 Code9 Code10
1 a12163 q934581 t7198 q3213 q21357 h026 q3213 q934581 h026 a12163
2 a12453 f54548 k654798 z98798 l1957 g498 z98798 f54548 g498 a12453
3 a19538 g193545 q98798 n2132 s6555
4 b98787 q8575 l87987 k576 l4555 j5757 k576
5 c424533 h734535 m5798 u9513 e8203 o99995 u9513 h734535 o99995
I want to split columns into rows after every 5 codes. Like this,
PersonID Code1 Code2 Code3 Code4 Code5
1 a12163 q934581 t7198 q3213 q21357
1 h026 q3213 q934581 h026 a12163
2 a12453 f54548 k654798 z98798 l1957
2 g498 z98798 f54548 g498 a12453
3 a19538 g193545 q98798 n2132 s6555
4 b98787 q8575 l87987 k576 l4555
4 j5757 k576 NaN NaN NaN
5 c424533 h734535 m5798 u9513 e8203
5 o99995 u9513 h734535 o99995 NaN
How can I do this?
Thank you for your help.