我有一个包含多个列的panda数据框,我想使用melt函数将所有列合并为一个列来创建一个新的数据框,但我不希望原始数据框中的列名成为新数据框的一部分。
下面是示例 Dataframe 和代码。有没有办法使它更简洁?
date Col1 Col2 Col3 Col4
1990-01-02 12:00:00 24 24 24.8 24.8
1990-01-02 01:00:00 59 58 60 60.3
1990-01-02 02:00:00 43.7 43.9 48 49
所需输出:
Rates
0 24
1 59
2 43.7
3 24
4 58
5 43.9
6 24.8
7 60
8 48
9 24.8
10 60.3
11 49
代码:
df = df.melt(var_name='ColumnNames', value_name='Rates') #using melt function to flatten columns
df_main.drop(['ColumnNames'], axis = 1, inplace = True) # dropping 'ColumnNames'
2条答案
按热度按时间thigvfpy1#
根据需要设置
value_name
和value_vars
参数:wztqucjr2#
也可以使用**
stack()
和transpose()
:**输出: