append |
|
|
bitwise_and |
|
|
bitwise_or |
|
|
bitwise_xor |
|
|
bitwise_count_ones |
|
Pointwise - not applicable |
bitwise_count_zeros |
|
Pointwise - not applicable |
bitwise_leading_ones |
|
Pointwise - not applicable |
bitwise_leading_zeros |
|
Pointwise - not applicable |
bitwise_trailing_ones |
|
Pointwise - not applicable |
bitwise_trailing_zeros |
|
Pointwise - not applicable |
cumulative_eval |
|
|
explode |
|
|
flatten |
|
|
map_batches |
|
|
map_elements |
|
Pointwise - not applicable |
sample |
|
|
shuffle |
|
|
cut |
|
Pointwise - not applicable |
qcut |
|
|
reshape |
|
|
rolling_mean |
|
|
rolling_sum |
|
|
rolling_max |
|
|
rolling_min |
|
|
rolling_median |
|
|
rolling_quantile |
|
|
rolling_std |
|
|
rolling_var |
|
|
rolling_skew |
|
|
rolling_kurtosis |
|
|
rolling_rank |
|
|
rolling_map |
|
|
rolling_mean_by |
|
|
rolling_sum_by |
|
|
rolling_max_by |
|
|
rolling_min_by |
|
|
rolling_median_by |
|
|
rolling_quantile_by |
|
|
rolling_std_by |
|
|
rolling_var_by |
|
|
rolling_rank_by |
|
|
agg_groups |
Deprecated in 1.35 https://docs.pola.rs/api/python/dev/reference/expressions/api/polars.Expr.agg_groups.html |
|
approx_n_unique |
#23211 |
|
unique_counts |
#23244 |
|
arg_max |
#23212 |
|
arg_min |
#23212 |
|
arg_sort |
#23212 |
|
arg_true |
#23284 |
|
arg_unique |
#23212 |
|
bottom_k_by |
#23213 |
|
top_k_by |
#23213 |
|
max_by |
#23224 |
|
min_by |
#23224 |
|
clip |
#23162 |
Pointwise - not applicable |
cot |
#23191 |
Pointwise - not applicable |
degrees |
#23210 |
Pointwise - not applicable |
radians |
#23210 |
Pointwise - not applicable |
log1p |
#23191 |
Pointwise - not applicable |
sign |
#23250 |
Pointwise - not applicable |
cum_count |
#23163 |
|
diff |
#23225 |
|
pct_change |
#23225 |
|
drop_nans |
#23165 |
|
entropy |
#23384 |
|
skew |
#23353 |
|
kurtosis |
#23353 |
|
extend_constant |
#23167 |
|
gather_every |
#23166 |
|
hash |
#23313 |
Pointwise - not applicable |
has_nulls |
#23168 |
|
is_empty |
#23170 |
|
is_close |
#23254 |
Pointwise - not applicable |
hist |
#23254 |
|
implode |
#23226 |
|
item |
#23226 |
|
index_of |
#23252 |
|
search_sorted |
#23252 |
|
interpolate |
|
|
interpolate_by |
|
|
mode |
#23226 |
|
product |
#23169 |
|
peak_max |
|
|
peak_min |
|
|
rechunk |
#23192 |
Pointwise - not applicable |
reinterpret |
#23210 |
Pointwise - not applicable |
to_physical |
#23313 |
Pointwise - not applicable |
repeat_by |
#23227 |
|
replace |
#23253 |
Pointwise - not applicable |
replace_strict |
#23253 |
Pointwise - not applicable |
reverse |
#23164 |
|
rle |
|
|
rle_id |
|
|
round_sig_figs |
#23250 |
Pointwise - not applicable |
truncate |
#23244 |
Pointwise - not applicable |
rolling (base time-indexed) |
|
|
quantile (interpolation="equiprobable") |
✅* |
|
rank (method="random") |
✅* |
|
over (mapping_strategy ∈ {join,explode}) |
✅* |
|
cum_sum (reverse=True) |
✅* #23164 |
|
cum_max (reverse=True) |
✅* #23164 |
|
cum_min (reverse=True) |
✅* #23164 |
|
cum_prod (reverse=True) |
✅* #23164 |
|
fill_null (strategy / limit=…) |
✅* |
|
forward_fill |
✅ |
|
backward_fill |
✅ |
|
all |
✅ |
|
any |
✅ |
|
std |
✅ |
|
var |
✅ |
|
median |
✅ |
|
sort |
✅ |
|
sort_by |
✅ |
|
gather |
✅ |
|
get |
✅ |
|
filter |
✅ |
|
where |
✅ |
|
shift |
✅ |
|
top_k |
✅ |
|
bottom_k |
✅ |
|
value_counts |
✅ |
|
is_duplicated |
✅ |
|
is_unique |
✅ |
|
is_first_distinct |
✅ |
|
is_last_distinct |
✅ |
|
str.extract_many |
|
Pointwise - not applicable |
str.find_many |
|
Pointwise - not applicable |
str.encode |
|
Pointwise - not applicable |
str.decode |
|
Pointwise - not applicable |
str.escape_regex |
#23171 |
Pointwise - not applicable |
str.extract_all |
|
Pointwise - not applicable |
str.normalize |
|
Pointwise - not applicable |
str.split |
|
Pointwise - not applicable |
str.explode |
|
|
str.to_decimal |
#23243 |
Pointwise - not applicable |
str.to_integer |
#23194 |
Pointwise - not applicable |
str.to_time |
|
Pointwise - not applicable |
str.contains |
✅* #23240 |
Pointwise - not applicable |
str.count_matches |
✅* #23243 |
Pointwise - not applicable |
str.extract |
✅* #23243 |
Pointwise - not applicable |
str.find |
✅* #23240 |
Pointwise - not applicable |
str.replace |
✅* |
Pointwise - not applicable |
str.replace_all |
✅* |
Pointwise - not applicable |
str.replace_many |
✅* |
Pointwise - not applicable |
str.slice |
✅* |
Pointwise - not applicable |
str.split_exact |
✅* |
Pointwise - not applicable |
str.strptime |
✅* |
Pointwise - not applicable |
str.to_date |
✅* |
Pointwise - not applicable |
str.to_datetime |
✅* |
Pointwise - not applicable |
str.strip_chars |
✅* |
Pointwise - not applicable |
str.strip_chars_start |
✅* |
Pointwise - not applicable |
str.strip_chars_end |
✅* |
Pointwise - not applicable |
str.head |
✅* #23240 |
Pointwise - not applicable |
str.tail |
✅* #23240 |
Pointwise - not applicable |
str.zfill |
✅* #23193 |
Pointwise - not applicable |
str.concat |
✅ |
|
str.join |
✅ |
|
dt.add_business_days |
|
Pointwise - not applicable |
dt.is_business_day |
|
Pointwise - not applicable |
dt.base_utc_offset |
|
Pointwise - not applicable |
dt.convert_time_zone |
#23424 |
Pointwise - not applicable |
dt.dst_offset |
|
Pointwise - not applicable |
dt.replace_time_zone |
#23424 |
Pointwise - not applicable |
dt.century |
#23153 |
Pointwise - not applicable |
dt.millennium |
#23154 |
Pointwise - not applicable |
dt.combine |
|
Pointwise - not applicable |
dt.time |
|
Pointwise - not applicable |
dt.date |
#23155 |
Pointwise - not applicable |
dt.datetime |
Deprecated since 0.20.4 https://docs.pola.rs/api/python/stable/reference/expressions/api/polars.Expr.dt.datetime.html |
Pointwise - not applicable |
dt.with_time_unit |
Deprecated since 0.20.5 https://docs.pola.rs/api/python/stable/reference/expressions/api/polars.Expr.dt.with_time_unit.html |
Pointwise - not applicable |
dt.days_in_month |
#23156 |
Pointwise - not applicable |
dt.quarter |
#23157 |
Pointwise - not applicable |
dt.round |
#23158 |
Pointwise - not applicable |
dt.offset_by |
|
Pointwise - not applicable |
dt.replace |
|
Pointwise - not applicable |
dt.total_days |
#18171 |
Pointwise - not applicable |
dt.total_hours |
#18171 |
Pointwise - not applicable |
dt.total_minutes |
#18171 |
Pointwise - not applicable |
dt.total_seconds |
#18171 |
Pointwise - not applicable |
dt.total_milliseconds |
#18171 |
Pointwise - not applicable |
dt.total_microseconds |
#18171 |
Pointwise - not applicable |
dt.total_nanoseconds |
#18171 |
Pointwise - not applicable |
dt.truncate (unit > day / non-1<unit>) |
✅* |
Pointwise - not applicable |
list.agg |
|
Pointwise - not applicable |
list.all |
|
Pointwise - not applicable |
list.any |
|
Pointwise - not applicable |
list.eval |
|
Pointwise - not applicable |
list.filter |
|
Pointwise - not applicable |
list.n_unique |
|
Pointwise - not applicable |
list.reverse |
|
Pointwise - not applicable |
list.unique |
|
Pointwise - not applicable |
list.explode |
|
|
list.arg_max |
|
Pointwise - not applicable |
list.arg_min |
|
Pointwise - not applicable |
list.concat |
|
Pointwise - not applicable |
list.contains |
|
Pointwise - not applicable |
list.count_matches |
|
Pointwise - not applicable |
list.diff |
|
Pointwise - not applicable |
list.drop_nulls |
|
Pointwise - not applicable |
list.first |
|
Pointwise - not applicable |
list.gather |
|
Pointwise - not applicable |
list.gather_every |
|
Pointwise - not applicable |
list.get |
|
Pointwise - not applicable |
list.head |
|
Pointwise - not applicable |
list.join |
|
Pointwise - not applicable |
list.last |
|
Pointwise - not applicable |
list.len |
|
Pointwise - not applicable |
list.max |
|
Pointwise - not applicable |
list.mean |
|
Pointwise - not applicable |
list.median |
|
Pointwise - not applicable |
list.min |
|
Pointwise - not applicable |
list.sample |
|
Pointwise - not applicable |
list.set_difference |
|
Pointwise - not applicable |
list.set_intersection |
|
Pointwise - not applicable |
list.set_symmetric_difference |
|
Pointwise - not applicable |
list.set_union |
|
Pointwise - not applicable |
list.shift |
|
Pointwise - not applicable |
list.slice |
|
Pointwise - not applicable |
list.sort |
|
Pointwise - not applicable |
list.std |
|
Pointwise - not applicable |
list.sum |
|
Pointwise - not applicable |
list.tail |
|
Pointwise - not applicable |
list.to_struct |
|
Pointwise - not applicable |
list.var |
|
Pointwise - not applicable |
list.to_array |
|
Pointwise - not applicable |
arr.arg_max |
|
Pointwise - not applicable |
arr.arg_min |
|
Pointwise - not applicable |
arr.contains |
|
Pointwise - not applicable |
arr.count_matches |
|
Pointwise - not applicable |
arr.explode |
|
|
arr.first |
|
Pointwise - not applicable |
arr.get |
|
Pointwise - not applicable |
arr.join |
|
Pointwise - not applicable |
arr.last |
|
Pointwise - not applicable |
arr.len |
|
Pointwise - not applicable |
arr.max |
|
Pointwise - not applicable |
arr.mean |
|
Pointwise - not applicable |
arr.median |
|
Pointwise - not applicable |
arr.min |
|
Pointwise - not applicable |
arr.std |
|
Pointwise - not applicable |
arr.sum |
|
Pointwise - not applicable |
arr.var |
|
Pointwise - not applicable |
arr.to_list |
|
Pointwise - not applicable |
arr.to_struct |
|
Pointwise - not applicable |
arr.agg |
|
Pointwise - not applicable |
arr.all |
|
Pointwise - not applicable |
arr.any |
|
Pointwise - not applicable |
arr.eval |
|
Pointwise - not applicable |
arr.head |
|
Pointwise - not applicable |
arr.n_unique |
|
Pointwise - not applicable |
arr.reverse |
|
Pointwise - not applicable |
arr.shift |
|
Pointwise - not applicable |
arr.slice |
|
Pointwise - not applicable |
arr.sort |
|
Pointwise - not applicable |
arr.tail |
|
Pointwise - not applicable |
arr.unique |
|
Pointwise - not applicable |
struct.with_fields |
|
Pointwise - not applicable |
struct.unnest |
|
|
cat.get_categories |
|
|
cat.len_bytes |
|
Pointwise - not applicable |
cat.len_chars |
|
Pointwise - not applicable |
cat.slice |
|
Pointwise - not applicable |
cat.starts_with |
|
Pointwise - not applicable |
cat.ends_with |
|
Pointwise - not applicable |
bin.contains |
|
Pointwise - not applicable |
bin.starts_with |
|
Pointwise - not applicable |
bin.ends_with |
|
Pointwise - not applicable |
bin.get |
|
Pointwise - not applicable |
bin.size |
|
Pointwise - not applicable |
bin.encode |
|
Pointwise - not applicable |
bin.reinterpret |
|
Pointwise - not applicable |
bin.decode |
|
Pointwise - not applicable |
bin.head |
|
Pointwise - not applicable |
bin.tail |
|
Pointwise - not applicable |
bin.slice |
|
Pointwise - not applicable |
name.map_fields |
|
Pointwise - not applicable |
pl.sum_horizontal |
#23427 |
Pointwise - not applicable |
pl.min_horizontal |
#23427 |
Pointwise - not applicable |
pl.max_horizontal |
#23160 |
Pointwise - not applicable |
pl.mean_horizontal |
#23427 |
Pointwise - not applicable |
pl.cum_sum_horizontal |
|
Pointwise - not applicable |
pl.concat_list |
|
Pointwise - not applicable |
pl.fold |
|
Pointwise - not applicable |
pl.reduce |
|
Pointwise - not applicable |
pl.cum_fold |
|
Pointwise - not applicable |
pl.cum_reduce |
|
Pointwise - not applicable |
pl.format |
|
Pointwise - not applicable |
pl.coalesce |
#23159 |
Pointwise - not applicable |
pl.arg_where |
#23284 |
|
pl.int_range |
|
|
pl.arange |
|
|
pl.repeat |
#23227 |
|
pl.struct |
✅ |
|
In conjunction with developing an agent skill to implement unsupported
polars.Expressions, #23078, the following table is the result of an accompanying agent investigation ofpolars.Expressionsthat are not supported in our single or multiple partition execution paths. This investigation was done with Polars expressions available as of 1.41.Fill in the entries in the table with a link to the pull request that implements each expression:
appendbitwise_andbitwise_orbitwise_xorbitwise_count_onesbitwise_count_zerosbitwise_leading_onesbitwise_leading_zerosbitwise_trailing_onesbitwise_trailing_zeroscumulative_evalexplodeflattenmap_batchesmap_elementssampleshufflecutqcutreshaperolling_meanrolling_sumrolling_maxrolling_minrolling_medianrolling_quantilerolling_stdrolling_varrolling_skewrolling_kurtosisrolling_rankrolling_maprolling_mean_byrolling_sum_byrolling_max_byrolling_min_byrolling_median_byrolling_quantile_byrolling_std_byrolling_var_byrolling_rank_byagg_groupsapprox_n_uniqueunique_countsarg_maxarg_minarg_sortarg_truearg_uniquebottom_k_bytop_k_bymax_bymin_byclipcotdegreesradianslog1psigncum_countdiffpct_changedrop_nansentropyskewkurtosisextend_constantgather_everyhashhas_nullsis_emptyis_closehistimplodeitemindex_ofsearch_sortedinterpolateinterpolate_bymodeproductpeak_maxpeak_minrechunkreinterpretto_physicalrepeat_byreplacereplace_strictreverserlerle_idround_sig_figstruncaterolling(base time-indexed)quantile(interpolation="equiprobable")rank(method="random")over(mapping_strategy∈ {join,explode})cum_sum(reverse=True)cum_max(reverse=True)cum_min(reverse=True)cum_prod(reverse=True)fill_null(strategy /limit=…)forward_fillbackward_fillallanystdvarmediansortsort_bygathergetfilterwhereshifttop_kbottom_kvalue_countsis_duplicatedis_uniqueis_first_distinctis_last_distinctstr.extract_manystr.find_manystr.encodestr.decodestr.escape_regexstr.extract_allstr.normalizestr.splitstr.explodestr.to_decimalstr.to_integerstr.to_timestr.containsstr.count_matchesstr.extractstr.findstr.replacestr.replace_allstr.replace_manystr.slicestr.split_exactstr.strptimestr.to_datestr.to_datetimestr.strip_charsstr.strip_chars_startstr.strip_chars_endstr.headstr.tailstr.zfillstr.concatstr.joindt.add_business_daysdt.is_business_daydt.base_utc_offsetdt.convert_time_zonedt.dst_offsetdt.replace_time_zonedt.centurydt.millenniumdt.combinedt.timedt.datedt.datetimedt.with_time_unitdt.days_in_monthdt.quarterdt.rounddt.offset_bydt.replacedt.total_daysdt.total_hoursdt.total_minutesdt.total_secondsdt.total_millisecondsdt.total_microsecondsdt.total_nanosecondsdt.truncate(unit > day / non-1<unit>)list.agglist.alllist.anylist.evallist.filterlist.n_uniquelist.reverselist.uniquelist.explodelist.arg_maxlist.arg_minlist.concatlist.containslist.count_matcheslist.difflist.drop_nullslist.firstlist.gatherlist.gather_everylist.getlist.headlist.joinlist.lastlist.lenlist.maxlist.meanlist.medianlist.minlist.samplelist.set_differencelist.set_intersectionlist.set_symmetric_differencelist.set_unionlist.shiftlist.slicelist.sortlist.stdlist.sumlist.taillist.to_structlist.varlist.to_arrayarr.arg_maxarr.arg_minarr.containsarr.count_matchesarr.explodearr.firstarr.getarr.joinarr.lastarr.lenarr.maxarr.meanarr.medianarr.minarr.stdarr.sumarr.vararr.to_listarr.to_structarr.aggarr.allarr.anyarr.evalarr.headarr.n_uniquearr.reversearr.shiftarr.slicearr.sortarr.tailarr.uniquestruct.with_fieldsstruct.unnestcat.get_categoriescat.len_bytescat.len_charscat.slicecat.starts_withcat.ends_withbin.containsbin.starts_withbin.ends_withbin.getbin.sizebin.encodebin.reinterpretbin.decodebin.headbin.tailbin.slicename.map_fieldspl.sum_horizontalpl.min_horizontalpl.max_horizontalpl.mean_horizontalpl.cum_sum_horizontalpl.concat_listpl.foldpl.reducepl.cum_foldpl.cum_reducepl.formatpl.coalescepl.arg_wherepl.int_rangepl.arangepl.repeatpl.struct✅*marks expressions that already have a single-partition implementation but reject the specific parameter value(s) noted in parentheses.pl.structis pointwise expression but is able to have a custom multiple partition implementation