Mam problem z sortowaniem serii pandy pochodzącej z ramki danych. Skopiowałem i wkleiłem oraz w razie potrzeby zmieniłem kod z innego strony internetowe i przepełnione posty, ale żaden z nich nie posortował serii. W ogóle się nie zmienia.

Jak widać poniżej, zmienna dataFile to DataFrame, a zmienna data to Seria. types

Oto odpowiednia część mojego kodu:

filename = "students.csv"
dataFile = pd.read_csv(filename, index_col = 0)
attribute = 'Weight'
data = dataFile.loc[:][attribute]

data.sort_values(axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last', ignore_index=False)
print(data)

Próbowałem posortować zarówno Series, jak i DataFrame, ale bezskutecznie. Oto kilka obrazów odpowiednio DataFrame i Series:

dataframe

data data2

Byłbym wdzięczny za każdą pomoc, jaką mogę uzyskać.

0
Ty. 29 czerwiec 2020, 23:24

2 odpowiedzi

Najlepsza odpowiedź

data = data.sort_values(...) powinno działać.

1
Joooeey 29 czerwiec 2020, 20:27

Wypróbuj parametr (inplace = True). Wykonuje operację w miejscu. Jeśli wybierzesz Fałsz, nie zmieni to danych w pamięci. Tak więc, kiedy drukujesz dane w ostatniej linii, pokazuje poprzednio zapisane dane, w których nie są wprowadzane żadne zmiany.

Próbować:

data.sort_values(axis=0, ascending=True, inplace=True)

0
Shivam Chauhan 29 czerwiec 2020, 20:35