Введение
В этом практическом занятии мы научимся использовать метод pivot() в библиотеке Python Pandas. Метод pivot() позволяет преобразовать или изменить структуру DataFrame, меняя организацию значений индекса и столбцов.
Советы по виртуальной машине
После запуска виртуальной машины нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.
Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook загрузится. Проверка операций не может быть автоматизирована из-за ограничений Jupyter Notebook.
Если у вас возникнут проблемы во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.
Импорт библиотеки pandas и создание DataFrame
- Начните с импорта библиотеки pandas и создания DataFrame с использованием функции
pd.DataFrame().
import pandas as pd
data = {
'crop': ['Rice', 'Wheat', 'Rice', 'Wheat', 'Rice', 'Wheat'],
'state': ['karnataka', 'karnataka', 'Tamilnadu', 'Tamilnadu', 'Kerala', 'Kerala'],
'Temperature': [29, 29, 31, 31, 25, 25],
'Humidity': [50, 50, 62, 62, 45, 45]
}
df = pd.DataFrame(data)
print(df)
- Это создаст DataFrame со столбцами 'crop', 'state', 'Temperature' и 'Humidity'.
Изменение структуры DataFrame с использованием метода pivot()
- Чтобы изменить структуру DataFrame, мы можем использовать метод
pivot()и указать имена индекса и столбцов.
df_pivot = df.pivot(index='crop', columns='state')
print(df_pivot)
- Метод
pivot()переупорядочит DataFrame, используя 'crop' в качестве нового индекса и 'state' в качестве нового столбца. В результате полученный DataFrame будет иметь столбцы 'Temperature' и 'Humidity' для каждой комбинации 'crop' и 'state'.
Указание параметра values для выбора определенных столбцов
- Если мы хотим включить только определенные столбцы в преобразованный DataFrame, мы можем использовать параметр
valuesв методеpivot().
df_pivot_specific = df.pivot(index='crop', columns='state', values='Temperature')
print(df_pivot_specific)
- В результате полученный DataFrame будет содержать только столбец 'Temperature' для каждой комбинации 'crop' и 'state'.
Обработка дубликатов в DataFrame
- Если DataFrame содержит дубликаты, метод
pivot()вызовет ошибкуValueError. В таких случаях необходимо убедиться, что DataFrame не содержит дублирующихся записей перед изменением его структуры.
df_duplicated = pd.DataFrame({'crop': ['Rice', 'Rice', 'Wheat', 'Wheat', 'Rice', 'Wheat'],
'state': ['karnataka', 'karnataka', 'Tamilnadu', 'Tamilnadu', 'Kerala', 'Kerala'],
'Temperature': [29, 29, 31, 31, 25, 25],
'Humidity': [50, 50, 62, 62, 45, 45]})
df_duplicated_pivot = df_duplicated.pivot(index='crop', columns='state', values='Temperature')
print(df_duplicated_pivot)
- В этом примере DataFrame содержит дублирующиеся записи для комбинации 'crop' и 'state', что приведет к ошибке
ValueErrorпри использовании методаpivot().
Резюме
В этом практическом занятии (лабораторной работе) рассмотрено базовое использование метода pivot() в библиотеке Python Pandas. Метод pivot() позволяет преобразовать или изменить структуру DataFrame, меняя организацию значений индекса и столбцов. Мы научились изменять структуру DataFrame, выбирать определенные столбцы и обрабатывать дубликаты. Метод pivot() является мощным инструментом для манипуляции и анализа данных.