如何重新排列PyArrow Table的列?能否像Pandas DataFrame那样操作?
PyArrow Table列重排方法
当然可以像操作Pandas DataFrame那样调整PyArrow Table的列顺序,核心是使用PyArrow Table的select()方法,直接传入目标列名列表即可。
示例代码
import pyarrow as pa # 创建示例PyArrow Table data = { 'A': [1, 2, 3], 'B': ['x', 'y', 'z'], 'C': [True, False, True], 'D': [1.1, 2.2, 3.3] } table = pa.Table.from_pydict(data) # 原列顺序:['A', 'B', 'C', 'D'] print("原列顺序:", table.column_names) # 重排列顺序为['B', 'D', 'C', 'A'] new_table = table.select(['B', 'D', 'C', 'A']) # 验证新列顺序 print("新列顺序:", new_table.column_names)
补充说明
select()方法不仅支持列名字符串列表,还可以传入pa.Field对象或者列索引,灵活性很强。- 这个操作不会修改原Table(PyArrow对象默认不可变),会返回一个新的Table实例。
内容的提问来源于stack exchange,提问作者amber_coder
相关产品推荐
相关产品推荐

