4
код, чтобы сделать тестовые данныепанды транспонирование числовой столбец группой
import pandas as pd
dftest = pd.DataFrame({'Amt': {0: 60, 1: 35.0, 2: 30.0, 3: np.nan, 4: 25},
'Year': {0: 2012.0, 1: 2012.0, 2: 2012.0, 3: 2013.0, 4: 2013.0},
'Name': {0: 'A', 1: 'A', 2: 'C', 3: 'A', 4: 'B'}})
дает
Amt Name Year
0 60 A 2012.0
1 35.0 A 2012.0
2 30.0 C 2012.0
3 NaN A 2013.0
4 25 B 2013.0
столбец Amt
имеет максимум 2 значения, соответствующие группе ['Name', 'Year']
. Я хотел бы повернуть/транспозиции таким образом, что выход из формы
Name Year Amt1 Amt2
0 A 2012 35 60
2 C 2012 30 NaN
3 A 2013 NaN NaN
4 B 2013 25 NaN
Я попытался играть с шарниром, разборки, pivot_table
что я действительно хочу сделать, это убедиться, есть два значения Amt
за ['Name', 'Year']
(NA
«ы ОК), которые можно достичь путем укладки требуемого выходного
Я бы предположил, что вы хотите, чтобы Amt1 составлял 60, а Amt2 - 35 для первой строки. Вы хотите, чтобы они отсортировались в первую очередь? – DSM
Я бы предпочел, чтобы они сортировались по возрастанию, что было тривиально, я думаю, вы можете пренебречь им сейчас – muon