python - lista - Cómo agregar una fila de encabezado a un DataFrame de pandas
insertar columna pandas (4)
Alternativamente, podría leer su csv con
header=None
y luego agregarlo con
df.columns
:
Cov = pd.read_csv("path/to/file.txt", sep=''/t'', header=None)
Cov.columns = ["Sequence", "Start", "End", "Coverage"]
Estoy leyendo un archivo csv en
pandas
.
Este archivo csv consta de cuatro columnas y algunas filas, pero no tiene una fila de encabezado, que quiero agregar.
He estado intentando lo siguiente:
Cov = pd.read_csv("path/to/file.txt", sep=''/t'')
Frame=pd.DataFrame([Cov], columns = ["Sequence", "Start", "End", "Coverage"])
Frame.to_csv("path/to/file.txt", sep=''/t'')
Pero cuando aplico el código, aparece el siguiente error:
ValueError: Shape of passed values is (1, 1), indices imply (4, 1)
¿Qué significa exactamente el error? ¿Y cuál sería una forma limpia en python de agregar una fila de encabezado a mi archivo csv / pandas df?
Para arreglar su código, simplemente puede cambiar
[Cov]
a
Cov.values
, el primer parámetro de
pd.DataFrame
se convertirá en una matriz
numpy
multidimensional:
Cov = pd.read_csv("path/to/file.txt", sep=''/t'')
Frame=pd.DataFrame(Cov.values, columns = ["Sequence", "Start", "End", "Coverage"])
Frame.to_csv("path/to/file.txt", sep=''/t'')
Pero la solución más inteligente todavía es usar
pd.read_excel
con
header=None
y
names=columns_list
.
Puede usar
names
directamente en
read_csv
nombres: tipo matriz, predeterminado Ninguno Lista de nombres de columna para usar. Si el archivo no contiene una fila de encabezado, entonces debe pasar explícitamente encabezado = Ninguno
Cov = pd.read_csv("path/to/file.txt",
sep=''/t'',
names=["Sequence", "Start", "End", "Coverage"])
col_Names=["Sequence", "Start", "End", "Coverage"]
my_CSV_File= pd.read_csv("yourCSVFile.csv",names=col_Names)
Habiendo hecho esto, simplemente verifíquelo con [bueno, obviamente lo sé, lo sabe. Pero aún...
my_CSV_File.head()
Espero que ayude ... Saludos