Exploratief Gegevensanalyse (EDA) is een essentieel stap in elk data science project, aangezien het ons in staat stelt om de data te begrijpen, patronen te detecteren en mogelijke problemen te identificeren. In dit artikel zullen we onderzoeken hoe we twee populaire Python-bibliotheken, Pandas en Matplotlib, kunnen gebruiken om EDA uit te voeren. Pandas is een krachtige bibliotheek voor gegevensextractie en analyse, terwijl Matplotlib een veelzijdige bibliotheek is voor gegevensvisualisatie. We zullen de basis van het laden van data in een pandas DataFrame behandelen, de data verkennen met behulp van pandas-functies, de data schoonmaken en uiteindelijk de data visualiseren met Matplotlib. Uiteindelijk zult u een solide kennis hebben van het gebruik van Pandas en Matplotlib voor EDA in Python.
Importeren van Bibliotheken en Data
Importeren van Bibliotheken
Om de pandas en Matplotlib-bibliotheken in uw Python-code te gebruiken, moet u ze eerst importeren. U kunt dit doen met behulp van de import
-instructie gevolgd door de naam van de bibliotheek.
python import pandas as pd
import matplotlib.pyplot as plt
In dit voorbeeld importeren we pandas en geven we het de alias ‘pd’, wat een courante conventie is in de data science-gemeenschap. We importeren ook matplotlib.pyplot en geven we het de alias ‘plt’. Door deze bibliotheken te importeren, kunnen we hun functies en methoden gebruiken om te werken met data en visualisaties te creëren.
Data Laden
Nadat je de benodigde bibliotheken hebt geïmporteerd, kun je de gegevens laden in een pandas DataFrame. Pandas biedt verschillende methoden om gegevens uit verschillende bestandsformaten te laden, waaronder CSV, Excel, JSON, en meer. De meest voorkomende methode is read_csv
, die gegevens leest uit een CSV-bestand en een DataFrame retourneert.
python# Load data into a pandas DataFrame
data = pd.read_csv('path/to/data.csv')
In dit voorbeeld laden we gegevens uit een CSV-bestand op de locatie ‘pad/naar/gegevens.csv’ en slaan ze op in een variabele genaamd ‘gegevens’. Je kunt ‘pad/naar/gegevens.csv’ vervangen door het werkelijke pad naar je gegevensbestand.
Door gegevens in een pandas DataFrame te laden, kunnen we de gegevens gemakkelijk manipuleren en analyseren met behulp van de functies en methoden van pandas. De DataFrame is een 2-dimensionale tabelachtige gegevensstructuur die ons in staat stelt om te werken met gegevens op een gestructureerde en georganiseerde manier. Het biedt functies voor het selecteren, filteren, groeperen, aggregeren en visualiseren van gegevens.
Gegevensverkenning
head()
en tail()
De functies head()
en tail()
worden gebruikt om de eerste paar en laatste paar rijen van de gegevens te bekijken, respectievelijk. Standaard tonen deze functies de eerste/laatste vijf rijen van de gegevens, maar je kunt een ander aantal rijen als argument opgeven.
python# View the first 5 rows of the data
print(data.head())
# Bekijk de laatste 10 rijen van de gegevens
print(data.tail(10))
info()
De functie info()
biedt informatie over de DataFrame, inclusief het aantal rijen en kolommen, de gegevenstypen van elke kolom en het aantal niet-leeg geheugen. Deze functie is handig voor het identificeren van ontbrekende waarden en het bepalen van de juiste gegevenstypen voor elke kolom.
python# Get information about the data
print(data.info())
describe()
De describe()
functie biedt samenvattingsstatistieken voor numerieke kolommen in de DataFrame, inclusief aantal, gemiddelde, standaarddeviatie, minimum, maximum en kwartielen. Deze functie is handig voor het snel overzicht krijgen van de verdeling van de gegevens.
python# Get summary statistics for the data
print(data.describe())
value_counts()
De value_counts()
functie wordt gebruikt om het aantal voorkomens van elke unieke waarde in een kolom te tellen. Deze functie is handig voor het identificeren van de frequentie van specifieke waarden in de gegevens.
python# Count the number of unique values in a column
print(data['column_name'].value_counts())
Dit zijn slechts enkele voorbeelden van panda-functies die u kunt gebruiken om gegevens te verkennen. Er zijn veel andere functies die u kunt gebruiken, afhankelijk van uw specifieke gegevensverkenningbehoeften, zoals isnull()
om na te gaan of er ontbrekende waarden zijn, groupby()
om gegevens te groeperen op basis van een specifieke kolom, corr()
om correlatiecoëfficiënten tussen kolommen te berekenen en meer.
Gegevens Reiniging
isnull()
De isnull()
functie wordt gebruikt om na te gaan of er ontbrekende of null-waarden zijn in de DataFrame. Het retourneert een DataFrame met dezelfde vorm als de originele, met True-waarden waar de gegevens ontbreken en False-waarden waar de gegevens aanwezig zijn. U kunt de sum()
functie gebruiken om het aantal ontbrekende waarden in elke kolom te tellen.
python# Check for missing values
print(data.isnull().sum())
dropna()
De dropna()
functie wordt gebruikt om rijen of kolommen te verwijderen die ontbrekende of null-waarden bevatten. Standaard verwijdert deze functie elke rij die minstens één ontbrekende waarde bevat. U kunt de subset
argument gebruiken om aan te geven welke kolommen moeten worden gecontroleerd op ontbrekende waarden en de how
argument om aan te geven of rijen met eventuele ontbrekende waarden moeten worden verwijderd, of alleen rijen waar alle waarden ontbreken.
python# Drop rows with missing values
data = data.dropna()
drop_duplicates()
De drop_duplicates()
functie wordt gebruikt om dubbele rijen uit de DataFrame te verwijderen. Standaard verwijdert deze functie alle rijen die dezelfde waarden in alle kolommen hebben. U kunt de subset
argument gebruiken om aan te geven welke kolommen moeten worden gecontroleerd op duplicaten.
python# Drop duplicate rows
data = data.drop_duplicates()
replace()
De replace()
functie wordt gebruikt om waarden in een kolom te vervangen door nieuwe waarden. U kunt de oude waarde specificeren die moet worden vervangen en de nieuwe waarde die het moet vervangen. Deze functie is handig voor het afhandelen van gegevenskwaliteitsproblemen zoals spellingfouten of inconsistente formaat.
python# Replace values in a column
data['column_name'] = data['column_name'].replace('old_value', 'new_value')
Dit zijn slechts enkele voorbeelden van pandas-functies die u kunt gebruiken om gegevens te reinigen. Er zijn veel andere functies die u kunt gebruiken, afhankelijk van uw specifieke behoeften voor gegevensreiniging, zoals fillna()
om ontbrekende waarden te vullen met een specifieke waarde of methode, astype()
om gegevenstypen van kolommen te converteren, clip()
om uitschieters te trimmen en nog veel meer.
Data cleaning speelt een cruciale rol bij het voorbereiden van data voor analyse, en het automatiseren van dit proces kan tijd besparen en de kwaliteit van de data garanderen. Naast de functies van pandas die eerder genoemd zijn, kunnen automatiseringstechnieken worden toegepast om data-cleaning workflows te stroomlijnen. Je kunt bijvoorbeeld herbruikbare functies of pijplijnen maken om ontbrekende waarden aan te pakken, duplicaten te verwijderen en waarden in meerdere datasets te vervangen. Bovendien kun je geavanceerde technieken zoals imputatie gebruiken om ontbrekende waarden intelligent in te vullen of reguliere uitdrukkingen om inconsistente formaatvoering te identificeren en corrigeren. Door de kracht van pandas-functies te combineren met automatiseringstrategieën, kun je efficiënt data schoonmaken en standaardiseren, waardoor de betrouwbaarheid en nauwkeurigheid van je exploratory data analysis (EDA) wordt verbeterd.
Data Visualisatie
Data visualisatie is een cruciale component van data science, aangezien het ons in staat stelt om snel en gemakkelijk inzichten uit data te halen. Matplotlib is een populaire Python-bibliotheek voor het maken van een breed scala aan data visualisaties, waaronder scatter plots, lijnplots, staafdiagrammen, histogrammen, box plots, en meer.
Hier zijn enkele voorbeelden van het maken van deze soorten visualisaties met behulp van Matplotlib:
Scatter Plot
A scatter plot is used to visualize the relationship between two continuous variables. You can create a scatter plot in Matplotlib using the scatter()
function.
python# Create a scatter plot
plt.scatter(data['column1'], data['column2']) plt.xlabel('Column 1') plt.ylabel('Column 2') plt.show()
In dit voorbeeld maken we een scatter plot met kolom1
op de x-as en kolom2
op de y-as. We voegen ook labels toe aan de x-as en y-as met behulp van de xlabel()
en ylabel()
functies.
Histogram
A histogram is used to visualize the distribution of a single continuous variable. You can create a histogram in Matplotlib using the hist()
function.
python# Create a histogram
plt.hist(data['column'], bins=10) plt.xlabel('Column') plt.ylabel('Frequency') plt.show()
In dit voorbeeld creëren we een histogram van de kolom
variabele met 10 bins. We voegen ook labels toe aan de x-as en y-as met behulp van de xlabel()
en ylabel()
functies.
Box Plot
A box plot is used to visualize the distribution of a single continuous variable and to identify outliers. You can create a box plot in Matplotlib using the boxplot()
function.
python# Create a box plot
plt.boxplot(data['column']) plt.ylabel('Column') plt.show()
In dit voorbeeld maken we een box plot van de kolom
variabele. We voegen ook een label toe aan de y-as met behulp van de ylabel()
functie.
Dit zijn slechts enkele voorbeelden van wat je kunt doen met Matplotlib voor gegevensvisualisatie. Er zijn veel andere functies en technieken die je kunt gebruiken, afhankelijk van de specifieke vereisten van je project.
Conclusie
Exploratieve gegevensanalyse (EDA) is een cruciale stap in elk data science project, en Python biedt krachtige tools om EDA effectief uit te voeren. In dit artikel hebben we geleerd hoe we twee populaire Python bibliotheken, Pandas en Matplotlib, kunnen gebruiken om gegevens te laden, te verkennen, te reinigen en te visualiseren. Pandas biedt een flexibele en efficiënte manier om gegevens te manipuleren en te analyseren, terwijl Matplotlib een breed scala aan opties biedt om visualisaties te creëren. Door deze twee bibliotheken te gebruiken, kunnen we inzichten uit gegevens snel en gemakkelijk verkrijgen. Met de vaardigheden en technieken die je in dit artikel hebt geleerd, kun je beginnen met EDA op je eigen datasets en waardevolle inzichten ontdekken die gegevensgestuurde besluitvorming kunnen aansturen.
Source:
https://dzone.com/articles/how-to-use-pandas-and-matplotlib-to-perform-explor