如何从 Rust Polars 中的 str column/Utf8Chunked 中获取前 n 个字符

How to get first n chars from a str column/Utf8Chunked in rust polars

pandas 的替代方案是什么:

data['ColumnA'].str[:2]

在铁锈极地? 我的第一个猜测是:

let x = Utf8Chunked::new("ColumnA", &["Pear", "apple", "toly", "x"]);
let y = x.slice(0, 2);

我想要一个看起来像 ["Pe", "ap", "to", "x"] 的 array/ChunkedArray/Utf8Chunked。但是 .slice() 实际上只是获取数组的前 n 个元素。是否可以不遍历数组? (因为我的理解迭代会降低性能)。 非常感谢,

您想在 ChunkedArray 上使用 str_slice 方法:

let x = Utf8Chunked::new("ColumnA", &["Pear", "apple", "toly", "x"]);
dbg!(x.str_slice(0, Some(2)));

请注意,您必须在 Cargo.toml:

中启用 polarsstrings 功能
[dependencies]
polars = { version = "0.21.1", features = ["strings"] }