Почему передача списка в подмножество фрейма данных возвращает другой фрейм данных?

#python #pandas #dataframe

#python #pandas #фрейм данных

Вопрос:

Мой вопрос прост.

 df[[‘column’]] 
  

Вернет объект фрейма данных, но

 df[‘column’]
  

Вернет объект series.
Мой вопрос только в том, почему он ведет себя так. Это просто поведение, присущее коду, работающему под капотом? Или за этим выбором стояли конкретные причины? Является ли это соглашением на других языках? Я изучаю pandas около 6 месяцев, это довольно интуитивно понятно, но мне всегда было интересно, почему pandas ведет себя таким образом.

Ответ №1:

If columns = [‘column1’, 'column2'] , df[columns] возвращает фрейм данных с двумя столбцами.

Итак (по соображениям согласованности), if columns = [‘column1’] , df[columns] возвращает фрейм данных с одним столбцом.

Тогда как if column = 'column1' (не список), df[column] возвращает ряд