Modificarea importurilor: date true/false

Ingestie eficientă a datelor cu pandas

Amany Mahfouz

Instructor

Date booleene

  • Date True/False

Foaie de calcul cu date din sondaj cu mai multe coloane true/false

Ingestie eficientă a datelor cu pandas

Date booleene

Foaie de calcul cu date din sondaj, cu coloane despre participarea la bootcamp evidențiate

Ingestie eficientă a datelor cu pandas

Date booleene

Foaie de calcul cu date din sondaj, cu coloane despre utilizarea împrumuturilor evidențiate

Ingestie eficientă a datelor cu pandas

Date booleene

Foaie de calcul cu date din sondaj cu mai multe coloane True/False

Ingestie eficientă a datelor cu pandas

Date booleene

Foaie de calcul cu date din sondaj, cu coloane care folosesc zero și unu evidențiate

Ingestie eficientă a datelor cu pandas

Date booleene

Foaie de calcul cu date din sondaj, cu coloane care folosesc True și False evidențiate

Ingestie eficientă a datelor cu pandas

Date booleene

Foaie de calcul cu date din sondaj, cu coloane care folosesc Da și Nu evidențiate

Ingestie eficientă a datelor cu pandas

pandas și booleeni

bootcamp_data = pd.read_excel("fcc_survey_booleans.xlsx")
print(bootcamp_data.dtypes)
ID.x                      object
AttendedBootcamp         float64
AttendedBootCampYesNo     object
AttendedBootcampTF       float64
BootcampLoan             float64
LoanYesNo                 object
LoanTF                   float64
dtype: object
Ingestie eficientă a datelor cu pandas

pandas și booleeni

# Count True values
print(bootcamp_data.sum())
AttendedBootcamp                      38
AttendedBootcampTF                    38
BootcampLoan                          14
LoanTF                                14
dtype: object
# Count NAs
print(bootcamp_data.isna().sum())
ID.x                           0
AttendedBootcamp               0
AttendedBootCampYesNo          0
AttendedBootcampTF             0
BootcampLoan                 964
LoanYesNo                    964
LoanTF                       964
dtype: int64
Ingestie eficientă a datelor cu pandas
# Load data, casting True/False columns as Boolean
bool_data = pd.read_excel("fcc_survey_booleans.xlsx", 
                          dtype={"AttendedBootcamp": bool,
                                "AttendedBootCampYesNo": bool,
                                "AttendedBootcampTF":bool,
                                "BootcampLoan": bool,
                                "LoanYesNo": bool,
                                "LoanTF": bool})

print(bool_data.dtypes)
ID.x                      object
AttendedBootcamp            bool
AttendedBootCampYesNo       bool
AttendedBootcampTF          bool
BootcampLoan                bool
LoanYesNo                   bool
LoanTF                      bool
dtype: object
Ingestie eficientă a datelor cu pandas
# Count True values
print(bool_data.sum())
AttendedBootcamp                         38
AttendedBootCampYesNo                  1000
AttendedBootcampTF                       38
BootcampLoan                            978
LoanYesNo                              1000
LoanTF                                  978
dtype: object
# Count NA values
print(bool_data.isna().sum())
ID.x                       0
AttendedBootcamp           0
AttendedBootCampYesNo      0
AttendedBootcampTF         0
BootcampLoan               0
LoanYesNo                  0
LoanTF                     0
dtype: int64
Ingestie eficientă a datelor cu pandas

pandas și booleeni

  • pandas încarcă coloanele True/False ca float implicit
  • Specificați că o coloană trebuie să fie bool prin argumentul dtype al read_excel()
  • Coloanele booleene pot conține doar valorile True și False
  • Valorile lipsă din coloanele booleene sunt convertite în True
  • pandas recunoaște automat unele valori ca True/False în coloanele booleene
  • Valorile nerecunoscute dintr-o coloană booleană sunt, de asemenea, convertite în True
Ingestie eficientă a datelor cu pandas

Setarea valorilor True/False personalizate

  • Utilizați argumentul true_values al read_excel() pentru a seta valori True personalizate
  • Utilizați false_values pentru a seta valori False personalizate
  • Fiecare acceptă o listă de valori tratate ca True/False, respectiv
  • Valorile True/False personalizate se aplică doar coloanelor setate ca booleene
Ingestie eficientă a datelor cu pandas

Setarea valorilor True/False personalizate

# Load data with Boolean dtypes and custom T/F values
bool_data = pd.read_excel("fcc_survey_booleans.xlsx", 
                          dtype={"AttendedBootcamp": bool,
                                "AttendedBootCampYesNo": bool,
                                "AttendedBootcampTF":bool,
                                "BootcampLoan": bool,
                                "LoanYesNo": bool,
                                "LoanTF": bool},
                          true_values=["Yes"],
                          false_values=["No"])
Ingestie eficientă a datelor cu pandas

Setarea valorilor True/False personalizate

print(bool_data.sum())
AttendedBootcamp                                  38
AttendedBootCampYesNo                             38
AttendedBootcampTF                                38
BootcampLoan                                     978
LoanYesNo                                        978
LoanTF                                           978
dtype: object
Ingestie eficientă a datelor cu pandas

Considerații privind datele booleene

  • Există valori lipsă sau ar putea apărea în viitor?
  • Cum va fi utilizată această coloană în analiză?
  • Ce s-ar întâmpla dacă o valoare ar fi codificată greșit ca True?
  • Ar putea datele fi modelate altfel (de ex., ca float sau întregi)?
Ingestie eficientă a datelor cu pandas

Să exersăm!

Ingestie eficientă a datelor cu pandas

Preparing Video For Download...