У меня есть фрейм данных со столбцом «Materiais», который указывает код продукта, столбец «Значения», который соответствует значениям продукта, и столбцы «Месяц», которые соответствуют его месяцам.
Year Month Materiais Values
0 2018 M1 52745 NaN
1 2018 M2 52745 NaN
2 2018 M3 52745 NaN
3 2018 M4 52745 NaN
4 2018 M5 52745 NaN
5 2018 M6 52745 NaN
6 2018 M7 52745 NaN
7 2018 M1 58859 NaN
8 2018 M2 58859 NaN
9 2018 M3 58859 NaN
10 2018 M4 58859 NaN
11 2018 M5 58859 300
12 2018 M6 58859 NaN
13 2018 M7 58859 NaN
14 2018 M1 57673 NaN
15 2018 M2 57673 100
16 2018 M3 57673 NaN
17 2018 M4 57673 150
1-) Я хотел бы, чтобы в этом кадре данных были только продукты, у которых было хотя бы значение в течение одного месяца.
Поэтому моя идея состоит в том, чтобы сгруппировать все похожие коды продуктов и проверить, есть лихотя бы одно значение != NaN
.
Для группировки я использую эту функцию:
df = df_demand.groupby(['Materiais'], sort=False, as_index=False)
- Хотелось бы узнать, как создать условие для примененияdropna (), только для продуктов со значениями NaN за все месяцы?
![Result 1](https://i.stack.imgur.com/YQuwB.png)
2-) Отфильтруйте месяцы, по крайней мере, как минимумодно значение != NaN'
, используя аналогичный подход:
df = df_demanda.groupby(['Month'], sort=False, as_index=False)