Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Hantering av Dubbletter och Avvikare | Grundläggande Datarensning
Datapreprocessering och Feature Engineering

bookHantering av Dubbletter och Avvikare

Vid arbete med verkliga datamängder stöter du ofta på dubblettposter och avvikare. Båda kan ha stor påverkan på din dataanalys och prestandan hos dina maskininlärningsmodeller. Dubbletter kan konstgjort förstärka betydelsen av vissa mönster, vilket leder till snedvridna resultat, medan avvikare kan förvränga statistiska sammanfattningar och modellprognoser. Att korrekt identifiera och hantera dessa problem är en grundläggande del av datarensning.

1234567891011121314151617
import pandas as pd import seaborn as sns # Load the Titanic dataset from seaborn df = sns.load_dataset("titanic") # Find duplicate rows in the Titanic dataset duplicates = df.duplicated() print("Duplicate row indicators:") print(duplicates.value_counts()) # Show how many duplicates exist # Remove duplicate rows df_no_duplicates = df.drop_duplicates() print("\nNumber of rows before removing duplicates:") print(len(df)) print("Number of rows after removing duplicates:") print(len(df_no_duplicates))
copy
Note
Definition

Avvikare är datapunkter som avviker avsevärt från majoriteten av en datamängd. Vanliga metoder för att upptäcka avvikare inkluderar visualiseringar (såsom lådagram), statistiska mått (som Z-score) och interkvartilavståndet (IQR)-metoden.

Z-score och interkvartilavstånd (IQR) är två vanliga statistiska mått som används för att identifiera avvikare i en datamängd:

  • Z-score:
    • Mäter hur många standardavvikelser en datapunkt ligger från medelvärdet;
    • Ett Z-score beräknas med formeln: (value - mean) / standard deviation;
    • Datapunkter med Z-score större än 3 eller mindre än -3 betraktas ofta som avvikare, eftersom de ligger långt från medelvärdet.
  • Interkvartilavstånd (IQR):
    • Representerar intervallet mellan första kvartilen (Q1, 25:e percentilen) och tredje kvartilen (Q3, 75:e percentilen);
    • IQR beräknas som Q3 - Q1;
    • Avvikare definieras typiskt som datapunkter under Q1 - 1.5 * IQR eller över Q3 + 1.5 * IQR, vilket innebär att de ligger utanför det typiska spannet för de centrala 50 % av datan.

Båda metoderna hjälper till att mäta hur långt värden avviker från det förväntade intervallet. Z-score fokuserar på avståndet från medelvärdet, medan IQR identifierar värden utanför den centrala delen av datamängden.

12345678910111213141516171819202122
import seaborn as sns import pandas as pd # Load the Titanic dataset from seaborn df = sns.load_dataset("titanic") # Drop rows with missing 'fare' values df_fare = df.dropna(subset=["fare"]) # Calculate Q1 and Q3 for the 'fare' column Q1 = df_fare["fare"].quantile(0.25) Q3 = df_fare["fare"].quantile(0.75) IQR = Q3 - Q1 # Define outlier bounds lower_bound = Q1 - 1.5 * IQR upper_bound = Q3 + 1.5 * IQR # Detect outliers in 'fare' outliers = df_fare[(df_fare["fare"] < lower_bound) | (df_fare["fare"] > upper_bound)] print("Outliers detected in 'fare' using IQR method:") print(outliers[["fare"]])
copy
Note
Notera

Vid hantering av avvikare kan du välja att ta bort dem eller transformera dem (till exempel genom att begränsa extrema värden eller använda en log-transformation). Den bästa metoden beror på din datamängd och syftet med din analys.

question mark

Vilka av följande påståenden är sanna om hantering av dubbletter och avvikare i en datamängd?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 3

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Suggested prompts:

Can you explain how to handle the outliers once they are detected?

What are some other methods for detecting outliers besides IQR and Z-score?

Can you show how to use the Z-score method to detect outliers in the Titanic dataset?

Awesome!

Completion rate improved to 8.33

bookHantering av Dubbletter och Avvikare

Svep för att visa menyn

Vid arbete med verkliga datamängder stöter du ofta på dubblettposter och avvikare. Båda kan ha stor påverkan på din dataanalys och prestandan hos dina maskininlärningsmodeller. Dubbletter kan konstgjort förstärka betydelsen av vissa mönster, vilket leder till snedvridna resultat, medan avvikare kan förvränga statistiska sammanfattningar och modellprognoser. Att korrekt identifiera och hantera dessa problem är en grundläggande del av datarensning.

1234567891011121314151617
import pandas as pd import seaborn as sns # Load the Titanic dataset from seaborn df = sns.load_dataset("titanic") # Find duplicate rows in the Titanic dataset duplicates = df.duplicated() print("Duplicate row indicators:") print(duplicates.value_counts()) # Show how many duplicates exist # Remove duplicate rows df_no_duplicates = df.drop_duplicates() print("\nNumber of rows before removing duplicates:") print(len(df)) print("Number of rows after removing duplicates:") print(len(df_no_duplicates))
copy
Note
Definition

Avvikare är datapunkter som avviker avsevärt från majoriteten av en datamängd. Vanliga metoder för att upptäcka avvikare inkluderar visualiseringar (såsom lådagram), statistiska mått (som Z-score) och interkvartilavståndet (IQR)-metoden.

Z-score och interkvartilavstånd (IQR) är två vanliga statistiska mått som används för att identifiera avvikare i en datamängd:

  • Z-score:
    • Mäter hur många standardavvikelser en datapunkt ligger från medelvärdet;
    • Ett Z-score beräknas med formeln: (value - mean) / standard deviation;
    • Datapunkter med Z-score större än 3 eller mindre än -3 betraktas ofta som avvikare, eftersom de ligger långt från medelvärdet.
  • Interkvartilavstånd (IQR):
    • Representerar intervallet mellan första kvartilen (Q1, 25:e percentilen) och tredje kvartilen (Q3, 75:e percentilen);
    • IQR beräknas som Q3 - Q1;
    • Avvikare definieras typiskt som datapunkter under Q1 - 1.5 * IQR eller över Q3 + 1.5 * IQR, vilket innebär att de ligger utanför det typiska spannet för de centrala 50 % av datan.

Båda metoderna hjälper till att mäta hur långt värden avviker från det förväntade intervallet. Z-score fokuserar på avståndet från medelvärdet, medan IQR identifierar värden utanför den centrala delen av datamängden.

12345678910111213141516171819202122
import seaborn as sns import pandas as pd # Load the Titanic dataset from seaborn df = sns.load_dataset("titanic") # Drop rows with missing 'fare' values df_fare = df.dropna(subset=["fare"]) # Calculate Q1 and Q3 for the 'fare' column Q1 = df_fare["fare"].quantile(0.25) Q3 = df_fare["fare"].quantile(0.75) IQR = Q3 - Q1 # Define outlier bounds lower_bound = Q1 - 1.5 * IQR upper_bound = Q3 + 1.5 * IQR # Detect outliers in 'fare' outliers = df_fare[(df_fare["fare"] < lower_bound) | (df_fare["fare"] > upper_bound)] print("Outliers detected in 'fare' using IQR method:") print(outliers[["fare"]])
copy
Note
Notera

Vid hantering av avvikare kan du välja att ta bort dem eller transformera dem (till exempel genom att begränsa extrema värden eller använda en log-transformation). Den bästa metoden beror på din datamängd och syftet med din analys.

question mark

Vilka av följande påståenden är sanna om hantering av dubbletter och avvikare i en datamängd?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 3
some-alt