Как сделать индекс колонкой в Pandas 📊

Чтобы сделать индекс колонкой в pandas, вы можете использовать метод set_index. Давайте посмотрим на пример:

import pandas as pd

# Создание DataFrame-а
data = {'Name': ['John', 'Alice', 'Bob'],
        'Age': [25, 28, 30],
        'City': ['New York', 'San Francisco', 'London']}

df = pd.DataFrame(data)

# Установка колонки 'Name' в качестве индекса
df.set_index('Name', inplace=True)

print(df)

Детальный ответ

Как сделать индекс колонкой в Pandas

Индексация является важной операцией при работе с данными в библиотеке Pandas. Она позволяет нам эффективно организовывать, анализировать и манипулировать данными в таблицах и сериях. По умолчанию, при создании DataFrame или Series в Pandas, индексирование происходит автоматически либо целочисленными значениями от 0 до N-1, где N - количество строк или элементов. Однако, иногда требуется индексировать данные по значениям из определенной колонки. В этой статье мы рассмотрим, как сделать индекс колонкой в Pandas.

Давайте начнем с создания примера DataFrame:


import pandas as pd

data = {'Name': ['John', 'Jane', 'Mike', 'Emily'],
        'Age': [25, 30, 35, 40],
        'City': ['New York', 'London', 'Paris', 'Tokyo']}

df = pd.DataFrame(data)
print(df)

Вывод:


   Name  Age      City
0  John   25  New York
1  Jane   30    London
2  Mike   35     Paris
3  Emily  40     Tokyo

Мы создали DataFrame с тремя колонками: Name, Age и City. При создании DataFrame Pandas автоматически сгенерировал целочисленные значения индекса для каждой строки.

Теперь предположим, что мы хотим сделать колонку 'Name' индексом для нашего DataFrame. Для этого мы можем использовать метод set_index() в Pandas:


df_indexed = df.set_index('Name')
print(df_indexed)

Вывод:


       Age      City
Name                
John    25  New York
Jane    30    London
Mike    35     Paris
Emily   40     Tokyo

Теперь мы видим, что колонка 'Name' стала индексом нашего DataFrame. Каждая строка теперь индексируется по имени вместо целочисленного значения.

Мы также можем добавить параметр inplace=True в методе set_index(), чтобы изменить исходный DataFrame без создания нового:


df.set_index('Name', inplace=True)
print(df)

Вывод:


       Age      City
Name                
John    25  New York
Jane    30    London
Mike    35     Paris
Emily   40     Tokyo

Таким образом, мы изменили исходный DataFrame, сделав 'Name' колонкой индекса.

Если хотим вернуть обычное целочисленное индексирование, можем использовать метод reset_index() в Pandas:


df.reset_index(inplace=True)
print(df)

Вывод:


   index   Name  Age      City
0      0   John   25  New York
1      1   Jane   30    London
2      2   Mike   35     Paris
3      3  Emily   40     Tokyo

Теперь мы видим привычное целочисленное индексирование.

В заключение, метод set_index() позволяет сделать любую колонку DataFrame индексом. Это очень полезно при работе с данными, когда индексирование по определенной колонке важно для эффективности и удобства. Мы также можем использовать метод reset_index() для возврата к обычному целочисленному индексированию.

Надеюсь, эта статья помогла вам понять, как сделать индекс колонкой в Pandas. Удачи в работе с Pandas!

Видео по теме

Pandas DataFrame index индекс отбор строк и переменных на основе индекса

Pandas Базовый №6. Индексы

Python для начинающих аналитиков | 4: библиотека Pandas, датафреймы, индекс, работа с датами

Похожие статьи:

🔍 Как правильно складывать датафреймы pandas: подробное руководство

Как сделать индекс колонкой в Pandas 📊