如何根据Pandas

时间:2016-12-05 05:19:19

标签: pandas

这是我的DataFrame,例如。请参考图片链接。

之前: Before

d = {1: ['2134',20, 1,1,1,0], 2: ['1010',5, 1,0,0,0], 3: ['3457',15, 0,1,1,0]}
columns=['Code', 'Price', 'Bacon','Onion','Tomato', 'Cheese'] 

df = pd.DataFrame.from_dict(data=d, orient='index').sort_index()
df.columns = columns

我想要做的是将一行扩展为多行。然后,Dataframe应该看起来像下面链接的图像。目的是使用一些专栏(来自' Bacon'' Cheese')作为类别。

后: After

我试图找到答案,但失败了。感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用堆栈并进行转置以执行此操作并相应地进行格式化。

df = df.stack().to_frame().T
df.columns = ['{}_{}'.format(*c) for c in df.columns]