slogan3

Creëer Seaborn Visualisaties voor Geautomatiseerde Data Cleaning en Voorbewerking

description

Met deze prompt kun je op een visuele manier inzicht krijgen in hoe jouw data cleaning en voorbewerking de dataset beïnvloeden, wat helpt bij het verifiëren van je stappen en het verbeteren van je data-analyse workflow. Dit voorkomt fouten en maakt de impact van elke stap duidelijk zichtbaar, wat beter is dan alleen statistische samenvattingen.

prompt

Help me een Seaborn visualisatie te maken die het effect van mijn data cleaning en voorbewerkingstappen inzichtelijk maakt. Beschrijving van mijn dataset: <geef een beknopte beschrijving van je dataset>. Welke data cleaning stappen heb ik toegepast: <bijv. verwijderen van null-waarden, outlier filtering, normalisatie>. Welke voorbewerki ...

try_prompt

generate_helper
disclaimerOnPageApi

ai_answers

provider: openai
model: gpt-4.1-nano
no_answer_for_language
error: Generation failed [openai] prompt_id=3696 locale=nl err=OpenAI connection/timeout | Generation failed [openai] prompt_id=3696 locale=en err=OpenAI connection/timeout | Generation failed [openai] prompt_id=3696 locale=de err=OpenAI connection/timeout | Generation failed [openai] prompt_id=3696 locale=fr err=OpenAI connection/timeout | Generation failed [openai] prompt_id=3696 locale=pt err=OpenAI connection/timeout | Generation failed [openai] prompt_id=3696 locale=es err=OpenAI connection/timeout | Generation failed [openai] prompt_id=3696 locale=zh err=OpenAI connection/timeout
provider: deepseek
model: deepseek-chat
Ik help je graag een Seaborn visualisatie te maken om het effect van je data cleaning te tonen. Hier is een complete oplossing: ```python import seaborn as sns import matplotlib.pyplot as plt import pandas as pd import numpy as np # Stel de stijl in sns.set_style("whitegrid") plt.figure(figsize=(12, 8)) # Voorbeeld data (vervang met je eigen dataset) # Dit is alleen ter illustratie van de visualisatiemethode data_voor_cleaning = pd.DataFrame({ 'aankoopbedrag': [100, 150, np.nan, 200, 200, 300, np.nan, 400], 'leeftijd': [25, 30, 35, np.nan, 30, 45, 50, 55] }) # Data cleaning stappen data_na_cleaning = data_voor_cleaning.copy() data_na_cleaning = data_na_cleaning.dropna() # Verwijder null-waarden data_na_cleaning = data_na_cleaning.drop_duplicates() # Verwijder duplicaten # Maak subplots fig, axes = plt.subplots(2, 2, figsize=(15, 12)) # 1. Aantal waarnemingen voor en na cleaning counts = [len(data_voor_cleaning), len(data_na_cleaning)] sns.barplot(x=['Voor cleaning', 'Na cleaning'], y=counts, palette=['blue', 'orange'], ax=axes[0,0]) axes[0,0].set_title('Aantal waarnemingen voor en na cleaning') axes[0,0].set_ylabel('Aantal rijen') # 2. Verdeling aankoopbedrag sns.histplot(data_voor_cleaning['aankoopbedrag'].dropna(), color='blue', label='Voor cleaning', kde=True, ax=axes[0,1], alpha=0.6) sns.histplot(data_na_cleaning['aankoopbedrag'], color='orange', label='Na cleaning', kde=True, ax=axes[0,1], alpha=0.6) axes[0,1].set_title('Verdeling aankoopbedrag') axes[0,1].legend() # 3. Verdeling leeftijd sns.histplot(data_voor_cleaning['leeftijd'].dropna(), color='blue', label='Voor cleaning', kde=True, ax=axes[1,0], alpha=0.6) sns.histplot(data_na_cleaning['leeftijd'], color='orange', label='Na cleaning', kde=True, ax=axes[1,0], alpha=0.6) axes[1,0].set_title('Verdeling leeftijd') axes[1,0].legend() # 4. Boxplot vergelijking data_voor = data_voor_cleaning.melt(value_vars=['aankoopbedrag', 'leeftijd']) data_voor['status'] = 'Voor cleaning' data_na = data_na_cleaning.melt(value_vars=['aankoopbedrag', 'leeftijd']) data_na['status'] = 'Na cleaning' combined_data = pd.concat([data_voor, data_na]) sns.boxplot(data=combined_data, x='variable', y='value', hue='status', palette=['blue', 'orange'], ax=axes[1,1]) axes[1,1].set_title('Boxplot vergelijking variabelen') axes[1,1].set_xlabel('Variabele') axes[1,1].set_ylabel('Waarde') plt.tight_layout() plt.suptitle('Impact van Data Cleaning: Null-waarden en Duplicaten Verwijderd', fontsize=16, y=1.02) plt.show() # Toon statistieken print("=== STATISTIEKEN ===") print(f"Aantal rijen voor cleaning: {len(data_voor_cleaning)}") print(f"Aantal rijen na cleaning: {len(data_na_cleaning)}") print(f"Null-waarden verwijderd: {len(data_voor_cleaning) - len(data_voor_cleaning.dropna())}") print(f"Duplicaten verwijderd: {len(data_voor_cleaning.dropna()) - len(data_voor_cleaning.dropna().drop_duplicates())}") ``` Deze visualisatie toont: 1. **Balkdiagram**: Totale aantal rijen voor en na cleaning 2. **Histogrammen**: Verdeling van aankoopbedrag en leeftijd (blauw = voor, oranje = na) 3. **Boxplots**: Vergelijking van beide variabelen voor en na cleaning **Belangrijke aanpassingen voor jouw data:** - Vervang de voorbeelddata met je eigen DataFrame - Zorg dat je kolomnamen overeenkomen met je dataset - Pas eventueel de figuurgrootte aan naar wens De blauwe kleur wordt gebruikt voor de "voor cleaning" staat en oranje voor "na cleaning", zoals je voorkeur aangeeft.