Carga de datos para proyectos de AA
Suponga que si desea iniciar un proyecto de AA, ¿qué es lo primero y más importante que necesitaría? Son los datos que necesitamos cargar para iniciar cualquiera de los proyectos de ML. Con respecto a los datos, el formato de datos más común para los proyectos de ML es CSV (valores separados por comas).
Básicamente, CSV es un formato de archivo simple que se utiliza para almacenar datos tabulares (número y texto) como una hoja de cálculo en texto sin formato. En Python, podemos cargar datos CSV de diferentes formas, pero antes de cargar datos CSV debemos tener cuidado con algunas consideraciones.
Consideración al cargar datos CSV
El formato de datos CSV es el formato más común para los datos de AA, pero debemos tener cuidado de seguir las principales consideraciones al cargar las mismas en nuestros proyectos de AA:
Encabezado de archivo
En los archivos de datos CSV, el encabezado contiene la información de cada campo. Debemos usar el mismo delimitador para el archivo de encabezado y para el archivo de datos porque es el archivo de encabezado el que especifica cómo deben interpretarse los campos de datos.
Los siguientes son los dos casos relacionados con el encabezado del archivo CSV que deben considerarse:
Case-I: When Data file is having a file header - Asignará automáticamente los nombres a cada columna de datos si el archivo de datos tiene un encabezado de archivo.
Case-II: When Data file is not having a file header - Necesitamos asignar los nombres a cada columna de datos manualmente si el archivo de datos no tiene un encabezado de archivo.
En ambos casos, debemos especificar explícitamente si nuestro archivo CSV contiene encabezado o no.
Comentarios
Los comentarios en cualquier archivo de datos tienen su importancia. En el archivo de datos CSV, los comentarios se indican con un hash (#) al comienzo de la línea. Necesitamos considerar los comentarios mientras cargamos datos CSV en proyectos ML porque si tenemos comentarios en el archivo, entonces es posible que debamos indicar, depende del método que elijamos para cargar, si esperamos esos comentarios o no.
Delimitador
En los archivos de datos CSV, el carácter de coma (,) es el delimitador estándar. La función del delimitador es separar los valores de los campos. Es importante considerar la función del delimitador al cargar el archivo CSV en proyectos ML porque también podemos usar un delimitador diferente, como una pestaña o un espacio en blanco. Pero en el caso de utilizar un delimitador diferente al estándar, debemos tener que especificarlo explícitamente.
Citas
En los archivos de datos CSV, la marca de comillas dobles (“”) es el carácter de comillas predeterminado. Es importante tener en cuenta la función de las citas al cargar el archivo CSV en proyectos ML porque también podemos utilizar otros caracteres de comillas que no sean las comillas dobles. Pero en caso de utilizar un carácter de comillas diferente al estándar, debemos especificarlo explícitamente.
Métodos para cargar archivos de datos CSV
Al trabajar con proyectos de ML, la tarea más importante es cargar los datos correctamente en ellos. El formato de datos más común para los proyectos de ML es CSV y se presenta en varios sabores y diferentes dificultades para analizar. En esta sección, vamos a discutir sobre tres enfoques comunes en Python para cargar archivos de datos CSV:
Cargar CSV con la biblioteca estándar de Python
El primer enfoque y el más utilizado para cargar archivos de datos CSV es el uso de la biblioteca estándar de Python, que nos proporciona una variedad de módulos integrados, a saber csv moduley la función reader (). El siguiente es un ejemplo de cómo cargar un archivo de datos CSV con su ayuda:
Example
En este ejemplo, estamos usando el conjunto de datos de la flor de iris que se puede descargar en nuestro directorio local. Después de cargar el archivo de datos, podemos convertirlo enNumPyarray y utilícelo para proyectos de ML. A continuación se muestra la secuencia de comandos de Python para cargar el archivo de datos CSV:
Primero, necesitamos importar el módulo csv proporcionado por la biblioteca estándar de Python de la siguiente manera:
import csv
A continuación, necesitamos importar el módulo Numpy para convertir los datos cargados en una matriz NumPy.
import numpy as np
Ahora, proporcione la ruta completa del archivo, almacenado en nuestro directorio local, que tiene el archivo de datos CSV:
path = r"c:\iris.csv"
A continuación, use la función csv.reader () para leer datos del archivo CSV -
with open(path,'r') as f:
reader = csv.reader(f,delimiter = ',')
headers = next(reader)
data = list(reader)
data = np.array(data).astype(float)
Podemos imprimir los nombres de los encabezados con la siguiente línea de script:
print(headers)
La siguiente línea de secuencia de comandos imprimirá la forma de los datos, es decir, el número de filas y columnas en el archivo:
print(data.shape)
La siguiente línea de secuencia de comandos dará las primeras tres líneas del archivo de datos:
print(data[:3])
Output
['sepal_length', 'sepal_width', 'petal_length', 'petal_width']
(150, 4)
[ [5.1 3.5 1.4 0.2]
[4.9 3. 1.4 0.2]
[4.7 3.2 1.3 0.2]
]
Cargar CSV con NumPy
Otro enfoque para cargar archivos de datos CSV es la función NumPy y numpy.loadtxt (). El siguiente es un ejemplo de cómo cargar un archivo de datos CSV con su ayuda:
Ejemplo
En este ejemplo, estamos utilizando el conjunto de datos de indios Pima que tiene los datos de pacientes diabéticos. Este conjunto de datos es un conjunto de datos numérico sin encabezado. También se puede descargar en nuestro directorio local. Después de cargar el archivo de datos, podemos convertirlo en una matriz NumPy y usarlo para proyectos ML. El siguiente es el script de Python para cargar el archivo de datos CSV:
from numpy import loadtxt
path = r"C:\pima-indians-diabetes.csv"
datapath= open(path, 'r')
data = loadtxt(datapath, delimiter=",")
print(data.shape)
print(data[:3])
Salida
(768, 9)
[ [ 6. 148. 72. 35. 0. 33.6 0.627 50. 1.]
[ 1. 85. 66. 29. 0. 26.6 0.351 31. 0.]
[ 8. 183. 64. 0. 0. 23.3 0.672 32. 1.]
]
Cargar CSV con Pandas
Otro método para cargar archivos de datos CSV es Pandas y pandas.read_csv()function. Esta es la función muy flexible que devuelve unpandas.DataFrameque se puede utilizar inmediatamente para trazar. El siguiente es un ejemplo de cómo cargar un archivo de datos CSV con su ayuda:
Ejemplo
Aquí, implementaremos dos scripts de Python, primero con el conjunto de datos Iris con encabezados y otro con el conjunto de datos Pima Indians, que es un conjunto de datos numéricos sin encabezado. Ambos conjuntos de datos se pueden descargar en el directorio local.
Script-1
El siguiente es el script de Python para cargar un archivo de datos CSV usando Pandas en el conjunto de datos Iris:
from pandas import read_csv
path = r"C:\iris.csv"
data = read_csv(path)
print(data.shape)
print(data[:3])
Output:
(150, 4)
sepal_length sepal_width petal_length petal_width
0 5.1 3.5 1.4 0.2
1 4.9 3.0 1.4 0.2
2 4.7 3.2 1.3 0.2
Script-2
El siguiente es el script de Python para cargar el archivo de datos CSV, además de proporcionar los nombres de los encabezados también, usando Pandas en el conjunto de datos de Diabetes de los indios Pima:
from pandas import read_csv
path = r"C:\pima-indians-diabetes.csv"
headernames = ['preg', 'plas', 'pres', 'skin', 'test', 'mass', 'pedi', 'age', 'class']
data = read_csv(path, names=headernames)
print(data.shape)
print(data[:3])
Output
(768, 9)
preg plas pres skin test mass pedi age class
0 6 148 72 35 0 33.6 0.627 50 1
1 1 85 66 29 0 26.6 0.351 31 0
2 8 183 64 0 0 23.3 0.672 32 1
La diferencia entre los tres enfoques utilizados anteriormente para cargar archivos de datos CSV se puede entender fácilmente con la ayuda de los ejemplos dados.