Diskretisera alla variabler
Istället för att diskretisera de kontinuerliga variablerna en i taget är det enklare att göra det automatiskt. För att hämta en lista med alla kolumner i Python kan du använda
variables = basetable.columns
Endast variabler som är kontinuerliga ska diskretiseras. Du kan avgöra om en variabel behöver diskretiseras genom att kontrollera om den har fler än ett fördefinierat antal unika värden.
Den här övningen är en del av kursen
Introduktion till prediktiv analys i Python
Övningsinstruktioner
- Skapa en lista
variablesmed alla kolumnnamn i bastabellen. - Skapa en loop som kontrollerar alla variabler i listan
variables. - Fyll i
if-satsen så att endast variabler med fler än 5 unika värden diskretiseras. - Dela in de kontinuerliga variablerna i 10 intervall med metoden
qcut.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Print the columns in the original basetable
print(basetable.columns)
# Get all the variable names except "target"
variables = list(____.____)
variables.remove("target")
# Loop through all the variables and discretize in 10 bins if there are more than 5 different values
for variable in ____:
if len(basetable.groupby(____))>____:
new_variable = "disc_" + variable
basetable[new_variable] = pd.qcut(basetable[____], ____)
# Print the columns in the new basetable
print(basetable.columns)