I have a Pandas dataframe(df1) like below
Job | Machine | command | Time |
---|---|---|---|
One | Moon | sleep | 12:00 |
Two | Jupiter | python | 13:00 |
I want it to look like the below so I can use df1.to_html (the top line isn't supposed to be header, I'm just not sure how to edit table without that)
Job | One |
---|---|
Machine | Moon |
command | Sleep |
Time | 12:00 |
Job | Two |
Machine | Jupiter |
Command | python |
Time | 13:00 |
I have tried to df1.T to transpose it, and it looks like below which is good, but I couldn't find a way to duplicate indexes and move the columns
Job | One | TWO |
---|---|---|
Machine | Moon | Jupiter |
command | Sleep | python |
Time | 12:00 | 13:00 |
I then tried stack df1.T.stack() which looks like below, but doesn't have its own separate indexes.
Job | One |
---|---|
Two | |
Machine | Moon |
Jupiter | |
Command | sleep |
python | |
Time | 12:00 |
13:00 |
I was then looking at pd.wide_to_long, but I didn't seem to get anywhere with that.
This was closed and linked to melt however I don't seem to see melt working? Melt turns out similar to stack
Job | One |
---|---|
Job | Two |
Machine | Moon |
Machine | Jupiter |
Command | sleep |
Command | python |
Time | 12:00 |
Time | 13:00 |
This is not the same as table 2 which I was looking for.
I have tried df1 =pd.melt(df1.T) and that nearly gets what I need, but I am left with variable without the index?
variable | value |
---|---|
0 | One |
0 | Moon |
0 | Sleep |
0 | 12:00 |
1 | Two |
1 | Jupiter |
1 | python |
1 | 13:00 |
So, the right column is what I want, but left column has lost its index. Job / Machine / Command / Time / Job /Machine / Command / Time etc.