Кумулятивная элементная сумма Python PolarsPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Кумулятивная элементная сумма Python Polars

Сообщение Anonymous »

У меня есть вектор веса: < /p>

Код: Выделить всё

weight_vec = pl.Series("weights", [0.125, 0.0625, 0.03125])
, а также DataFrame, содержащий до m переменных. Для простоты у нас будет только две переменные: < /p>

Код: Выделить всё

df = pl.DataFrame(
{
"row_index": [0, 1, 2, 3, 4],
"var1": [1, 2, 3, 4, 5],
"var2": [6, 7, 8, 9, 10],
}
)
< /code>
Размер (количество наблюдений) для этих переменных может быть очень большим (десятки миллионов строк). < /p>
Я хотел бы: < /p>
[list]
[*]  Для каждого переменного и каждую наблюдение x_i, где я есть nd index [0, 4] Sumproduct всех прошлых значений n 
s x_i (включая текущее значение [x_i, ... x_i+n-1]) и вектор веса. n - длина данного вектора веса, а n варьируется для различного определения вектора веса. Когда индекс строк оценивает и заканчивается (например, максимальный индекс - индекс строки + 1 Все значения будут назначены. Нет.

[*] Мы можем предположить, что высота данных данных всегда больше или равна длине веса вектора, чтобы получить, по крайней мере, один допустимый результат. /> < /ul>
Полученный DataFrame должен выглядеть следующим образом: < /p>
shape: (5, 3)
┌───────────┬─────────┬─────────┐
│ row_index ┆ var1 ┆ var2 │
│ --- ┆ --- ┆ --- │
│ i64 ┆ f64 ┆ f64 │
╞═══════════╪═════════╪═════════╡
│ 0 ┆ 0.34375 ┆ 1.4375 │
│ 1 ┆ 0.5625 ┆ 1.65625 │
│ 2 ┆ 0.78125 ┆ 1.875 │
│ 3 ┆ null ┆ null │
│ 4 ┆ null ┆ null │
└───────────┴─────────┴─────────┘
< /code>
Numeric Caldulations < /strong>: < /p>

x_0_var1: (0,125 * 1 + 0,0625 * 2 + 0,03125 * 3 = 0,34375) < /li>
x_2_var2: 0,125) < /li>
x_2_var2: 0,125) < /li>
x_2_var2: 0,125) < /li>
x_2_var2: 0,34375) < /li>
x_2125 * 0,03125 * 10 = 1,875)
[/list]
Я ищу эффективную память, векторизованную полярную работу для достижения таких результатов.


Подробнее здесь: https://stackoverflow.com/questions/794 ... hon-polars
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

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

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Кумулятивная элементная сумма Python Polars
    Anonymous » » в форуме Python
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Кумулятивная элементная сумма Python Polars
    Anonymous » » в форуме Python
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Кумулятивная элементная сумма Python Polars
    Anonymous » » в форуме Python
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Кумулятивная элементная сумма Python Polars
    Anonymous » » в форуме Python
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Горизонтальная кумулятивная сумма + ненужная ошибка в полярах
    Anonymous » » в форуме Python
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»