Analiza ilości brakujących danych

Braki danych w Pythonie

Suraj Donthi

Deep Learning & Computer Vision Consultant

Wczytanie zbioru Air Quality

Zbiór danych Air Quality

  • zawiera odczyty czujników: ozon, energia słoneczna, temperatura i wiatr
df_air = pd.read_csv('air-quality.csv', 
                            parse_dates=['Date'], 
                            index_col='Date')

df_air.head()
              Ozone  Solar  Wind  Temp
Date                                
1976-05-01   41.0  190.0   7.4    67
1976-05-02   36.0  118.0   8.0    72
1976-05-03   12.0  149.0  12.6    74
1976-05-04   18.0  313.0  11.5    62
1976-05-05    NaN    NaN  14.3    56
Braki danych w Pythonie

DataFrame nullity

  • Użyj metody .isnull() lub .isna() na DataFrame
airquality_nullity = airquality.isnull()
airquality_nullity.head()
            Ozone  Solar   Wind   Temp
Date                                  
1976-05-01  False  False  False  False
1976-05-02  False  False  False  False
1976-05-03  False  False  False  False
1976-05-04  False  False  False  False
1976-05-05   True   True  False  False
Braki danych w Pythonie

Łączna liczba brakujących wartości

airquality_nullity.sum()
Ozone    37
Solar     7
Wind      0
Temp      0
dtype: int64
Braki danych w Pythonie

Odsetek brakujących danych

airquality_nullity.mean() * 100
Ozone    24.183007
Solar     4.575163
Wind      0.000000
Temp      0.000000
dtype: float64
Braki danych w Pythonie

Wykres słupkowy nullity

Pakiet Missingno

  • Pakiet do graficznej analizy brakujących wartości
import missingno as msno
msno.bar(airquality)

Wykres słupkowy brakujących danych dla zbioru jakości powietrza

Braki danych w Pythonie

Macierz nullity

msno.matrix(airquality)

Macierz brakujących danych dla zbioru jakości powietrza

Braki danych w Pythonie

Macierz nullity

msno.matrix(airquality)

Macierz brakujących danych dla zbioru jakości powietrza

Braki danych w Pythonie

Macierz nullity

msno.matrix(airquality)

Macierz brakujących danych dla zbioru jakości powietrza

Braki danych w Pythonie

Macierz nullity

msno.matrix(airquality)

Macierz brakujących danych dla zbioru jakości powietrza

Braki danych w Pythonie

Macierz nullity dla danych szeregów czasowych

msno.matrix(airquality, freq='M')

Macierz brakujących danych z częstotliwością miesięczną dla zbioru jakości powietrza

Braki danych w Pythonie

Macierz nullity dla danych szeregów czasowych

msno.matrix(airquality, freq='M')

Macierz brakujących danych z częstotliwością miesięczną dla zbioru jakości powietrza

Braki danych w Pythonie

Dostosowywanie macierzy

msno.matrix(airquality.loc['May-1976': 'Jul-1976'], freq='M')

Macierz brakujących danych z częstotliwością miesięczną dla zbioru jakości powietrza

Braki danych w Pythonie

Podsumowanie

W tej lekcji nauczyliśmy się analizować

  • ilość brakujących danych liczbowo
  • ilość brakujących danych graficznie
  • odsetek brakujących danych
  • macierz nullity dla zwykłych zbiorów danych
  • macierz nullity dla danych szeregów czasowych
Braki danych w Pythonie

Czas na ćwiczenia!

Braki danych w Pythonie

Preparing Video For Download...