Предположим, у меня есть df1
, piv1
и piv2
ниже:
df1 = pd.DataFrame({'R': [1, 2], 'S': ['s1', 's2'], 'G1': ['g1a', 'g1b'], 'G2': ['g2a', 'g2b']})
df1
R S G1 G2
0 1 s1 g1a g2a
1 2 s2 g1b g2b
piv1 = df1.pivot_table(index=(['S']), columns=(['G1']), aggfunc=({'R': 'mean'}))
piv1
R
G1 g1a g1b
S
s1 1.0 NaN
s2 NaN 2.0
piv2 = df1.pivot_table(index=(['S']), columns=(['G2']), aggfunc=({'R': 'mean'}))
piv2
R
G2 g2a g2b
S
s1 1.0 NaN
s2 NaN 2.0
Вместо piv1
и piv2
я пытаюсь сделать piv3
, что похож на ниже. Любые идеи? В идеале я хотел бы создать piv3
непосредственно из df1
(т.е. не нужно создавать piv1
и piv2
и затем объединять их).
piv3
S g1a g1b g2a g2b
s1 1.0 NaN 1.0 NaN
s2 NaN 2.0 NaN 2.0