Pulire un CSV disordinato passo per passo senza perdere dati

Ottieni una diagnosi della qualità del tuo CSV e un piano di pulizia ordinato: tipi, duplicati, valori vuoti, date, categorie incoerenti, codice o formule e controlli finali. Pensato per ChatGPT, Claude, Gemini e Microsoft Copilot. Include 4 variabili personalizzabili e puoi copiarlo gratuitamente con un clic.

Intermedio · Testo · In attesa di revisione editoriale

Prompt

Agisci come analista di dati specializzato in qualità e preparazione dei dati. Lavori in modo riproducibile e non cancelli mai informazioni senza lasciarne traccia.

Contesto:
- Descrizione del file (origine, numero approssimativo di righe, colonne): {{descrizione}}
- Campione di righe (intestazione e 10-20 righe, anonimizzate): {{campione}}
- Strumento con cui pulirò i dati: {{strumento}}
- Uso finale dei dati puliti: {{uso_finale}}

Se il campione non basta per capire una colonna, chiedimelo prima di decidere una regola.

Consegne:
1. Un profilo rapido per colonna: tipo atteso, tipo rilevato, esempi problematici e quota stimata di valori vuoti nel campione.
2. L'elenco dei problemi trovati: codifica e caratteri strani, spazi in eccesso, maiuscole incoerenti, formati di data misti, separatori decimali, duplicati esatti e probabili, valori impossibili o anomali, categorie scritte in modi diversi.
3. Un piano di pulizia ordinato (l'ordine conta), con una regola chiara per ogni passo e il motivo.
4. L'implementazione in {{strumento}}: codice commentato, oppure formule e passaggi di menu.
5. Una strategia per i valori mancanti per colonna (lasciare, segnalare, imputare con un criterio esplicito o escludere) senza inventare dati.
6. Un dizionario dei dati finale: nome di colonna normalizzato, tipo, descrizione e valori ammessi.
7. Controlli di validazione dopo la pulizia (numero di righe prima e dopo, totali di controllo, unicità per chiave).
8. Un registro delle modifiche per poter verificare ogni passaggio.

Vincoli:
- Lavora sempre su una copia e conserva il file originale.
- Non eliminare mai righe in silenzio: conta e giustifica ogni esclusione.
- Segna con [DA COMPLETARE] qualsiasi regola di business che devo confermare.
- Se rilevi dati personali, consiglia di anonimizzarli prima di condividerli.

Formato: tabelle per profilo e dizionario, elenco numerato per il piano e blocchi di codice.

Come usarlo

Incolla l'intestazione e un campione vario che includa righe problematiche, senza dati personali reali. Applica il piano passo per passo su una copia e verifica i controlli finali prima di usare i dati.

Esempio d'uso

File: esportazione ordini dal CRM, 12.000 righe · Strumento: Python con pandas · Uso finale: report mensile delle vendite per regione.

Esempio di risultato

Problemi trovati nel campione

  • cliente: spazi finali e varianti («ACME S.r.l. », «Acme srl»).
  • data: formati misti (03/02/2026 e 2026-02-03) e un valore vuoto (1003).
  • importo: «1.250,50» all'italiana accanto a «1250.5»; un negativo (−30).
  • regione: maiuscole e abbreviazioni incoerenti («lombardia», «E. Romagna»).
  • 1001 e 1002 sembrano lo stesso ordine duplicato.

Implementazione (pandas)

import pandas as pd

raw = pd.read_csv("ordini_originale.csv", sep=";", dtype=str, encoding="utf-8")
df = raw.copy()  # l'originale non si tocca

df = df.apply(lambda s: s.str.strip())
df["cliente_norm"] = (df["cliente"].str.upper()
    .str.replace(r"[.,]", "", regex=True)
    .str.replace(r"\s+", " ", regex=True))

df["data"] = pd.to_datetime(df["data"], format="mixed", dayfirst=True, errors="coerce")

it = df["importo"].str.contains(",", na=False)
df.loc[it, "importo"] = df.loc[it, "importo"].str.replace(".", "", regex=False).str.replace(",", ".", regex=False)
df["importo"] = pd.to_numeric(df["importo"], errors="coerce")

df["stato"] = df["stato"].str.lower()
REGIONI = {"lombardia": "Lombardia", "e. romagna": "Emilia-Romagna"}  # [DA COMPLETARE]
df["regione"] = df["regione"].str.lower().map(REGIONI)

df["flag_senza_data"] = df["data"].isna()
df["flag_negativo"] = df["importo"] < 0  # [DA COMPLETARE] reso o errore?
df["flag_possibile_dup"] = df.duplicated(["cliente_norm", "data", "importo"])

assert len(df) == len(raw), "nessuna riga eliminata in silenzio"

I casi dubbi vengono segnalati, non cancellati; ogni esclusione successiva è registrata nel log delle modifiche. …

Dati chiave

Categoria
Gestione dei dati · Pulizia dei dati
Tipo di output
Testo
Livello
Intermedio
Pensato per
ChatGPT, Claude, Gemini e Microsoft Copilot
Verificato in
In attesa di verifica editoriale
Variabili
Descrizione del file, Campione di righe, Strumento e Uso finale dei dati
Lingua
Italiano
Prezzo
Gratuito, senza registrazione
Aggiornato
07/11/2026

Domande frequenti

Posso incollare tutto il file?

Per file grandi bastano l'intestazione e un campione rappresentativo. Il prompt produce regole e codice che poi applichi al file completo nel tuo strumento.

Perché l'ordine dei passaggi è importante?

Per esempio, se rimuovi i duplicati prima di normalizzare spazi e maiuscole, ti sfuggiranno duplicati che differiscono solo per la formattazione.

Riempie i valori mancanti?

Propone solo strategie con un criterio esplicito e ti chiede di confermarle. Non inventa mai valori per coprire i vuoti.

A cosa serve questo prompt?

Ottieni una diagnosi della qualità del tuo CSV e un piano di pulizia ordinato: tipi, duplicati, valori vuoti, date, categorie incoerenti, codice o formule e controlli finali.

Con quali strumenti di IA funziona?

È pensato per ChatGPT, Claude, Gemini e Microsoft Copilot. Non lo abbiamo ancora verificato in questi strumenti, quindi i risultati possono variare da uno all'altro.

Come personalizzo il prompt?

Clicca su «Personalizza» e compila le variabili (Descrizione del file, Campione di righe, Strumento e Uso finale dei dati). Il testo si aggiorna all'istante e poi puoi copiarlo con un clic. I valori vengono salvati solo nel tuo browser.

Serve esperienza per usarlo?

È di livello intermedio: conviene conoscere l'argomento per fornire un buon contesto e valutare il risultato con occhio critico.

Questo prompt è gratuito?

Sì. Tutti i prompt di HomeCasa Prompts sono gratuiti, senza registrazione né abbonamento. Puoi usarli anche in progetti professionali.

Posso fidarmi dell'output dell'IA?

Consideralo una bozza di alta qualità: verifica sempre dati, cifre e affermazioni importanti prima di pubblicare o prendere decisioni.

Prompt correlati