在Python中,我有以下数据:
df_dict = {'time':[1,2,3],'a':['a1','a2','a3'],'b':['b1','b2','b3'], 'c':['c1','c2','c3']}
df = pd.DataFrame(df_dict)
df
time a b c
0 1 a1 b1 c1
1 2 a2 b2 c2
2 3 a3 b3 c3我需要添加一个从a、b、c列中获取值的新列,并使其如下所示:
time new_column values
0 1 a a1
1 2 a a2
2 3 a a3
3 1 b b1
4 2 b b2
5 3 b b3
6 1 c c1
7 2 c c2
8 3 c c3基本上,列'time‘中的值是重复的。我需要Python代码的帮助。这一行动的技术术语是什么?非常感谢。
发布于 2020-04-06 03:02:18
使用df.melt
In [3]: df.melt(id_vars='time', value_vars=['a', 'b', 'c'])
Out[3]:
time variable value
0 1 a a1
1 2 a a2
2 3 a a3
3 1 b b1
4 2 b b2
5 3 b b3
6 1 c c1
7 2 c c2
8 3 c c3https://stackoverflow.com/questions/61052312
复制相似问题