极坐标并按列应用 UDF

问题描述 投票:0回答:1

将文本导入极轴系列会将数据按列排列,这就是极轴(箭头)如此高效的原因。方法

apply
将计算跨行但不跨列的用户定义函数 (UDF)。因此,我正在寻找最快的方法来将我的 UDF 应用于每列。

这满足了我的需要,但它会导致 1 x n df 的封装系列很难解压。有谁有更好的想法来解压这个或如何按列应用?

谢谢!

目前,我

select
并在 2000 x n df 上按如下方式使用
map_batches

df_baseline_series = df.select(
        pl.all().map_batches(lambda y: get_baseline(y.to_numpy()))
    )

函数

get_baseline
使用
scikit-ued
函数返回
np.ndarray
:

baseline_dt(data, wavelet='qshift3', level=6, max_iter=1)

这给了我一个 1 x n df,每个元素都是一个双重嵌套系列(即一系列系列)。

python python-polars
1个回答
0
投票

我自己解决了这个问题。

map 函数需要返回一个序列,而不是一维 numpy 数组。

所以如果

get_baseline
返回这个,它就可以正常工作:

pl.Series(baseline_dt(data, wavelet='qshift3', level=6, max_iter=1))
© www.soinside.com 2019 - 2024. All rights reserved.