Доступ по индексу в DataFrame | OTUS

Доступ по индексу в DataFrame

Мы уже рассказывали о структуре DataFrame в Pandas -- высокоуровневой Python-библиотеке для анализа данных. Но как осуществляется доступ по индексу в DataFrame?

На самом деле, индекс по строкам мы можем задавать различными способами, к примеру, в процессе формирования самого объекта DataFrame либо, как говорится "на лету":

1-1801-0b5206.png

Таким образом, мы видим, что индексу задается имя Country Code. Также стоит отметить, что объекты Series из DataFrame приобретут те же самые индексы, что и объект DataFrame:

2-1801-7cad7d.png

При этом доступ к строкам по индексу можно осуществить 2-мя способами:

  • .loc -- для доступа по строковой метке;
  • .iloc -- для доступа по числовому значению (от 0 и выше).

3-1801-b20362.png

Идем дальше. У нас есть возможность выполнять выборку по индексу и интересующим колонкам:

4-1801-23a393.png

Обратите внимание, что .loc в квадратных скобках принимает два аргумента. Кроме интересующего индекса, поддерживаются колонки и слайсинг.

5-1801-94bf8f.png

Следующий момент -- у нас есть возможность фильтровать DataFrame, используя для этого булевы массивы:

6-1801-d55bae.png

Кроме того, существует возможность обращения к столбцам -- для этого применяется атрибут либо нотация словарей Python, то есть df.population и df['population'] -- это, по сути, одно и то же.

Если надо сбросить индексы, сделать это можно следующим образом:

7-1801-da0017.png

Также Pandas при операциях над DataFrame осуществляет возвращение нового объекта DataFrame.

Давайте выполним добавление нового столбца, где население, исчисляемое в миллионах человек, мы поделим на площадь государства, тем самым получив плотность:

8-1801-8a2ed7.png

Теперь представим, что новый столбец нас чем-то не устраивает. Не беда -- его можно без проблем удалить:

9-1801-3e19be.png

Ну а если вы очень ленивы, то достаточно написать del df['density'].

Для переименования столбцов воспользуемся методом rename:

10-1801-5b9ffb.png

В вышеприведенном примере перед переименованием столбца Country Code следует сначала удостовериться, что с него сброшен индекс. В обратном случае никакого эффекта не будет.

По материалам блога https://khashtamov.com/ru/.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
Популярное
Сегодня тут пусто