【发布时间】:2021-07-28 17:01:09
【问题描述】:
我正在尝试创建一个缺少值的pyarrow.StructArray。
当我使用 pyarrow.array 传递代表我的记录的元组时,我工作得很好:
>>> pyarrow.array(
[
None,
(1, "foo"),
],
type=pyarrow.struct(
[pyarrow.field('col1', pyarrow.int64()), pyarrow.field("col2", pyarrow.string())]
)
)
-- is_valid:
[
false,
true
]
-- child 0 type: int64
[
0,
1
]
-- child 1 type: string
[
"",
"foo"
]
但我想使用StructArray.from_arrays,据我所知,没有办法为缺失值提供掩码:
pyarrow.StructArray.from_arrays(
[
[None, 1],
[None, "foo"]
],
fields=[pyarrow.field('col1', pyarrow.int64()), pyarrow.field("col2", pyarrow.string())]
)
-- is_valid: all not null
-- child 0 type: int64
[
null,
1
]
-- child 1 type: string
[
null,
"foo"
]
有没有办法从数组创建一个 StructArray,指定一个缺失值的掩码?或者以后有办法敷面膜吗?
【问题讨论】:
-
C++ API 允许这样做(接受一个空位图),但目前 python API 不公开它(总是传递一个空缓冲区)。您可以创建 JIRA 票证吗?
-
谢谢,我已经创建了一个 jira,现在我会坚持使用
pa.array。 issues.apache.org/jira/browse/ARROW-12677
标签: python pyarrow apache-arrow