Впервые в Pandas. Хотите знать, как разделить фрейм данных, сгруппированный по нескольким столбцам? Я хочу получить пропорцию var3 (по некоторому условию) 'var1' и 'var2'. Можно представить себе эту проблему как определение процента времени, проведенного на работе в обычные рабочие часы, по дню и роду занятий. Var 3 - это время, проведенное на работе (обусловленное нормальным рабочим временем для df2), сгруппированное по дню и роду занятий.
df = pd.DataFrame(data) ###all data, here all time
df2 = df[(df['hours'] > x)] ### subset, here all time during normal business hours
df = df.groupby(["var1", "var2"]).var3.sum()
df2 = df2.groupby(["var1", "var2"]).var3.sum()
normal_bus_hours_percent = (df2.div(df, level=['var1', 'var2']) * 100)
This fails TypeError: Join on level between two MultiIndex objects is ambiguous
Даже если бы вы могли мне помочь, просто объедините эти фреймы данных. Я получаю эту ошибку: AttributeError: объект 'Series' не имеет атрибута 'columns'
Если я попытаюсь объединить, я получаю эту ошибку: TypeError: первый аргумент должен быть списком объектов pandas, вы передали объект типа "Series"
Я пришел из R, поэтому привык к простому cbind или merge.