Ich habe eine Datendatei aus den Spalten A-G wie unten, aber wenn ich sie mit pd.read_csv('data.csv')
lese, wird eine zusätzliche unnamed
-Spalte am Ende ohne Grund ausgegeben.
colA ColB colC colD colE colF colG Unnamed: 7
44 45 26 26 40 26 46 NaN
47 16 38 47 48 22 37 NaN
19 28 36 18 40 18 46 NaN
50 14 12 33 12 44 23 NaN
39 47 16 42 33 48 38 NaN
Ich habe meine Datei mehrmals gesehen, aber ich habe keine zusätzlichen Daten in einer anderen Spalte. Wie soll ich diese zusätzliche Spalte beim Lesen entfernen? Vielen Dank
In [162]: df.loc[:, ~df.columns.str.contains('^Unnamed')]
Out[162]:
colA ColB colC colD colE colF colG
0 44 45 26 26 40 26 46
1 47 16 38 47 48 22 37
2 19 28 36 18 40 18 46
3 50 14 12 33 12 44 23
4 39 47 16 42 33 48 38
wenn die erste Spalte Indexwerte enthält, können Sie stattdessen Folgendes tun:
pd.read_csv('data.csv', index_col=0)
suchen Sie zuerst die Spalten mit dem Namen "unbenannt" und löschen Sie sie.
df.drop(df.columns[df.columns.str.contains('unnamed',case = False)],axis = 1)
Die genehmigte Lösung funktioniert in meinem Fall nicht, daher ist meine Lösung die folgende:
''' The column name in the example case is "Unnamed: 7"
but it works with any other name ("Unnamed: 0" for example). '''
df.rename({"Unnamed: 7":"a"}, axis="columns", inplace=True)
# Then, drop the column as usual.
df.drop(["a"], axis=1, inplace=True)
Hoffe, es hilft anderen.
use.dropna
df.dropna(how='all', axis=1)