У меня есть 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()
может сделать это для меня. У кого-нибудь есть идея?
Вы ищете 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
melt
! Спасибо, я узнал что-то новое.