簡體   English   中英

重塑數據框,使索引列值成為列

[英]Reshape data frame, so the index column values become the columns

我想重塑數據,使索引列中的值成為列

我的數據框:

     Gender_Male    Gender_Female   Location_london Location_North  Location_South
Cat                 
V         5              4              4                2              3    
W         15            12             12                7              8
X         11            15             16                4              6
Y         22            18             21                9              9
Z         8              7              7                4              4

所需的數據框:

在此處輸入圖像描述

是否有捷徑可尋? 除了 Gender 和 Location 變量之外,我的數據集中還有 9 個其他分類變量。 我只包含了兩個變量以保持示例簡單。

創建示例數據框的代碼:

df1 = pd.DataFrame({
    'Cat' : ['V','W', 'X', 'Y', 'Z'],
    'Gender_Male' :   [5, 15, 11, 22, 8],
    'Gender_Female' : [4, 12, 15, 18, 7],
    'Location_london': [4,12, 16, 21, 7], 
    'Location_North' : [2, 7,  4,  9, 4], 
    'Location_South' : [3, 8,  6,  9, 4]  
}).set_index('Cat')
df1

您可以transpose數據框,然后split並設置新索引:

轉置

dft = df1.T
print(dft)

Cat              V   W   X   Y  Z
Gender_Male      5  15  11  22  8
Gender_Female    4  12  15  18  7
Location_london  4  12  16  21  7
Location_North   2   7   4   9  4
Location_South   3   8   6   9  4

拆分並設置新索引

dft.index = dft.index.str.split('_', expand=True)
dft.columns.name = None
print(dft)

                 V   W   X   Y  Z
Gender   Male    5  15  11  22  8
         Female  4  12  15  18  7
Location london  4  12  16  21  7
         North   2   7   4   9  4
         South   3   8   6   9  4

暫無
暫無

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

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