Python — Unpivot Dataframe

У меня есть таблица, индексированная по дате и времени, которая имеет несколько слоев (концентратор и интервал доставки) для каждой даты и времени:

Дата и время Центр Интервал доставки Цена расчетного пункта 2024-01-01 01:00:00 Хьюстон Хаб 1 13.35 2024-01-01 01:00:00 Хьюстон Хаб 2 16.60 2024-01-01 01:00:00 Хьюстон Хаб 3 17.15 2024-01-01 01:00:00 Хьюстон Хаб 4 23.61 2024-01-01 01:00:00 Северный узел 1 13.35 2024-01-01 01:00:00 Северный узел 2 11.41 2024-01-01 01:00:00 Северный узел 3 32.11 2024-01-01 01:00:00 Северный узел 4 16.60

В идеале я хотел бы создать новый столбец для всех уникальных записей в столбце «Хаб» и усреднить все «Цены расчетной точки», которые совпадают по дате и времени для одного и того же «Хаба». Как лучше всего это сделать? Я пытаюсь сделать так, чтобы это было примерно так:

Дата и время Интервал доставки Хьюстон Хаб Северный узел 2024-01-01 01:00:00 Н/Д (в среднем) 17,68 18.37

Извините, я потратил на это много времени и я новичок. Спасибо!

Я пытался динамически создать новый фрейм данных для каждого из уникальных концентраторов, но кто-то рекомендовал не делать этого, и я все равно не смог заставить усреднение работать.

Кстати, добро пожаловать в Stack Overflow! Посмотрите тур и посмотрите Как спрашивать, где вы найдете советы, например, начать с собственного исследования и написать хороший заголовок.

wjandrea 22.07.2024 23:10

Этот вопрос похож на: Как я могу повернуть фрейм данных?. Если вы считаете, что это другое, отредактируйте вопрос, поясните, чем он отличается и/или как ответы на этот вопрос не помогают решить вашу проблему.

ouroboros1 23.07.2024 08:01
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
3
58
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я считаю, что это может быть так же просто, как:

df.pivot_table(
index = "Datetime",
columns = "Hub",
values = "Settlement Point Price",
aggfunc = "mean")

документы для сводных таблиц pandas находятся здесь: https://pandas.pydata.org/docs/reference/api/pandas.pivot_table.html

Другие вопросы по теме

Похожие вопросы

Разница между двумя лучшими временными метками по группам в Pandas
TensorFlow — ValueError: аргумент `output` должен иметь ранг (ndim) `target.ndim - 1`
Выполнение обновления переменной в цикле API
Могу ли я превратить столбец Pandas Dataframe, содержащий строку jJSON, в дополнительные столбцы и строки?
Как создать сетку на основе списка координат?
Как я могу помешать регистратору перегонного куба деактивировать мои собственные регистраторы после использования команды перегонного куба в коде?
Строка Python: извлеките дублированную и случайно объединенную подстроку
Как исправить этот Reg ex, чтобы он соответствовал словам, написанным через дефис, где последний сегмент заканчивается на согласную, отличную от буквы m?
Нужно ли мне использовать распознавание именованных объектов (NER) при токенизации?
Построение звездных карт в экваториальной системе координат