Привет, я должен посчитать, сколько лекарств пациент принимает в день. Пациент ежедневно принимает несколько видов лекарств и в разном количестве. Исходные данные выглядят так:
df_data={'med1':['Prednisolone','Prednisolone','Folic acid','Folic acid','Prednisolone','Enbrel','Prednisolone'],
'med2': [np.nan, np.nan, 'Folic acid','Folic acid',np.nan,'Methotrexate pill',np.nan],
'med3':[np.nan, np.nan,'Prednisolone','Prednisolone',np.nan,'Prednisolone',np.nan]}
df_data=pd.DataFrame(df_data)
df_data
med1 med2 med3
------------------------------------------
0 Prednisolone NaN NaN
1 Prednisolone NaN NaN
2 Folic acid Folic acid Prednisolone
3 Folic acid Folic acid Prednisolone
4 Prednisolone NaN NaN
5 Enbrel Methotrexate pill Prednisolone
6 Prednisolone NaN NaN
Я хочу получить счетчики, создающие новые столбцы для каждого лекарства. Я хочу, чтобы это выглядело так:
med1 med2 med3 Prednisolone Folic acid Enbrel Methotrexate pill
---------------------------------------------------------------------------------
0 Prednisolone NaN NaN 1 0 0 0
1 Prednisolone NaN NaN 1 0 0 0
2 Folic acid Folic acid Prednisolone 1 2 0. 0
3 Folic acid Folic acid Prednisolone 1 2 0 0
4 Prednisolone NaN NaN 1 0 1 1
5 Enbrel Methotrexate pill Prednisolone 1 0 1 1
6 Prednisolone NaN NaN 1 0 0 0
Я не знаю, как действовать. Одно горячее кодирование для каждого столбца, а затем сумма? Есть предложения попроще?