Come esportare dati di dati in CSV in Python

Come esportare dati di dati in CSV in Python

Quando si lavora con un set di dati ed esegui il preelaborazione necessaria, i dati preelaborati devono essere salvati in un formato di dati come CSV, Excel o un altro. Nelle applicazioni basate sui dati, il CSV (valori separati da virgole) viene spesso utilizzato per la comunicazione dei dati. In genere archiviamo i dati delle applicazioni Web in un frame dati, array, elenco, tupla, dizionario, ecc. I clienti potrebbero richiedere che i dati vengano esportati come file CSV. I dati sono archiviati nei file CSV come sequenza di dati. Possiamo usare Python Panda per scrivere dati su un file CSV come in altri linguaggi di programmazione.

Cos'è un frame di dati Panda?

In Python, il modulo Pandas include una funzione “Panda.DataFrame () "per creare un dati dati. Simile a un foglio di calcolo, un frame dati è una struttura di dati che organizza i dati in una tabella 2D di colonne e righe. A causa della loro adattabilità e semplicità nella memorizzazione e nella manipolazione dei dati, i dati dei dati sono tra le strutture di dati più popolari ed efficaci nell'analisi dei dati moderni.

Sintassi:

panda.DataFrame (dati, indice, colonne, dType, copia)

Come esportare un frame dati in un CSV in Python?

Il metodo TO_CSV () in Python Pandas può convertire un frame dati in un file CSV. Possiamo scrivere l'output su un file se viene fornito un parametro/argomento. In caso contrario, verrà restituita una stringa CSV. Sebbene la funzione TO_CSV () abbia molti attributi, abbiamo menzionato solo quelli che sono usati più frequentemente qui.

Sintassi:

DataFrame.to_csv (percorso, sep, na_rep, float_format, colonne, intestazione, indice, modalità, compressione)

Dove,

sentiero: Si riferisce a Handle file o STR. In generale, specifica il percorso/posizione di un file o un oggetto. Nessuno per impostazione predefinita. Quando non viene fornito nessuno, viene restituito un valore di stringa.

set: È un valore di stringa che ha una lunghezza di 1. La virgola è il suo valore predefinito (,).

Na_rep: Un valore di dati stringa che simboleggia o rappresenta valori mancanti o null. Il valore predefinito è la stringa vuota.

float_format: Contiene un valore di stringa per la formattazione o la strutturazione di una stringa di numeri a punto mobile.

colonne: È un parametro opzionale e si riferisce a una serie che specifica le colonne che devono essere presenti nel CSV di output.

intestazione: Una raccolta di stringhe o un valore booleano. Se impostato su False. I nomi delle colonne non saranno scritti nell'output. Vero è il suo valore predefinito.

Indice: Se impostato su TRUE, i dati CSV includono l'indice. Altrimenti, il CSV di output non ha il valore dell'indice.

Modalità: In modalità di scrittura, si riferisce a un valore di stringa. W è il suo valore predefinito.

Compressione: Un valore di stringa che comprime la modalità utilizzando una delle seguenti opzioni: Infer, Gzip, XZ, BZ2, ZIP o nessuno. Se "Infer" e "Path" sono simili al percorso, identifica la compressione dalle estensioni dei file ".gz ",".BZ2 "," Zip "o" XZ ". Altrimenti, non si verifica alcuna compressione.

Creeremo ora un frame dati Pandas che possiamo utilizzare per esportare i dati in CSV negli esempi di questo tutorial.

Creazione di un frame di dati di esempio

Per creare il nostro telaio dati, importare prima il modulo richiesto, i.e., panda. Dopo aver importato il modulo, la funzione DataFrame () creerà il nostro Frame Data.

Abbiamo creato il nostro telaio dati passando un detto di Python all'interno del PD.Funzione dataframe (). Il nostro telaio di dati è composto da tre colonne (nome, età e segni).

Ora, impariamo a esportare un frame dati in un file CSV.

Esportazione di dati di dati in CSV senza indice

Quando usi il DF.Metodo to_csv () Per esportare un frame dati da Pandas in un file CSV, un indice per il frame dati viene automaticamente incluso. Imposta indice = false su true se non lo si desidera o è necessario includere un indice.

File di uscita:

