pytimetk
时间序列分析更简单、更快速、更有趣。Pytimetk。
介绍pytimetk:为所有人简化时间序列分析
时间序列分析在许多领域都是基础,从商业预测到科学研究。虽然Python生态系统提供了像pandas
这样的工具,但它们有时可能过于冗长,且并非针对所有操作进行了优化,尤其是在复杂的基于时间的聚合和可视化方面。
这就是pytimetk的用武之地。pytimetk
融合了易用性和计算效率,大大简化了时间序列操作和可视化的过程。通过利用polars
后端,你可以体验到从3倍到惊人的3500倍的速度提升。让我们深入比较分析。
特性/属性 | pytimetk | pandas (+matplotlib) |
---|---|---|
速度 | 🚀 快3到3500倍 | 🐢 标准 |
代码简洁性 | 🎉 简洁、可读的语法 | 📜 常常冗长 |
plot_timeseries() | 🎨 2行代码,无需自定义 | 🎨 16行代码,需要自定义 |
summarize_by_time() | 🕐 2行代码,速度快13.4倍 | 🕐 6行代码,2个for循环 |
pad_by_time() | ⛳ 2行代码,填补时间序列中的空缺 | ❌ 无对应功能 |
anomalize() | 📈 2行代码,检测并修正异常 | ❌ 无对应功能 |
augment_timeseries_signature() | 📅 1行代码,包含所有日历特征 | 🕐 29行dt 提取器代码 |
augment_rolling() | 🏎️ 速度快10到3500倍 | 🐢 滚动操作速度慢 |
从表格中可以看出,pytimetk不仅仅是速度快;它还简化了你的代码库。例如,summarize_by_time() 将pandas 中6行的双重for循环操作简化为简洁的2行操作。而使用polars 引擎,可以获得比pandas 快13.4倍的结果! |
同样,plot_timeseries()
大大简化了绘图过程,将通常需要16行matplotlib
代码的内容封装成pytimetk中仅2行的命令,而不牺牲定制性或质量。使用plotly
和plotnine
引擎,你可以用几行代码创建交互式图表和精美的静态可视化。
对于日历特征,pytimetk提供了augment_timeseries_signature()
,减少了30多行pandas
dt提取。对于滚动特征,pytimetk提供了augment_rolling()
,速度比pandas
快10倍到3500倍。它还提供pad_by_time()
来填补时间序列数据中的空缺,以及anomalize()
来检测和纠正时间序列数据中的异常。
加入时间序列分析的革命。减少代码复杂性,提高生产力,利用pytimetk为你的工作流程带来的速度。
在我们的pytimetk主页探索更多。
安装
使用pip
安装最新稳定版的pytimetk
:
pip install pytimetk
或者你可以安装开发版本:
pip install git+https://github.com/business-science/pytimetk.git
快速开始:
这是测试summarize_by_time
函数的简单代码:
import pytimetk as tk
import pandas as pd
df = tk.datasets.load_dataset('bike_sales_sample')
df['order_date'] = pd.to_datetime(df['order_date'])
df \
.groupby("category_2") \
.summarize_by_time(
date_column='order_date',
value_column= 'total_price',
freq = "MS",
agg_func = ['mean', 'sum'],
engine = "polars"
)
文档
从pytimetk文档开始
开发者(贡献者):安装
要使用Poetry安装pytimetk
,请按以下步骤操作:
1. 前提条件
确保你的系统上安装了Python 3.9或更高版本。
2. 安装Poetry
要安装Poetry,你可以使用Poetry提供的官方安装程序。不要使用pip。
3. 克隆仓库
从GitHub克隆pytimetk
仓库:
git clone https://github.com/business-science/pytimetk
4. 安装依赖
使用Poetry安装包及其依赖:
poetry install
或者你可以使用poetry创建一个虚拟环境并安装依赖
poetry shell
poetry install
🏆 更多即将到来...
我们正处于开发的早期阶段。但是,Python中pytimetk
的潜力已经显而易见。🐍
- 请在GitHub上给我们⭐ 点赞(只需2秒钟,对我们意义重大)。
- 如需提出请求,请查看我们的项目路线图 GH Issue #2。您可以在那里提出请求。
- 想要贡献?请查看我们的贡献指南。