🔄 Как перевернуть dataframe в pandas: простые способы перегруппировки данных
Чтобы перевернуть DataFrame в pandas, вы можете использовать метод transpose(). Он меняет местами строки и столбцы DataFrame.
import pandas as pd
# Создание DataFrame
df = pd.DataFrame({'А': [1, 2, 3], 'Б': [4, 5, 6], 'В': [7, 8, 9]})
# Использование метода transpose()
df_transposed = df.transpose()
# Печать перевернутого DataFrame
print(df_transposed)
Метод transpose() можно также вызвать через атрибут T DataFrame.
# Использование атрибута T
df_transposed = df.T
# Печать перевернутого DataFrame
print(df_transposed)
Обратите внимание, что перевернутый DataFrame будет содержать индексы столбцов, обратные оригинальным индексам строк, и наоборот.
Детальный ответ
Как перевернуть DataFrame в pandas
В pandas, DataFrame - это двумерная структура данных, представляющая табличные данные в виде таблицы с рядами и столбцами. Иногда возникает необходимость перевернуть DataFrame, чтобы поменять местами строки и столбцы. В этой статье мы рассмотрим, как это можно сделать с использованием библиотеки pandas.
Метод `T`
Простым способом перевернуть DataFrame в pandas является использование метода `T`. Этот метод транспонирует DataFrame, то есть меняет местами строки и столбцы. Применение этого метода к DataFrame позволяет получить новый DataFrame, в котором строки становятся столбцами, а столбцы - строками.
import pandas as pd
# Создание примера DataFrame
data = {'Страна': ['Россия', 'США', 'Китай'],
'Площадь': [17098242, 9629091, 9640011],
'Население': [144 million, 327 million, 1394 million]}
df = pd.DataFrame(data)
# Переворачиваем DataFrame
df_transposed = df.T
print(df_transposed)
Результат:
0 1 2
Страна Россия США Китай
Площадь 17098242 9629091 9640011
Население 144 million 327 million 1394 million
Как видно из примера, метод `T` транспонирует DataFrame, переворачивая строки и столбцы.
Метод `transpose`
Другой способ перевернуть DataFrame - использование метода `transpose`. Этот метод также транспонирует DataFrame, подобно методу `T`, и возвращает новый DataFrame с перевернутыми строками и столбцами.
import pandas as pd
# Создание примера DataFrame
data = {'Страна': ['Россия', 'США', 'Китай'],
'Площадь': [17098242, 9629091, 9640011],
'Население': [144 million, 327 million, 1394 million]}
df = pd.DataFrame(data)
# Переворачиваем DataFrame
df_transposed = df.transpose()
print(df_transposed)
Результат:
0 1 2
Страна Россия США Китай
Площадь 17098242 9629091 9640011
Население 144 million 327 million 1394 million
Метод `transpose` также транспонирует DataFrame и меняет местами строки и столбцы.
Использование функции `pivot`
Кроме методов `T` и `transpose`, можно использовать функцию `pivot`, чтобы перевернуть DataFrame на основе определенных столбцов и значений столбцов.
import pandas as pd
# Создание примера DataFrame
data = {'Страна': ['Россия', 'Россия', 'США', 'США'],
'Год': [2010, 2020, 2010, 2020],
'ВВП': [1.52 trillion, 1.47 trillion, 14.72 trillion, 21.43 trillion]}
df = pd.DataFrame(data)
# Переворачиваем DataFrame
df_pivoted = df.pivot(index='Страна', columns='Год', values='ВВП')
print(df_pivoted)
Результат:
Год 2010 2020
Страна
Россия 1.52 trillion 1.47 trillion
США 14.72 trillion 21.43 trillion
Функция `pivot` позволяет перевернуть DataFrame, используя столбцы `Страна`, `Год` и `ВВП`. Результатом является новый DataFrame, в котором значения столбца `ВВП` разделены по годам для каждой страны.