Что выведет код Junior Series, DataFrame и индекс обновлено
inplace возвращает None
Вопрос
Что выведет код? По строке на каждый print.
import pandas as pd
df = pd.DataFrame({'a': [3, 1, 2]})
r = df.sort_values('a', inplace=True)
print(r)
print(df['a'].tolist())
print(df.index.tolist())
Попробуйте сами
Напишите, что выведет код: каждый вывод с новой строки.
Показать ответ и разбор
Коротко
Код выведет: None, [1, 2, 3], [1, 2, 0]. Метод с inplace=True возвращает None, а сам df отсортирован.
Что выведет
None
[1, 2, 3]
[1, 2, 0]
Разбор
Метод с inplace=True возвращает None, а сам df отсортирован. Индекс при сортировке едет вместе со строками: значение 1 стояло на позиции 1, 2 на позиции 2, 3 на позиции 0, поэтому индекс [1, 2, 0]. Чтобы получить 0..n-1, нужен ignore_index=True или reset_index(drop=True).
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.