3个版本
0.4.5 | 2024年2月10日 |
---|---|
0.4.4 | 2024年2月10日 |
0.4.3 | 2024年2月10日 |
#1219 在 编码
200KB
5K SLoC
Valu3 Parquet
Apache Arrow Parquet集成于Valu3
此库提供Apache Arrow的Parquet格式和valu3库之间的集成层,便于在Parquet文件和valu3的灵活的Value
结构之间进行数据操作和转换。它提供方便的方法来处理表格数据,允许轻松转换和操作数据集。
文档和注意事项
使用我们的github保持最新 Valu3
许可
本项目采用Apache 2.0或MIT许可。有关更多信息,请参阅LICENSE-APACHE或LICENSE-MIT文件。
lib.rs
:
Apache Arrow Parquet集成于Valu3
此库提供Apache Arrow的Parquet格式和valu3库之间的集成层,便于在Parquet文件和valu3的灵活的Value
结构之间进行数据操作和转换。它提供方便的方法来处理表格数据,允许轻松转换和操作数据集。
特性
prettytable
:通过prettytable
包启用表格的漂亮打印。
示例
案例1
use valu3_parquet::Table;
let mut table = Table::new();
table.add("id", vec_value![1, 2, 3]);
table.add("name", vec_value!["Alice", "Bob", "Charlie"]);
assert_eq!(table.count_rows(), 3);
案例2
use valu3_parquet::Table;
let mut table = Table::new();
table.add("id", vec_value![1, 2, 3]);
table.add("name", vec_value!["Alice", "Bob", "Charlie"]);
table.add("score", vec_value![85.0, 92.5, 78.3]);
// Access individual values
let name = table.get_value(1, 0).unwrap();
assert_eq!(name.to_string(), "Bob");
案例3
use valu3_parquet::Table;
let mut table = Table::new();
table.add("id", vec_value![1, 2, 3]);
table.add("name", vec_value!["Alice", "Bob", "Charlie"]);
table.add("score", vec_value![85.0, 92.5, 78.3]);
// Convert table to Parquet file
table.to_parquet("data.parquet").expect("Failed to write Parquet file");
// Read Parquet file back into a table
let new_table = Table::from_parquet("data.parquet").expect("Failed to read Parquet file");
// Perform operations on the new table
assert_eq!(table.get_headers(), new_table.get_headers());
assert_eq!(table.get_cols(), new_table.get_cols());
依赖
~27–38MB
~737K SLoC