Quando l'indice non ha senso, farlo può essere utile. Ma, se l'indice memorizza dati importanti o significativi, come i dati delle serie temporali, non dovresti rimuoverli. True è il valore predefinito per il parametro indice. Di conseguenza, puoi semplicemente lasciare il parametro da solo se si desidera che l'indice venga incluso

Esportazione del frame dati in CSV con colonne specifiche

Prima di esportare, potresti essere consapevole delle dimensioni dei tuoi dati quando lo esporta. Limitare le colonne esportate è un metodo per ridurre la dimensione del file CSV generato. Usando il parametro delle colonne, possiamo specificare un elenco contenente i nomi delle colonne che vogliamo includere nel nostro file di esportazione. L'esportazione escluderà tutte le colonne che non sono presenti nell'elenco.

File di uscita:

Abbiamo specificato il parametro della colonna con un elenco contenente nomi di colonne "nome" e "marchi", quindi solo queste due colonne sono state esportate nel nostro file CSV.

Esportazione del frame dati in CSV e modifica del separatore

Possiamo delimitare il file CSV per caratteri diversi da una virgo. Il valore della scheda, ad esempio, è un tipico separatore ed è rappresentato \ t. In Panda, possiamo cambiare il nostro separatore usando l'argomento SEP.

File di uscita:

Esportazione del telaio dati in CSV e trattare i valori mancanti/nessuno

Le informazioni relative ai dati mancanti non sono incluse per impostazione predefinita nei file CSV. Verrà generata una cella vuota quando i dati mancanti vengono esportati in CSV. L'argomento Na_rep consente di visualizzare un valore alternativo, come NULL o N/A, al posto di tutti i valori mancanti. Questo richiede qualsiasi tipo di stringa come input, ma il valore predefinito è una stringa vuota. Per questo, utilizzeremo un altro telaio di dati contenente alcuni valori di dati mancanti.

Imposta la stringa "null" come valore del parametro Na_rep.

File di uscita:

Esportazione del telaio dati in CSV senza intestazione

Nella scienza dei dati, un set di dati può richiedere l'esportazione di dati da un telaio di dati senza un'intestazione ad un certo punto. Questo è spesso il caso quando esportano set di dati enormi che devono essere uniti in seguito. Un frame di dati può essere facilmente convertito in CSV senza l'intestazione. Per raggiungere questo obiettivo, l'argomento dell'intestazione può essere utilizzato. È vero per impostazione predefinita, indicando che l'intestazione verrà inclusa.

File di uscita:

Compresa dati quando si esporta il telaio dati in CSV

Può essere utile comprimere set di dati di grandi dimensioni quando si lavora con quelli destinati a una memoria a lungo termine, specialmente quando li salvi in ​​formato CSV. La dimensione del file diminuisce quando un set di dati viene compresso. Tuttavia, l'esportazione di dati di dati nel processo CSV richiederà un tempo più lungo. Allo stesso modo, ci vorrà più tempo per i panda per trasformare il CSV in un frame di dati. Poiché la compressione richiede più tempo rispetto all'esportazione semplice, ci vuole più tempo. Vediamo come possiamo comprimere i nostri dati utilizzando l'argomento COMPRIM:

Produzione:

Il file CSV di output è ora compresso.

Esportazione di dati sul file CSV con codifica diversa

Spesso dovrai crittografare i dati quando si lavora con i dati di stringa. Se hai a che fare con dati codificati o numerici, questo è meno spesso, ma le stringhe spesso richiedono ulteriori istruzioni su come dovrebbero essere interpretate.

Il formato di codifica UTF-8, uno dei formati di codifica più utilizzati, è il tipo di codifica per impostazione predefinita. Usiamo la codifica UTF-16 per esportare dati di dati in CSV.

Produzione:

Conclusione

In questo tutorial, abbiamo visto per la prima volta l'introduzione di file CSV e Pandas DataFrame. Abbiamo discusso di come un frame di dati potrebbe essere esportato in un CSV in Python. Abbiamo cercato di spiegare come usare i panda.Metodo TO_CSV () in modo efficace e come possiamo utilizzare diversi argomenti della funzione TO_CSV () per modificare il modo in cui vengono esportati i dati. Dopo aver coperto questo post, dovresti essere tutti in grado di creare un file CSV da un Frame di dati Pandas.