Как добавить индексы в pandas dataframe: подробное руководство 💡
set_index()
. Этот метод позволяет указать столбец или столбцы, которые вы хотите использовать в качестве индекса.
Вот пример:
import pandas as pd
# Создание DataFrame
data = {'Name': ['John', 'Emma', 'Mike'],
'Age': [25, 30, 35],
'City': ['New York', 'London', 'Paris']}
df = pd.DataFrame(data)
# Установка 'Name' в качестве индекса
df.set_index('Name', inplace=True)
print(df)
В этом примере мы создаем DataFrame с именем, возрастом и городом. Затем мы используем метод set_index()
для установки столбца 'Name' в качестве индекса. Результат будет DataFrame с индексами, основанными на значении столбца 'Name'.
Детальный ответ
Как добавить индексы в pandas dataframe
Добро пожаловать в наш урок по добавлению индексов в pandas dataframe! В этой статье мы рассмотрим различные способы добавления индексов к вашим данным в pandas.
1. Установка индекса из существующего столбца
Первый способ - установка индекса из существующего столбца вашего dataframe. Давайте рассмотрим следующий пример:
import pandas as pd
# Создание dataframe
df = pd.DataFrame({'Город': ['Москва', 'Санкт-Петербург', 'Казань'],
'Население': [12500000, 5351935, 1257391],
'Регион': ['Московская область', 'Ленинградская область', 'Республика Татарстан']})
# Установка индекса из столбца 'Город'
df.set_index('Город', inplace=True)
# Вывод dataframe с новым индексом
print(df)
В этом примере мы создаем dataframe с тремя столбцами: 'Город', 'Население' и 'Регион'. Затем мы используем метод set_index() для установки индекса из столбца 'Город'. Устанавливая параметр inplace=True, мы изменяем исходный dataframe с новым индексом.
2. Установка числового индекса
Второй способ - установка числового индекса, если у вас нет подходящего столбца для использования в качестве индекса. Ниже приведен пример:
import pandas as pd
# Создание dataframe
df = pd.DataFrame({'Название': ['Яблоко', 'Апельсин', 'Банан'],
'Количество': [5, 3, 2],
'Цена': [10.0, 5.0, 3.0]})
# Установка числового индекса
df.index = range(1, len(df) + 1)
# Вывод dataframe с новым индексом
print(df)
В этом примере мы создаем dataframe с тремя столбцами: 'Название', 'Количество' и 'Цена'. Затем мы устанавливаем числовой индекс, используя присваивание нумерации от 1 до количества строк в dataframe.
3. Установка мультииндекса
Третий способ - установка мультииндекса, когда требуется иерархическая структура индексов. В следующем примере мы покажем, как это сделать:
import pandas as pd
# Создание dataframe
df = pd.DataFrame({'Город': ['Москва', 'Москва', 'Санкт-Петербург', 'Санкт-Петербург'],
'Магазин': ['Магазин 1', 'Магазин 2', 'Магазин 1', 'Магазин 2'],
'Продажи': [100, 150, 200, 250]})
# Установка мультииндекса
df.set_index(['Город', 'Магазин'], inplace=True)
# Вывод dataframe с новым мультииндексом
print(df)
В этом примере мы создаем dataframe с тремя столбцами: 'Город', 'Магазин' и 'Продажи'. Затем мы используем список столбцов ['Город', 'Магазин'] в методе set_index() для создания мультииндекса.
4. Повторная индексация
Четвертый способ - повторная индексация, когда требуется переиндексировать dataframe с использованием другого набора значений. Вот пример:
import pandas as pd
# Создание dataframe
df = pd.DataFrame({'Год': [2018, 2019, 2020, 2021],
'Продажи': [100, 150, 200, 250]})
# Создание нового индекса
new_index = ['A', 'B', 'C', 'D']
# Повторная индексация
df = df.reindex(new_index)
# Вывод dataframe с новым индексом
print(df)
В этом примере мы создаем dataframe с двумя столбцами: 'Год' и 'Продажи'. Затем мы создаем новый индекс с помощью списка new_index и используем метод reindex() для переиндексации dataframe.
5. Использование метода reset_index
Последний способ, который мы рассмотрим, - использование метода reset_index для удаления текущего индекса и восстановления числового индекса по умолчанию. Пример приведен ниже:
import pandas as pd
# Создание dataframe
df = pd.DataFrame({'Город': ['Москва', 'Санкт-Петербург', 'Казань'],
'Население': [12500000, 5351935, 1257391],
'Регион': ['Московская область', 'Ленинградская область', 'Республика Татарстан']})
# Сброс текущего индекса
df = df.reset_index(drop=True)
# Вывод dataframe с новым числовым индексом
print(df)
В этом примере мы создаем dataframe с тремя столбцами: 'Город', 'Население' и 'Регион'. Затем мы используем метод reset_index с параметром drop=True, чтобы удалить текущий индекс и восстановить числовой индекс по умолчанию.
Заключение
Итак, в этой статье мы рассмотрели различные способы добавления индексов в pandas dataframe. Вы узнали о установке индексов из существующих столбцов, использовании числового индекса, создании мультииндексов, повторной индексации и сбросе текущего индекса. Теперь вы можете легко управлять индексами в ваших dataframe и использовать их для удобной и эффективной работы с вашими данными.