преобразовать значения столбцов в строки с пандами

1

У меня есть pd.DataFrame где я хочу преобразовать некоторые столбцы в строки. У меня есть пример ниже, где у меня есть 2 разных образца с несколькими целевыми измерениями. Я хочу разбить цели ['t1', 't2', 't3'] и разбить их на новую целевую строку с номером образца. Есть ли лучший способ, чем for-loop для преобразования ряда значений (в столбцах) в строки?

#The entry I have:
pd.DataFrame({'Sample':[0,1],
                  't1':[2,3],
                  't2':[4,5],
                  't3':[6,7]})

# the output I'm expecting:
pd.DataFrame({'Sample':[0,0,0,1,1,1],
              'targets':[2,4,6,3,5,7]})

Я не думаю, что pd.pivot_table() может сделать это для меня. У кого-нибудь есть идея?

Теги:
pandas

1 ответ

1
Лучший ответ

Вы ищете melt

pd.DataFrame({'Sample':[0,1],
                  't1':[2,3],
                  't2':[4,5],
                  't3':[6,7]}).melt('Sample')
Out[74]: 
   Sample variable  value
0       0       t1      2
1       1       t1      3
2       0       t2      4
3       1       t2      5
4       0       t3      6
5       1       t3      7
  • 1
    Я ищу melt ! Спасибо, я узнал что-то новое.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню