Leggi CSV in NumPy Array in Python
-
Usa la funzione
numpy.genfromtxt()
per leggere i dati CSV in un array NumPy -
Usa un DataFrame
pandas
per leggere i dati CSV in un array NumPy -
Usa il modulo
csv
per leggere i dati CSV su un array NumPy
Questo tutorial discuterà come leggere i dati da un file CSV e archiviarli in un array numpy.
Usa la funzione numpy.genfromtxt()
per leggere i dati CSV in un array NumPy
La funzione genfromtxt()
è spesso usata per caricare dati da file di testo. Possiamo leggere i dati dai file CSV utilizzando questa funzione e memorizzarli in un array numpy. Questa funzione ha molti argomenti disponibili, rendendo più facile caricare i dati nel formato desiderato. Possiamo specificare il delimitatore, gestire i valori mancanti, eliminare i caratteri specificati e specificare il tipo di dati dei dati utilizzando i diversi argomenti di questa funzione.
Per esempio,
from numpy import genfromtxt
data = genfromtxt("sample.csv", delimiter=",", skip_header=1)
print(data)
Produzione:
[[1. 2. 3.]
[4. 5. 6.]]
Molte altre funzioni derivano da questo, come recfromtxt()
e recfromcsv()
che possono eseguire la stessa funzione ma hanno valori predefiniti diversi.
Nel codice seguente, leggeremo i dati da un file CSV utilizzando il file recfromcsv()
.
import numpy as np
data = np.recfromcsv("sample.csv", skip_header=0)
print(data)
Produzione:
[(1, 2, 3) (4, 5, 6)]
Nota che non dovevamo specificare il delimitatore come virgola e il valore diverso per specificare la riga di intestazione.
Usa un DataFrame pandas
per leggere i dati CSV in un array NumPy
Possiamo anche utilizzare un DataFrame pandas
per leggere i dati CSV in un array. Per questo, leggeremo i dati in un DataFrame e poi lo convertiremo in un array NumPy usando la funzione values()
dalla libreria pandas
.
Il codice seguente implementa questo.
from pandas import read_csv
df = read_csv("sample.csv")
data = df.values
print(data)
Produzione:
[[1 2 3]
[4 5 6]]
Usa il modulo csv
per leggere i dati CSV su un array NumPy
Il modulo csv
viene utilizzato per leggere e scrivere dati su file CSV in modo efficiente. Questo metodo leggerà i dati da un file CSV utilizzando questo modulo e li memorizzerà in una lista. Procederemo quindi a convertire questo elenco in un array numpy.
Il codice seguente lo spiegherà.
import csv
import numpy as np
with open("sample.csv", "r") as f:
data = list(csv.reader(f, delimiter=";"))
data = np.array(data)
print(data)
Produzione:
[['1,2,3']
['4,5,6']]
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn