簡體   English   中英

如何在 pandas 的一列中轉換多列?

[英]How to convert multiple columns in one column in pandas?

我有以下 dataframe:

   route1  route2
1    19.0    51.0
2    47.0    46.0
3    56.0    37.0
4    43.0     2.0

我想要以下 output。

     edge    route
1    19.0   route1
2    47.0   route1
3    56.0   route1
4    43.0   route1
5    51.0   route2
6    46.0   route2
7    37.0   route2
8     2.0   route2

我怎樣才能做到這一點? 我檢查了Pandas: Multiple columns into one column但它對我要創建的新列routes沒有太大幫助。

先感謝您!

使用melt

>>> df.melt(var_name='route', value_name='edge')
    route   edge
0  route1   19.0
1  route1   47.0
2  route1   56.0
3  route1   43.0
4  route2   51.0
5  route2   46.0
6  route2   37.0
7  route2    2.0

如果您有一些列要保護,請使用id_vars=['col1', 'col2', ...]來不將它們展平。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM