Как я могу предотвратить этот код в полярах, чтобы потреблять всю оперативную память на моем компьютере?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как я могу предотвратить этот код в полярах, чтобы потреблять всю оперативную память на моем компьютере?

Сообщение Anonymous »

Вопрос: < /h3>
Я использую поляры для расчета показателей академической эффективности для учащихся в разных прошлых и текущих терминах. Моя текущая реализация включает в себя переход через каждый термин, что приводит к чрезмерному использованию памяти (до 32 ГБ оперативной памяти) и производительности, которая не значительно превосходит панд. Я ищу советы по оптимизации кода для повышения эффективности памяти и скорости обработки.), окончательный статус курса (

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

COURSE_STATUS
), кредиты одобрены/неполные/неполные и т. Д.
[*] studive_performance: фиксирует показатели эффективности для студентов в учебный период (например, приостановка, академическое испытательное срок).
[*] enrolled_students . /> Каждый академический период () кодируется численно (например, 202310, 202320) с особыми условиями в зависимости от двух последних цифр (10 или 20).

Цель:
Рассчитайте синтетические показатели производительности, которые отражают исторические данные во время, как имитируют, как имитируют, как они смоделируют, что смелька будет сниматься в том, как наметрики будут выглядеть, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют, что они смоделируют. Периоды. /> < /ul>
Идентифицированные проблемы: < /h3>

Высокое использование памяти (32 ГБ оперативной памяти полностью потребляется). < /li>
Производительность, аналогичная или хуже, чем Pandas, несмотря на типичную эффективность Polars. />
Оптимизируйте потребление памяти значительно. /> Функция Расчет метрик за период: < /strong> < /p>

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

def calculate_performance_criteria(grades_history: pl.LazyFrame,
enrolled_students: pl.LazyFrame,
student_performance: pl.LazyFrame,
period: int,
index_period: int,
undergrad_periods: list[int]) ->  pl.LazyFrame:

period_min = min(undergrad_periods[max(0, index_period - 3):index_period + 1])

accumulated_risk_summary = (
student_performance
.filter(pl.col("PERIOD") = period_min) &
(pl.col("PERIOD") 
 Конкретные запросы: < /h3>

 Как я могу рефакторировать эти расчеты, чтобы уменьшить след за памятью? Оптимизации здесь по -разному можно использовать?> 

Подробнее здесь: [url]https://stackoverflow.com/questions/79581760/how-can-i-prevent-this-code-in-polars-to-consume-all-the-ram-in-my-computer[/url]
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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