У меня есть датафрейм с MultiIndex. Двумя уровнями являются «Nr» и «Price». Можно ли использовать np.where на уровне индекса 1 («Цена») для создания нового столбца («ZZ»)?
'ZZ' следует рассчитывать по столбцу 'first', умноженному на 2, если уровень 1 ('цена') равен 'x'.
import pandas as pd
index = pd.MultiIndex.from_product([['s1', 's2','s3'],['x','y']])
df = pd.DataFrame([1,2,3,4,5,6],index, columns=['first'] )
df.index.names = ['Nr', 'Price']
df
Я пытался:
df['ZZ'] = np.where(df['Price']=='x',df['0']*2,np.nan)
Я получаю:
Спасибо!