【发布时间】:2016-03-29 01:49:50
【问题描述】:
我有一个 csv 文件,其中包含“日期”、“时间”和其他列(10 个左右)
Date,Time,C
20020515,123000000,10293
20020515,160000000,10287
20020516,111800000,10270
20020516,160000000,10260
20020517,130500000,10349
20020517,160000000,10276
20020520,123700000,10313
20020520,160000000,10258
20020521,114500000,10223
我正在尝试将其加载到 hdf5 文件中,并且日期和时间类型为“字符串”而不是 integer32。所以我正在这样做
import h5py,numpy as np
my_data = np.genfromtxt("/tmp/data.txt",delimiter=",",dtype=None,names=True)
myFile="/tmp/data.h5"
with h5py.File(myFile,"a") as f:
dset = f.create_dataset('foo',data=my_data)
我想将“日期”和“时间”存储为 HDF5 上的“字符串”类型。不是 Int32。
【问题讨论】:
-
我认为不可能。根据docs:
Datasets are very similar to NumPy arrays. They are homogenous collections of data elements, with an immutable datatype and (hyper)rectangular shape.这意味着所有列必须具有相同的dtype。 -
您想更改在 HDF5 文件中存储数据的方式,还是希望能够在读取这些列后将它们转换为字符串文件?
-
我想改变我存储数据的方式。我想将它们存储为字符串而不是整数。