PYTHONOMANIA
273 subscribers
195 photos
3 videos
1 file
616 links
Откройте для себя мир Python в PYTHONOMANIA!

Идеально подходит как для начинающих, так и для опытных разработчиков. Присоединяйтесь к нам, чтобы достичь совершенства в Python!

Сайт: https://pythonomania.github.io/
Download Telegram
📱Prophet.

Prophet — это инструмент для прогнозирования временных рядов, основанный на аддитивной модели.

🔹Он учитывает:

🔘Нелинейные тренды.

🔘Сезонность (годовую, недельную и дневную).

🔘Эффекты праздников.

🔻Основные особенности:

✔️Идеален для данных с ярко выраженной сезонностью и длительной историей.

✔️Устойчив к пропускам данных, резким изменениям трендов и выбросам.

✔️Доступен как open-source (от команды Facebook Core Data Science).

#Python #DataScience #MachineLearning #TimeSeries #Forecasting

📱Ссылка на репозиторий:
https://github.com/facebook/prophet
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍3
📱STUMPY.

STUMPY
— это мощная и масштабируемая библиотека Python, которая вычисляет матрицу профиля временного ряда. Проще говоря, она автоматически находит ближайших соседей для каждой подпоследовательности, помогая решать сложные задачи анализа временных рядов.

❓Что можно делать с STUMPY?

🔘Поиск шаблонов (мотивов) — обнаружение повторяющихся последовательностей.

🔘Выявление аномалий — нахождение неожиданных (discord) сегментов.

🔘Обнаружение shapelet-фич — ключевых характеристик временных рядов.

🔘Семантическая сегментация — разбиение временного ряда на осмысленные части.

🔘Обработка потоковых данных — анализ данных в реальном времени.

🔘Быстрое приближенное вычисление матричных профилей.

🔘Создание временных цепочек — выявление последовательностей паттернов.

🔘Выбор оптимального окна анализа с pan matrix profiles.

#️⃣Пример использования STUMPY для 1D временных рядов:

import stumpy
import numpy as np

if __name__ == "__main__":
your_time_series = np.random.rand(10000) # Генерация случайного временного ряда
window_size = 50 # Размер окна для поиска паттернов

matrix_profile = stumpy.stump(your_time_series, m=window_size) # Вычисление матричного профиля


❓Что делает этот код?

🔘Генерирует случайный временной ряд из 10 000 точек.

🔘Задает размер окна (длину подпоследовательностей) в 50 точек.

🔘Вычисляет матрицу профиля, которая поможет находить паттерны, аномалии и другие ключевые элементы.

#Python #STUMPY #TimeSeries #DataScience #MachineLearning #AnomalyDetection #PatternMining #BigData

📱Ссылка на репозиторий:
https://github.com/TDAmeritrade/stumpy
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍3🔥1
📱NVIDIA Earth2Studio.

NVIDIA Earth2Studio — это Python‑фреймворк для быстрого запуска и компоновки AI‑моделей погоды и климата (прогноз, диагностика, статистика) через единую API поверх разных моделей и источников данных.

❓Что это такое:

🔘Набор модульных компонентов: прогностические модели, диагностические модели, источники данных, IO‑бекенды, методы возмущений, метрики.

🔘Работает как «инференс‑конвейер»: вы собираете pipeline из модели, источника данных и бекенда записи и запускаете прогноз одной функцией run(...).

❤Установка и быстрый старт:

🔘Установка:
  pip install earth2studio[dlwp]

После этого можно сделать детерминированный прогноз в несколько строк (пример с DLWP, GFS и NetCDF4Backend).

🔘Для других моделей могут понадобиться дополнительные зависимости; детали — в install guide в документации.

🔻Модели и данные:

🔘Прогностические модели: GraphCast (Small/Operational), Pangu (3h/6h/24h), Aurora, FuXi, AIFS, AIFS Ensemble, StormCast, SFNO, DLESyM и др., с разными разрешениями и шагом интегрирования, глобальные и региональные.

🔘Диагностические модели: осадки, солнечная радиация, шквалы ветра, тропические циклоны, генеративные климат‑модели (CBottle, CorrDiff и вариации).

🔘Источники данных: операционные модели (GFS, HRRR, IFS), реанализа (ERA5 через ARCO/CDS, WeatherBench2, NCAR_ERA5), осадочные и наблюдательные наборы (IMERG, ISD, MRMS), плюс AI‑климат (cBottle).

❗️Лицензия и важные нюансы:

🔘Сам Earth2Studio распространяется под Apache 2.0.

🔘Но это интерфейс к сторонним моделям/датасетам: лицензии на конкретные чекпойнты и данные принадлежат их авторам, права на скачивание/использование/распространение нужно проверять по ссылкам в API‑доках.

#Earth2Studio #NVIDIA #Python #WeatherAI #ClimateAI #DeepLearning #GraphCast #Pangu #AIFS #GFS #ERA5 #Zarr #NetCDF #Xarray #Forecasting #TimeSeries #DataScience

📱Ссылка на репозиторий:
https://github.com/NVIDIA/earth2studio
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍33
📱PyTrendy.

PyTrendy —
это надежное решение для поиска и анализа трендов во временных рядах.

В отличие от большинства других библиотек для тренд-детекшена, PyTrendy устойчива к сильному шуму и плоским («флэт») участкам данных. Она с высокой точностью определяет как плавные (gradual), так и резкие (abrupt) изменения графиков, претендуя на звание лучшего пакета для поиска трендов на Python.

🔹Основные возможности:

🔘Устойчивость к шуму: Отлично фильтрует случайные колебания, не ломая общую картину.

🔘Распознавание боковиков: Четко отделяет реальное движение вверх или вниз от горизонтального коридора (Flat).

