У меня есть такой фрейм данных:
number type X Y Z
1 red 101 NaN 101,NaN
2 blue 101 40,50 101,40,50
3 green 401 70,NaN 101,70,NaN
Есть ли способ пометить каждый элемент type
на основе столбца Z
? Z
это просто комбинированная версия X
и Y
.
Так что-то вроде:
Number Type Z X_or_Y
1 red 101 X
1 red NaN Y
2 blue 101 X
2 blue 40 Y
2 blue 50 Y
3 green 101 X
3 green 70 Y
3 green NaN Y
Я думаю о функции плавления, но не знаю, как.
reshaped_data = pd.melt(df, id_vars =['number', 'type',
'Z'], value_vars =['X', 'Y'])
** Редактировать: ** Значения в столбце X_or_Y должны исходить из столбцов X и Y в исходном кадре данных