Трудности манипуляции с таблицами с Pandas Pandas

Я даю себе крутой курс использования python и pandas для хруста данных. Я, наконец, устал от использования электронных таблиц и хотел чего-то более гибкого, чем R, поэтому я решил отбросить это. Это действительно гладкий интерфейс, и у меня с ним вспыхивает взрыв. Однако, исследуя различные трюки, я не смог найти только чит-лист основных функций электронных таблиц, особенно в отношении добавления формул к новым столбцам в кадрах данных, которые ссылаются на другие столбцы.

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

Пример таблицы Pandas

Если вы хотите увидеть таблицу для себя, нажмите здесь .

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

table['NewColumn']=(table['given_column']+magic-code-that-I-don't-know).astype(float-or-int-or-whatever) 

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

Спасибо заранее.

В общем, вы хотите думать о векторизованных операциях над столбцами вместо операций над конкретными ячейками.

Например, если у вас есть столбец data , и вы хотите, чтобы другой столбец был тем же, но с каждым значением, умноженным на 3, вы могли бы сделать это двумя основными способами. Первая – операция «по ячейке».

 df['data_prime'] = df['data'].apply(lambda x: 3*x) 

Второй – это векторизованный способ:

 df['data_prime'] = df['data'] * 3 

Итак, столбец по столбцу в вашей таблице:

Count (вы можете добавить 1 к правой стороне, если хотите, чтобы она начиналась с 1 вместо 0):

 df['count'] = pandas.Series(range(len(df)) 

Общая сумма :

 df['running total'] = df['data'].cumsum() 

Отличие от скаляра (установите скаляр в определенное значение в вашем df, если хотите):

 df['diff'] = scalar - df['data'] 

Скользящее среднее :

 df['moving average'] = df['running total'] / df['count'].astype('float') 

Основная формула из вашей таблицы :

Думаю, вам этого достаточно, по своему усмотрению.

Если утверждение :

 df['new column'] = 0 mask = df['data column'] >= 3 df.loc[mask, 'new column'] = 1 
  • Может ли панды использовать столбцы в качестве индекса?
  • Слияние таблиц разных размеров по столбцу Python
  • Как писать на существующих файлах excel без потери предыдущей информации с помощью python?
  • Условное форматирование для частичных дубликатов в Pandas и Excel
  • Дайте название в dataframe pandas, который экспортирует в excel
  • Сохранить словарь нескольких строк в Excel
  • Могу ли я создать словарь из файла excel (а не CSV) в python3?
  • 'latin-1' кодек не может кодировать символ u '\ u2014' в позиции 23: порядковый номер не в диапазоне (256)
  • pandas redefine isnull игнорировать 'NA'
  • Xlsxwriter в пандах и вне локализации панд
  • как управлять поиском по нескольким наборам данных
  • Interesting Posts

    Найти число каждого типа влево в месяц (Excel)

    имя формы меняется все время, я не могу ее найти

    Суммирование и подсчет значений по группам, где имя группы отображается один раз для каждой группы

    Удалить #NUM Ошибка макроса из рабочего листа в книгу

    Удалите строку, начинающуюся с определенной строки, Excel VBA

    Каков наилучший способ создания файла Excel с помощью ColdFusion?

    Скопировать xml-карту из одной книги в другую

    Скопировать всю строку на другой лист

    Python или SQL: заполнение формы excel (несколько раз и сохранение выходов) из другой таблицы

    Как вы переходите от одного столбца к следующему в цикле?

    Использование макросов Excel в XLS и XLSX

    Сценарий VBA для добавления ярлыков для превосходной пузырьковой диаграммы

    Как SUMIF имеет несколько столбцов inverval и только один столбец для суммирования

    Импорт CSV с использованием проблемы с загрузкой LOAD DATA INFILE

    Ошибка выполнения «5» неверный вызов или аргумент процедуры: найдите конкретный текст, используя символы «Поиск / извлечение» после первых 16 символов, используя

    Давайте будем гением компьютера.