Sto leggendo un file csv in pandas
. Questo file csv è composto da quattro colonne e alcune righe, ma non ha una riga di intestazione, che voglio aggiungere. Ho provato quanto segue:
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')
Ma quando applico il codice, ottengo il seguente errore:
ValueError: Shape of passed values is (1, 1), indices imply (4, 1)
Cosa significa esattamente l'errore? E quale sarebbe un modo pulito in python per aggiungere una riga di intestazione al mio file csv/pandas df?
Puoi usare names
direttamente nel read_csv
names : array-like, default None Lista di nomi di colonne da usare. Se il file non contiene alcuna riga di intestazione, allora si dovrebbe passare esplicitamente header=None
Cov = pd.read_csv("path/to/file.txt",
sep='\t',
names=["Sequence", "Start", "End", "Coverage"])
In alternativa potresti leggere il tuo csv con header=None
e poi aggiungerlo con df.columns
:
Cov = pd.read_csv("path/to/file.txt", sep='\t', header=None)
Cov.columns = ["Sequence", "Start", "End", "Coverage"]
col_Names=["Sequence", "Start", "End", "Coverage"]
my_CSV_File= pd.read_csv("yourCSVFile.csv",names=col_Names)
avendo fatto questo, basta controllare con [beh ovviamente lo so, lo sai. Ma ancora...
my_CSV_File.head()
Spero che sia d'aiuto ... Saluti