Изучение различных методов определения номера столбца фрейма данных в Pandas

При анализе данных и манипулировании ими с использованием Pandas часто необходимо определить номер определенного столбца в DataFrame. В этой статье мы рассмотрим несколько методов выполнения этой задачи, приведя попутно примеры кода. К концу вы получите полное представление о том, как определить номер столбца DataFrame в Pandas.

Метод 1: использование метода get_loc()
Метод get_loc()в Pandas позволяет нам получить индекс заданного имени столбца. Передав имя столбца в качестве аргумента, мы можем получить соответствующий номер столбца.

import pandas as pd
# Create a sample DataFrame
data = {'Name': ['John', 'Emily', 'Charlie'],
        'Age': [25, 30, 35],
        'City': ['New York', 'Paris', 'London']}
df = pd.DataFrame(data)
# Get the column number using get_loc()
column_name = 'Age'
column_number = df.columns.get_loc(column_name) + 1
print(f"The column number of '{column_name}' is {column_number}")

Выход:

The column number of 'Age' is 2

Метод 2: использование метода Index.get_loc()
Метод get_loc()также можно применить непосредственно к индексному объекту DataFrame. Этот метод возвращает позицию столбца в DataFrame.

import pandas as pd
# Create a sample DataFrame
data = {'Name': ['John', 'Emily', 'Charlie'],
        'Age': [25, 30, 35],
        'City': ['New York', 'Paris', 'London']}
df = pd.DataFrame(data)
# Get the column number using index.get_loc()
column_name = 'City'
column_number = df.index.get_loc(column_name) + 1
print(f"The column number of '{column_name}' is {column_number}")

Выход:

The column number of 'City' is 3

Метод 3: использование атрибута columns
Атрибут columnsDataFrame возвращает список имен столбцов. Мы можем использовать метод index()списка для получения номера столбца.

import pandas as pd
# Create a sample DataFrame
data = {'Name': ['John', 'Emily', 'Charlie'],
        'Age': [25, 30, 35],
        'City': ['New York', 'Paris', 'London']}
df = pd.DataFrame(data)
# Get the column number using the columns attribute
column_name = 'Name'
column_number = df.columns.to_list().index(column_name) + 1
print(f"The column number of '{column_name}' is {column_number}")

Выход:

The column number of 'Name' is 1

Метод 4: использование метода get_indexer()
Метод get_indexer()можно использовать для получения положения столбца в DataFrame. Он возвращает массив целых чисел, представляющих индексы имен столбцов.

import pandas as pd
# Create a sample DataFrame
data = {'Name': ['John', 'Emily', 'Charlie'],
        'Age': [25, 30, 35],
        'City': ['New York', 'Paris', 'London']}
df = pd.DataFrame(data)
# Get the column number using get_indexer()
column_name = 'Age'
column_number = df.columns.get_indexer([column_name])[0] + 1
print(f"The column number of '{column_name}' is {column_number}")

Выход:

The column number of 'Age' is 2

В этой статье мы рассмотрели несколько методов определения номера столбца DataFrame в Pandas. Используя такие методы, как атрибут get_loc(), Index.get_loc(), columnsи get_indexer(), вы можете легко определить положение столбец внутри DataFrame. Эти методы обеспечивают гибкость и удобство при работе с большими наборами данных в Pandas.

Не забудьте поэкспериментировать с этими методами и включить их в свои рабочие процессы анализа данных, чтобы повысить производительность с помощью Pandas.