Skip to content

Commit b32238d

Browse files
committed
support polars 1.0
1 parent 17f381a commit b32238d

File tree

5 files changed

+31
-13
lines changed

5 files changed

+31
-13
lines changed

environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ dependencies:
3030
- fugue[ray]
3131
- lightgbm_ray
3232
- nbdev
33-
- polars
33+
- polars[numpy]>=0.0.0rc0
3434
- ray<2.8
3535
- triad==0.9.1
3636
- utilsforecast>=0.0.27

local_environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,5 @@ dependencies:
2424
- pip:
2525
- datasetsforecast
2626
- nbdev
27-
- polars
27+
- polars[numpy]>=0.0.0rc0
2828
- utilsforecast>=0.0.27

mlforecast/utils.py

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -71,11 +71,18 @@ def generate_daily_series(
7171
"id_" + series["unique_id"].astype(str).str.rjust(n_digits, "0")
7272
).astype("category")
7373
else:
74-
series = series.with_columns(
75-
("id_" + pl.col("unique_id").cast(pl.Utf8).str.rjust(n_digits, "0"))
76-
.alias("unique_id")
77-
.cast(pl.Categorical)
78-
)
74+
try:
75+
series = series.with_columns(
76+
("id_" + pl.col("unique_id").cast(pl.Utf8).str.pad_start(n_digits, "0"))
77+
.alias("unique_id")
78+
.cast(pl.Categorical)
79+
)
80+
except AttributeError:
81+
series = series.with_columns(
82+
("id_" + pl.col("unique_id").cast(pl.Utf8).str.rjust(n_digits, "0"))
83+
.alias("unique_id")
84+
.cast(pl.Categorical)
85+
)
7986
return series
8087

8188
# %% ../nbs/utils.ipynb 16

nbs/utils.ipynb

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -118,11 +118,18 @@
118118
" 'id_' + series['unique_id'].astype(str).str.rjust(n_digits, '0')\n",
119119
" ).astype('category')\n",
120120
" else:\n",
121-
" series = series.with_columns(\n",
122-
" ('id_' + pl.col('unique_id').cast(pl.Utf8).str.rjust(n_digits, '0'))\n",
123-
" .alias('unique_id')\n",
124-
" .cast(pl.Categorical)\n",
125-
" )\n",
121+
" try:\n",
122+
" series = series.with_columns(\n",
123+
" ('id_' + pl.col('unique_id').cast(pl.Utf8).str.pad_start(n_digits, '0'))\n",
124+
" .alias('unique_id')\n",
125+
" .cast(pl.Categorical)\n",
126+
" )\n",
127+
" except AttributeError:\n",
128+
" series = series.with_columns(\n",
129+
" ('id_' + pl.col('unique_id').cast(pl.Utf8).str.rjust(n_digits, '0'))\n",
130+
" .alias('unique_id')\n",
131+
" .cast(pl.Categorical)\n",
132+
" )\n",
126133
" return series"
127134
]
128135
},
@@ -136,6 +143,8 @@
136143
"text/markdown": [
137144
"---\n",
138145
"\n",
146+
"[source](https://github.com/Nixtla/mlforecast/blob/main/mlforecast/utils.py#L16){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n",
147+
"\n",
139148
"### generate_daily_series\n",
140149
"\n",
141150
"> generate_daily_series (n_series:int, min_length:int=50,\n",
@@ -163,6 +172,8 @@
163172
"text/plain": [
164173
"---\n",
165174
"\n",
175+
"[source](https://github.com/Nixtla/mlforecast/blob/main/mlforecast/utils.py#L16){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n",
176+
"\n",
166177
"### generate_daily_series\n",
167178
"\n",
168179
"> generate_daily_series (n_series:int, min_length:int=50,\n",

settings.ini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ spark_requirements = fugue pyspark>=3.3 lightgbm xgboost
2222
aws_requirements = fsspec[s3]
2323
gcp_requirements = fsspec[gcs]
2424
azure_requirements = fsspec[adl]
25-
dev_requirements = black datasetsforecast matplotlib mypy nbdev polars prophet pyarrow ruff shap statsmodels
25+
dev_requirements = black datasetsforecast matplotlib mypy nbdev polars[numpy]>=0.0.0rc0 prophet pyarrow ruff shap statsmodels
2626
nbs_path = nbs
2727
doc_path = _docs
2828
recursive = True

0 commit comments

Comments
 (0)