--data.csv file
ID,Index,Height,Weight
0,1,167,51
1,2,181,61
2,3,176,69
3,4,173,64
4,5,172,65
--data.csv file

data = pd.read_csv('data.csv')

Chcę usunąć kolumnę "ID" z całymi wartościami.

data = data.drop(['ID'],axis=1)


del df['ID']

Próbowałem obu tych metod, jednak gdy zapisuję nowe dane w tym samym pliku i ponownie go ponownie, zdaję sobie sprawę, że usunąłem nazwę kolumny ("ID"), ale nie wartości. I pisemne "nienazwane" zamiast "ID", kiedy przeczytałem go w konsoli.

--data.csv file
,Index,Height,Weight
0,1,167,51
1,2,181,61
2,3,176,69
3,4,173,64
4,5,172,65
--data.csv file

I tak wygląda w konsoli:

       Unnamed: 0  Index      Height     Weight
0               0      1      167        51
1               1      2      181        61
2               2      3      176        69
3               3      4      173        64
4               4      5      172        65

Chcę usunąć całą kolumnę z wartościami. Czy jest dla tego metoda?

2
burlesquel 22 listopad 2020, 01:03

1 odpowiedź

Najlepsza odpowiedź

To nie jest taka kolumna, która jest zapisywana, jest indeksem - coś takiego Dataframe ma. Aby zapisać dataframe w CSV bez indeksu, użyj

df.to_csv('file', index = False)

Czytać z CSV (początkowo podczas sortowania go i nadal jest tam w pliku)

df = pd.read_csv('file', index_col = 0)

Po pozbędzieniu się indeksu możesz przeczytać po prostu bez wspomnienia index_col, co jest równoważne

df = pd.read_csv('file', index_col = None)

Kiedy print DF nadal będzie ci pokazuje indeks

2
piterbarg 21 listopad 2020, 22:15