Код: Выделить всё
df = pl.LazyFrame(
{
"target": [
[1.0, 2.0],
[3.0, 4.0],
],
"point_cloud": [
[
[7.0, 8.0],
[9.0, 10.0],
],
[
[9.0, 10.0],
],
],
},
schema={
"target": pl.Array(pl.Float32, 2),
"point_cloud": pl.List(pl.Array(pl.Float32, 2)),
},
)
< /code>
Файл имеет 4 миллиона строк и составляет 20 ГБ (не подходит в ОЗУ). < /p>
Я пытаюсь получить размер точечных облаков, таких как: < /p>
df = (
pl.scan_parquet(dataset).select(size=pl.col("point_cloud").list.len()).collect()
)
< /code>
Но моя программа заканчивает память и умирает. Я пытался изменить Collect (Engine = "Streaming")
Я озадачен, потому что, когда я пытаюсь получить, например, x координата всех целей, она работает нормально (и очень быстро):
df = pl.scan_parquet(dataset).select(x=pl.col("target").arr.get(0)).collect()
< /code>
Могу ли я получить помощь с этим?
Спасибо < /p>
Подробнее здесь: https://stackoverflow.com/questions/795 ... ith-polars