gpt4 book ai didi

python - HDF5:有没有办法重命名现有 HDF5 表中的列名称?

转载 作者:太空宇宙 更新时间:2023-11-03 16:18:14 26 4
gpt4 key购买 nike

我使用 Pandas 创建了一个大型索引 HDF5 表。我想重命名表中 12 列中的 2 列。我不想重建/重新索引表。

可以在不复制所有数据(140GB)的情况下完成此操作吗?我希望文件中只有几条元数据可以使用正确的命令轻松交换。

这对我来说是因为我有一些带有空格的“非自然”列名,并且直到尝试运行 select 语句才意识到这是一个问题。

最佳答案

恐怕目前无法重命名索引(属于 data_columns)列,因为这需要在 storer.table.colindexesstorer.table.description 对象,它们都是特定类型:

In [29]: store.get_storer('df').table
Out[29]:
/df/table (Table(10,)) ''
description := {
"index": Int64Col(shape=(), dflt=0, pos=0),
"a": Int32Col(shape=(), dflt=0, pos=1),
"b": Int32Col(shape=(), dflt=0, pos=2),
"c": Int32Col(shape=(), dflt=0, pos=3)}
byteorder := 'little'
chunkshape := (3276,)
autoindex := True
colindexes := {
"a": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"index": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"c": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"b": Index(6, medium, shuffle, zlib(1)).is_csi=False}

In [30]: type(store.get_storer('df').table.colindexes)
Out[30]: tables.table._ColIndexes

In [31]: type(store.get_storer('df').table.description)
Out[31]: tables.description.Description

如果您尝试在 google 上搜索 PyTables 解决方案,您会发现这个问题,但没有/没有允许您重命名列的答案。

因此您可能想要重新创建 HDF5 文件

关于python - HDF5:有没有办法重命名现有 HDF5 表中的列名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38725032/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com