Python Pandas - Herramientas IO
los Pandas I/O API es un conjunto de funciones de lectura de nivel superior a las que se accede como pd.read_csv() que generalmente devuelven un objeto Pandas.
Las dos funciones de caballo de batalla para leer archivos de texto (o los archivos planos) son read_csv() y read_table(). Ambos usan el mismo código de análisis para convertir inteligentemente datos tabulares en unDataFrame objeto -
pandas.read_csv(filepath_or_buffer, sep=',', delimiter=None, header='infer',
names=None, index_col=None, usecols=None
pandas.read_csv(filepath_or_buffer, sep='\t', delimiter=None, header='infer',
names=None, index_col=None, usecols=None
Así es como csv los datos del archivo se parecen a:
S.No,Name,Age,City,Salary
1,Tom,28,Toronto,20000
2,Lee,32,HongKong,3000
3,Steven,43,Bay Area,8300
4,Ram,38,Hyderabad,3900
Guarde estos datos como temp.csv y realizar operaciones en él.
S.No,Name,Age,City,Salary
1,Tom,28,Toronto,20000
2,Lee,32,HongKong,3000
3,Steven,43,Bay Area,8300
4,Ram,38,Hyderabad,3900
Guarde estos datos como temp.csv y realizar operaciones en él.
read.csv
read.csv lee datos de los archivos csv y crea un objeto DataFrame.
import pandas as pd
df=pd.read_csv("temp.csv")
print df
Sus output es como sigue -
S.No Name Age City Salary
0 1 Tom 28 Toronto 20000
1 2 Lee 32 HongKong 3000
2 3 Steven 43 Bay Area 8300
3 4 Ram 38 Hyderabad 3900
índice personalizado
Esto especifica una columna en el archivo csv para personalizar el índice usando index_col.
import pandas as pd
df=pd.read_csv("temp.csv",index_col=['S.No'])
print df
Sus output es como sigue -
S.No Name Age City Salary
1 Tom 28 Toronto 20000
2 Lee 32 HongKong 3000
3 Steven 43 Bay Area 8300
4 Ram 38 Hyderabad 3900
Convertidores
dtype de las columnas se puede pasar como un dict.
import pandas as pd
df = pd.read_csv("temp.csv", dtype={'Salary': np.float64})
print df.dtypes
Sus output es como sigue -
S.No int64
Name object
Age int64
City object
Salary float64
dtype: object
Por defecto, el dtype de la columna Salario es int, pero el resultado lo muestra como float porque hemos lanzado explícitamente el tipo.
Por lo tanto, los datos parecen flotantes:
S.No Name Age City Salary
0 1 Tom 28 Toronto 20000.0
1 2 Lee 32 HongKong 3000.0
2 3 Steven 43 Bay Area 8300.0
3 4 Ram 38 Hyderabad 3900.0
header_names
Especifique los nombres del encabezado utilizando el argumento de nombres.
import pandas as pd
df=pd.read_csv("temp.csv", names=['a', 'b', 'c','d','e'])
print df
Sus output es como sigue -
a b c d e
0 S.No Name Age City Salary
1 1 Tom 28 Toronto 20000
2 2 Lee 32 HongKong 3000
3 3 Steven 43 Bay Area 8300
4 4 Ram 38 Hyderabad 3900
Observe, los nombres de los encabezados se agregan con los nombres personalizados, pero el encabezado del archivo no se ha eliminado. Ahora, usamos el argumento del encabezado para eliminar eso.
Si el encabezado está en una fila que no sea la primera, pase el número de fila al encabezado. Esto omitirá las filas anteriores.
import pandas as pd
df=pd.read_csv("temp.csv",names=['a','b','c','d','e'],header=0)
print df
Sus output es como sigue -
a b c d e
0 S.No Name Age City Salary
1 1 Tom 28 Toronto 20000
2 2 Lee 32 HongKong 3000
3 3 Steven 43 Bay Area 8300
4 4 Ram 38 Hyderabad 3900
saltos
skiprows omite el número de filas especificado.
import pandas as pd
df=pd.read_csv("temp.csv", skiprows=2)
print df
Sus output es como sigue -
2 Lee 32 HongKong 3000
0 3 Steven 43 Bay Area 8300
1 4 Ram 38 Hyderabad 3900