Convertir Pandas en CSV sin índice
Como sabes, el índice puede ser pensado como un punto de referencia para almacenar y acceder a los registros en un DataFrame. Son únicos para cada fila y normalmente van desde 0 hasta la última fila del DataFrame, pero también podemos tener números de serie, fechas y otras columnas únicas como el índice de un DataFrame.
Pero a veces, mientras se exportan o se leen archivos, esta columna de índice extra puede no ser requerida por el usuario. El problema se ilustrará más claramente usando el siguiente DataFrame.
import pandas as pd
df = pd.DataFrame([[6, 7, 8], [9, 12, 14], [8, 10, 6]], columns=["a", "b", "c"])
print(df)
Resultado:
a b c
0 6 7 8
1 9 12 14
2 8 10 6
Como puede ver, tenemos un índice adicional agregado al DataFrame, que puede ser evitado por el usuario mientras lo guarda en un archivo. Si queremos convertir este DataFrame en un archivo CSV sin la columna del índice, podemos hacerlo estableciendo el index
como False
en la función to_csv()
.
Códigos de ejemplo:
import pandas as pd
df = pd.DataFrame([[6, 7, 8], [9, 12, 14], [8, 10, 6]], columns=["a", "b", "c"])
print(df)
df.to_csv("data2.csv", index=False)
Resultado:
a b c
0 6 7 8
1 9 12 14
2 8 10 6
Como se ve en la salida, el DataFrame sí tiene un índice, pero como establecemos el parámetro index
como False
, el archivo CSV exportado no tendrá esa columna extra.
Si exportamos un archivo con una columna de índice extra (sin poner el parámetro index
como False
) y luego intentamos leerlo, obtendremos una columna extra extraña.
import pandas as pd
df = pd.DataFrame([[6, 7, 8], [9, 12, 14], [8, 10, 6]], columns=["a", "b", "c"])
print(df)
df.to_csv("data2.csv")
df_new = pd.read_csv("data2.csv")
print(df_new)
Resultado:
a b c
0 6 7 8
1 9 12 14
2 8 10 6
Unnamed: 0 a b c
0 0 6 7 8
1 1 9 12 14
2 2 8 10 6
Como puedes ver, el df_new
DataFrame tiene una columna extra Unnamed
.
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.
LinkedInArtículo relacionado - Pandas DataFrame
- Cómo obtener las cabeceras de columna de Pandas DataFrame como una lista
- Cómo borrar la columna de Pandas DataFrame
- Cómo convertir la columna del DataFrame a Datetime en Pandas
- Cómo convertir un float en un entero en Pandas DataFrame
- Cómo clasificar Pandas DataFrame por los valores de una columna
- Cómo obtener el agregado de Pandas grupo por y suma