如何在Polars中将结构转换为系列?

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

使用后,我有里面有结构的数据框

pl.cum_fold()
。 结构如何转换为基于普通系列的列?

┌───────────────────────────────────┐
│ price                             │
│ ---                               │
│ struct[2000]                      │
╞═══════════════════════════════════╡
│ {null,null,null,null,30302.67187… │
└───────────────────────────────────┘

是否可以使用极坐标表达式或某种 util 方法? 我发现唯一的方法是转换为 Python,然后再转换回 DF。

df = pl.DataFrame(pl.Series('price', df[0, 0].values()))
struct python-polars
1个回答
1
投票

一旦结构体被 transpose

ed,就会有 
unnest
。这会相对较慢,但我认为没有其他方法:

df = pl.DataFrame( {"price": {'test0' : None, 'test1' : 1, 'test2' : 2}})
df.unnest('price').transpose(column_names=['price'])
shape: (3, 1)
┌───────┐
│ price │
│ ---   │
│ f64   │
╞═══════╡
│ null  │
│ 1.0   │
│ 2.0   │
└───────┘
© www.soinside.com 2019 - 2024. All rights reserved.