🔘Высокая точность: Одинаково хорошо ловит как затяжные плавные тренды, так и внезапные скачки.

🔘Визуализация: Автоматически строит наглядные графики с выделенными зонами трендов.

🚀Быстрый старт:

pip install pytrendy


В коде инструмент используется буквально в несколько строк:

import pytrendy as pt

# Загружаем тестовые данные
df = pt.load_data('series_synthetic')

# Запускаем поиск трендов
results = pt.detect_trends(df, date_col='date', value_col='gradual', plot=True)
results.print_summary()


В консоли вы получите структурированный и понятный отчет:

Detected: - 3 Uptrends. - 3 Downtrends. - 3 Flats. - 0 Noise.

The best detected trend is Down between dates 2025-05-09 - 2025-06-17


Помимо краткой сводки, библиотека возвращает подробный датафрейм, где для каждого найденного участка указаны направление (Up/Down/Flat), даты начала и конца, длительность в днях, общее изменение значения (total_change) и класс тренда.

#Python #TimeSeries #DataScience #Analytics #PyTrendy #DataEngineering #OpenSource #MachineLearning #АнализДанных

📱Ссылка на репозиторий:
https://github.com/RussellSB/pytrendy
Please open Telegram to view this post
VIEW IN TELEGRAM
5⚡4👍3
📱NumCircBuf.

NumCircBuf —
это высокопроизводительная библиотека для Python (реализованная на Cython), предоставляющая численные циклические буферы (circular buffers) со статистическими аккумуляторами, работающими за константное время O(1).

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

🔹Главные фичи и преимущества:

🔘Бешеная производительность: За счет обхода стандартного оверхеда Python/NumPy библиотека работает в 500–1500 раз быстрее, чем collections.deque или обычные списки при массовом добавлении данных (extend), и до 10 раз быстрее кольцевых буферов на чистом NumPy. Тесты показывают пропускную способность до 73 ГБ/с!

🔘Статистика за O(1): Специализированные буферы мгновенно выдают скользящее среднее или среднеквадратичное значение без необходимости каждый раз пересчитывать все элементы в окне.

🔘Zero-Copy представления: Метод .view() возвращает логическое read-only представление буфера без копирования данных в памяти. Оно ведет себя в коде точно так же, как стандартный одномерный NumPy-массив.

🔘Строгая типизация и безопасность: Полная поддержка типов данных fp32, fp64, int32, int64, uint32 и uint64. Привычный API с методами append, extend и clear позволяет внедрить библиотеку как drop-in замену.

🛠Основные типы буферов в комплекте:

🔘OverwriteCircBuffer — оптимизирован для сценариев с высокой интенсивностью записи, где старые данные автоматически заменяются новыми.

🔘BlockingCircBuffer — потокобезопасный блокирующий буфер для многопоточных приложений (паттерн Producer/Consumer). Писатель засыпает, если буфер полон, а читатель ждет, если в буфере пусто.

🔘RunningMeanBuffer и RunningMeanSqBuffer — утилиты со встроенным O(1) расчетом среднего и среднеквадратичного значений с защитой от накопления погрешности округления (floating-point drift).

🔘IntegratedGatedBuffer — узкоспециализированный буфер для расчета интегральной стробированной громкости звука (по международному стандарту ITU-R BS.1770).

📦Установка:

pip install numcircbuf


#Python #Cython #NumPy #DataScience #SignalProcessing #TimeSeries #Performance #DevTools #OpenSource #Оптимизация

📱Ссылка на репозиторий:
https://github.com/basimali-ai/NumCircBuf
Please open Telegram to view this post
VIEW IN TELEGRAM
13👍11
📱Pyhctsa.

Pyhctsa
- это библиотека для Python, предназначенная для масштабного сравнительного анализа временных рядов (Highly Comparative Time-Series Analysis) и автоматического извлечения сотен математических и статистических признаков (features).

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

🔹Ключевые возможности:

🔘Сотни методов анализа: Включает классические статистические тесты, алгоритмы нелинейной динамики (включая адаптации пакета TISEAN), вейвлет-анализ и узкоспециализированные функции (например, вариабельность сердечного ритма / HRV).

🔘Готовность к ML: Результаты извлечения автоматически собираются в привычный pandas.DataFrame размерности $N \times F$ (где $N$ — число временных рядов, а $F$ — вектор признаков).

🔘Многопоточность из коробки: Извлечение сотен признаков ресурсоемко, поэтому встроенный LocalDistributor позволяет легко распараллелить расчеты по всем физическим ядрам процессора.

🔘Любая длина сигналов: Входные временные ряды в одной выборке не обязательно должны быть одинаковой длины.

🔘Гибкая конфигурация: Можно рассчитать весь пул метрик сразу, выбрать кастомный профиль через YAML-файл конфигурации или вызывать отдельные функции изолированно.

🔻Пример использования:

from pyhctsa.calculator import FeatureCalculator
from pyhctsa.distribute import LocalDistributor
from pyhctsa.utils import get_dataset

# Загрузка данных
data = get_dataset()

# Инициализация калькулятора и настройка параллельных вычислений на 4 ядра
calc = FeatureCalculator()
dist = LocalDistributor(n_workers=4)

# Извлечение всех признаков в DataFrame
features_df = calc.extract(data, distributor=dist)
print(features_df.head())


📦Установка:

pip install pyhctsa


✅Проект распространяется под открытой лицензией GNU GPL v3.

#Python #TimeSeries #DataScience #MachineLearning #FeatureExtraction #Analytics #OpenSource #DevTools

📱Ссылка на репозиторий:
https://github.com/DynamicsAndNeuralSystems/pyhctsa
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥4👍21