- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试查找和计算 HDF5 文件中的数据。该文件有一个名为 IAS 的数据列。奇怪的是,我以两种不同的方式得到完全不同的答案,我认为这应该是等效的,并且应该给出相同的结果。这是第一版,我只在循环内测试 > 120:
import pandas as pd
import numpy as np
store = pd.HDFStore('AllData.h5','r')
a=store.select('mydata',iterator=True,chunksize=50000)
bins=np.arange(0.00,1.5,.02)
#Fill in a blank counting Series:
counts_total= pd.value_counts(pd.cut([],bins,include_lowest=True))
for chunk in a:
counts=pd.value_counts(pd.cut(abs(chunk[(chunk['IAS']>120.0)]['LatAc']),bins,include_lowest=True))
counts_total=counts+counts_total
虽然在这种情况下,我使用选择来找到我想要的,然后在循环内对它们进行计数。第二个版本运行得更快,但似乎只返回一个 block 。我不确定哪一个是正确的,或者为什么他们给出不同的答案。
import pandas as pd
import numpy as np
store = pd.HDFStore('AllData.h5','r')
a=store.select('mydata',iterator=True,chunksize=50000,where='IAS > 120.0')
bins=np.arange(0.00,1.5,.02)
#Fill in a blank counting Series:
counts_total2= pd.value_counts(pd.cut([],bins,include_lowest=True))
for chunk in a:
counts=pd.value_counts(pd.cut(abs(chunk['LatAc']),bins,include_lowest=True))
counts_total2=counts+counts_total2
如果我只看返回的行数,第二个版本只返回单个 block 中的所有行(数据文件为 280 万行)。
第二个版本有问题吗?我认为我正确地使用了“where”,但是它没有给出预期的结果。而且,只是为了阐明我的主要目标。在 IAS 超过 120 的情况下,我试图对我的 LatAC 列数据进行分类,并忽略其余数据。添加更多信息。我正在使用 PyTables 3.2.1(我在 Pandas IO 工具页面上看到了关于先前版本中索引错误的警告)。
我正在读取的数据由许多我解析并附加到 HDF5 文件的 csv 文件组成。似乎第二种方法,使用“where”只返回最后几个附加文件的数据,而第一种方法返回更多数据。
看到这个错误后:https://github.com/pydata/pandas/issues/5913我想知道我是否遇到过类似的事情。虽然,就我而言,我没有提供预期的行。所以,我决定无论如何都要尝试运行 ptrepack,但现在我收到了一个错误:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/ptrepack --chunkshape=auto --propindexes --keep-source-filters --complib blosc --complevel 7 /Volumes/Untitled/AllData.h5 /Volumes/Untitled/AllData_repack.h5
Problems doing the copy from '/Volumes/Untitled/AllData.h5:/ (RootGroup) ''' to '/Volumes/Untitled/AllData_repack.h5:/ (RootGroup) '''
The error was --> <class 'tables.exceptions.HDF5ExtError'>: HDF5 error back trace
File "H5F.c", line 522, in H5Fcreate
unable to create file
File "H5Fint.c", line 1022, in H5F_open
unable to truncate a file which is already open
End of HDF5 error back trace
Unable to open/create file '/Volumes/Untitled/pytables-powkl3.tmp'
The destination file looks like:
/Volumes/Untitled/AllFlightLogs_repack.h5 (File) ''
Last modif.: 'Wed Aug 19 09:37:28 2015'
Object Tree:
/ (RootGroup) ''
/mydata (Group) ''
/mydata/table (Table(2772065,), shuffle, blosc(7)) ''
Traceback (most recent call last):
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/ptrepack", line 9, in <module>
load_entry_point('tables==3.2.1', 'console_scripts', 'ptrepack')()
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tables/scripts/ptrepack.py", line 525, in main
use_hardlinks=True)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tables/scripts/ptrepack.py", line 251, in copy_children
raise RuntimeError("Please check that the node names are not "
RuntimeError: Please check that the node names are not duplicated in destination, and if so, add the --overwrite-nodes flag if desired. In particular, pay attention that root_uep is not fooling you.
所以,hdf5 文件似乎有问题,但我不确定这个错误意味着什么,或者如何更正它。
回答评论中的问题:store.mydata.info() 返回:
Int64Index: 2772065 entries, 0 to 1640
Data columns (total 63 columns):
DateTimeGMT datetime64[ns]
AtvWpt object
Latitude float64
Longitude float64
AltB float64
BaroA float64
AltMSL float64
OAT float64
IAS float64
GndSpd float64
VSpd float64
Pitch float64
Roll float64
LatAc float64
NormAc float64
HDG float64
TRK float64
volt1 float64
volt2 float64
amp1 float64
amp2 float64
FQtyL float64
FQtyR float64
E1_FFlow float64
E1_FPres float64
E1_OilT float64
E1_OilP float64
E1_Torq float64
E1_NP float64
E1_NG float64
E1_ITT float64
E2_Torq float64
E2_NP float64
E2_NG float64
E2_ITT float64
AltGPS float64
TAS float64
HSIS object
CRS float64
NAV1 float64
NAV2 float64
COM1 float64
COM2 float64
HCDI float64
VCDI float64
WndSpd float64
WndDr float64
WptDst float64
WptBrg float64
MagVar float64
AfcsOn float64
RollM object
PitchM object
RollC float64
PichC float64
VSpdG float64
GPSfix object
HAL float64
VAL float64
HPLwas float64
HPLfd float64
VPLwas float64
SrcFile object
dtypes: datetime64[ns](1), float64(56), object(6)
memory usage: 1.3+ GB
我生成的文件是这样的:
for file in files:
print (file + " Num: "+str(file_num)+" of: "+str(len(files)))
file_num=file_num+1
in_pd=read_file(file)
head, tail = path.split(file)
in_pd["SrcFile"]=tail
in_pd.to_hdf('AllData.h5','mydata',mode='a',append=True,complib='blosc', complevel=7,data_columns=Search_cols,min_itemsize={'SrcFile':30})
函数 read_file 只是读取一个 csv,进行一些解析并返回一个 DataFrame。
最后,ptdump -av 返回:
/ (RootGroup) ''
/._v_attrs (AttributeSet), 4 attributes:
[CLASS := 'GROUP',
PYTABLES_FORMAT_VERSION := '2.1',
TITLE := '',
VERSION := '1.0']
/mydata (Group) ''
/mydata._v_attrs (AttributeSet), 15 attributes:
[CLASS := 'GROUP',
TITLE := '',
VERSION := '1.0',
data_columns := ['DateTimeGMT', 'Latitude', 'Longitude', 'AltB', 'BaroA', 'AltMSL', 'IAS', 'GndSpd', 'VSpd', 'Pitch', 'Roll', 'LatAc', 'NormAc', 'HDG', 'FQtyL', 'FQtyR', 'E1_FFlow', 'E1_FPres', 'E1_OilT', 'E1_OilP', 'E1_Torq', 'E1_NP', 'E1_NG', 'E1_ITT', 'TAS', 'SrcFile'],
encoding := None,
index_cols := [(0, 'index')],
info := {1: {'type': 'Index', 'names': [None]}, 'index': {}},
levels := 1,
metadata := [],
nan_rep := 'nan',
non_index_axes := [(1, ['DateTimeGMT', 'AtvWpt', 'Latitude', 'Longitude', 'AltB', 'BaroA', 'AltMSL', 'OAT', 'IAS', 'GndSpd', 'VSpd', 'Pitch', 'Roll', 'LatAc', 'NormAc', 'HDG', 'TRK', 'volt1', 'volt2', 'amp1', 'amp2', 'FQtyL', 'FQtyR', 'E1_FFlow', 'E1_FPres', 'E1_OilT', 'E1_OilP', 'E1_Torq', 'E1_NP', 'E1_NG', 'E1_ITT', 'E2_Torq', 'E2_NP', 'E2_NG', 'E2_ITT', 'AltGPS', 'TAS', 'HSIS', 'CRS', 'NAV1', 'NAV2', 'COM1', 'COM2', 'HCDI', 'VCDI', 'WndSpd', 'WndDr', 'WptDst', 'WptBrg', 'MagVar', 'AfcsOn', 'RollM', 'PitchM', 'RollC', 'PichC', 'VSpdG', 'GPSfix', 'HAL', 'VAL', 'HPLwas', 'HPLfd', 'VPLwas', 'SrcFile'])],
pandas_type := 'frame_table',
pandas_version := '0.15.2',
table_type := 'appendable_frame',
values_cols := ['values_block_0', 'values_block_1', 'DateTimeGMT', 'Latitude', 'Longitude', 'AltB', 'BaroA', 'AltMSL', 'IAS', 'GndSpd', 'VSpd', 'Pitch', 'Roll', 'LatAc', 'NormAc', 'HDG', 'FQtyL', 'FQtyR', 'E1_FFlow', 'E1_FPres', 'E1_OilT', 'E1_OilP', 'E1_Torq', 'E1_NP', 'E1_NG', 'E1_ITT', 'TAS', 'SrcFile']]
/mydata/table (Table(2772065,), shuffle, blosc(7)) ''
description := {
"index": Int64Col(shape=(), dflt=0, pos=0),
"values_block_0": Float64Col(shape=(32,), dflt=0.0, pos=1),
"values_block_1": StringCol(itemsize=6, shape=(5,), dflt='', pos=2),
"DateTimeGMT": Int64Col(shape=(), dflt=0, pos=3),
"Latitude": Float64Col(shape=(), dflt=0.0, pos=4),
"Longitude": Float64Col(shape=(), dflt=0.0, pos=5),
"AltB": Float64Col(shape=(), dflt=0.0, pos=6),
"BaroA": Float64Col(shape=(), dflt=0.0, pos=7),
"AltMSL": Float64Col(shape=(), dflt=0.0, pos=8),
"IAS": Float64Col(shape=(), dflt=0.0, pos=9),
"GndSpd": Float64Col(shape=(), dflt=0.0, pos=10),
"VSpd": Float64Col(shape=(), dflt=0.0, pos=11),
"Pitch": Float64Col(shape=(), dflt=0.0, pos=12),
"Roll": Float64Col(shape=(), dflt=0.0, pos=13),
"LatAc": Float64Col(shape=(), dflt=0.0, pos=14),
"NormAc": Float64Col(shape=(), dflt=0.0, pos=15),
"HDG": Float64Col(shape=(), dflt=0.0, pos=16),
"FQtyL": Float64Col(shape=(), dflt=0.0, pos=17),
"FQtyR": Float64Col(shape=(), dflt=0.0, pos=18),
"E1_FFlow": Float64Col(shape=(), dflt=0.0, pos=19),
"E1_FPres": Float64Col(shape=(), dflt=0.0, pos=20),
"E1_OilT": Float64Col(shape=(), dflt=0.0, pos=21),
"E1_OilP": Float64Col(shape=(), dflt=0.0, pos=22),
"E1_Torq": Float64Col(shape=(), dflt=0.0, pos=23),
"E1_NP": Float64Col(shape=(), dflt=0.0, pos=24),
"E1_NG": Float64Col(shape=(), dflt=0.0, pos=25),
"E1_ITT": Float64Col(shape=(), dflt=0.0, pos=26),
"TAS": Float64Col(shape=(), dflt=0.0, pos=27),
"SrcFile": StringCol(itemsize=30, shape=(), dflt='', pos=28)}
byteorder := 'little'
chunkshape := (125,)
autoindex := True
colindexes := {
"E1_OilT": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"E1_NG": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"NormAc": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"Pitch": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"E1_Torq": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"E1_FPres": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"HDG": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"Longitude": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"Latitude": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"Roll": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"IAS": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"E1_FFlow": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"E1_ITT": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"index": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"FQtyL": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"LatAc": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"TAS": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"AltMSL": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"BaroA": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"SrcFile": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"AltB": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"DateTimeGMT": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"E1_OilP": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"E1_NP": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"VSpd": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"FQtyR": Index(6, medium, shuffle, zlib(1)).is_csi=False,
"GndSpd": Index(6, medium, shuffle, zlib(1)).is_csi=False}
/flights/table._v_attrs (AttributeSet), 147 attributes:
[AltB_dtype := 'float64',
AltB_kind := ['AltB'],
AltB_meta := None,
AltMSL_dtype := 'float64',
AltMSL_kind := ['AltMSL'],
AltMSL_meta := None,
BaroA_dtype := 'float64',
BaroA_kind := ['BaroA'],
BaroA_meta := None,
CLASS := 'TABLE',
DateTimeGMT_dtype := 'datetime64',
DateTimeGMT_kind := ['DateTimeGMT'],
DateTimeGMT_meta := None,
E1_FFlow_dtype := 'float64',
E1_FFlow_kind := ['E1_FFlow'],
E1_FFlow_meta := None,
E1_FPres_dtype := 'float64',
E1_FPres_kind := ['E1_FPres'],
E1_FPres_meta := None,
E1_ITT_dtype := 'float64',
E1_ITT_kind := ['E1_ITT'],
E1_ITT_meta := None,
E1_NG_dtype := 'float64',
E1_NG_kind := ['E1_NG'],
E1_NG_meta := None,
E1_NP_dtype := 'float64',
E1_NP_kind := ['E1_NP'],
E1_NP_meta := None,
E1_OilP_dtype := 'float64',
E1_OilP_kind := ['E1_OilP'],
E1_OilP_meta := None,
E1_OilT_dtype := 'float64',
E1_OilT_kind := ['E1_OilT'],
E1_OilT_meta := None,
E1_Torq_dtype := 'float64',
E1_Torq_kind := ['E1_Torq'],
E1_Torq_meta := None,
FIELD_0_FILL := 0,
FIELD_0_NAME := 'index',
FIELD_10_FILL := 0.0,
FIELD_10_NAME := 'GndSpd',
FIELD_11_FILL := 0.0,
FIELD_11_NAME := 'VSpd',
FIELD_12_FILL := 0.0,
FIELD_12_NAME := 'Pitch',
FIELD_13_FILL := 0.0,
FIELD_13_NAME := 'Roll',
FIELD_14_FILL := 0.0,
FIELD_14_NAME := 'LatAc',
FIELD_15_FILL := 0.0,
FIELD_15_NAME := 'NormAc',
FIELD_16_FILL := 0.0,
FIELD_16_NAME := 'HDG',
FIELD_17_FILL := 0.0,
FIELD_17_NAME := 'FQtyL',
FIELD_18_FILL := 0.0,
FIELD_18_NAME := 'FQtyR',
FIELD_19_FILL := 0.0,
FIELD_19_NAME := 'E1_FFlow',
FIELD_1_FILL := 0.0,
FIELD_1_NAME := 'values_block_0',
FIELD_20_FILL := 0.0,
FIELD_20_NAME := 'E1_FPres',
FIELD_21_FILL := 0.0,
FIELD_21_NAME := 'E1_OilT',
FIELD_22_FILL := 0.0,
FIELD_22_NAME := 'E1_OilP',
FIELD_23_FILL := 0.0,
FIELD_23_NAME := 'E1_Torq',
FIELD_24_FILL := 0.0,
FIELD_24_NAME := 'E1_NP',
FIELD_25_FILL := 0.0,
FIELD_25_NAME := 'E1_NG',
FIELD_26_FILL := 0.0,
FIELD_26_NAME := 'E1_ITT',
FIELD_27_FILL := 0.0,
FIELD_27_NAME := 'TAS',
FIELD_28_FILL := '',
FIELD_28_NAME := 'SrcFile',
FIELD_2_FILL := '',
FIELD_2_NAME := 'values_block_1',
FIELD_3_FILL := 0,
FIELD_3_NAME := 'DateTimeGMT',
FIELD_4_FILL := 0.0,
FIELD_4_NAME := 'Latitude',
FIELD_5_FILL := 0.0,
FIELD_5_NAME := 'Longitude',
FIELD_6_FILL := 0.0,
FIELD_6_NAME := 'AltB',
FIELD_7_FILL := 0.0,
FIELD_7_NAME := 'BaroA',
FIELD_8_FILL := 0.0,
FIELD_8_NAME := 'AltMSL',
FIELD_9_FILL := 0.0,
FIELD_9_NAME := 'IAS',
FQtyL_dtype := 'float64',
FQtyL_kind := ['FQtyL'],
FQtyL_meta := None,
FQtyR_dtype := 'float64',
FQtyR_kind := ['FQtyR'],
FQtyR_meta := None,
GndSpd_dtype := 'float64',
GndSpd_kind := ['GndSpd'],
GndSpd_meta := None,
HDG_dtype := 'float64',
HDG_kind := ['HDG'],
HDG_meta := None,
IAS_dtype := 'float64',
IAS_kind := ['IAS'],
IAS_meta := None,
LatAc_dtype := 'float64',
LatAc_kind := ['LatAc'],
LatAc_meta := None,
Latitude_dtype := 'float64',
Latitude_kind := ['Latitude'],
Latitude_meta := None,
Longitude_dtype := 'float64',
Longitude_kind := ['Longitude'],
Longitude_meta := None,
NROWS := 2772065,
NormAc_dtype := 'float64',
NormAc_kind := ['NormAc'],
NormAc_meta := None,
Pitch_dtype := 'float64',
Pitch_kind := ['Pitch'],
Pitch_meta := None,
Roll_dtype := 'float64',
Roll_kind := ['Roll'],
Roll_meta := None,
SrcFile_dtype := 'string240',
SrcFile_kind := ['SrcFile'],
SrcFile_meta := None,
TAS_dtype := 'float64',
TAS_kind := ['TAS'],
TAS_meta := None,
TITLE := '',
VERSION := '2.7',
VSpd_dtype := 'float64',
VSpd_kind := ['VSpd'],
VSpd_meta := None,
index_kind := 'integer',
values_block_0_dtype := 'float64',
values_block_0_kind := ['AfcsOn', 'AltGPS', 'COM1', 'COM2', 'CRS', 'E2_ITT', 'E2_NG', 'E2_NP', 'E2_Torq', 'HAL', 'HCDI', 'HPLfd', 'HPLwas', 'MagVar', 'NAV1', 'NAV2', 'OAT', 'PichC', 'RollC', 'TRK', 'VAL', 'VCDI', 'VPLwas', 'VSpdG', 'WndDr', 'WndSpd', 'WptBrg', 'WptDst', 'amp1', 'amp2', 'volt1', 'volt2'],
values_block_0_meta := None,
values_block_1_dtype := 'string48',
values_block_1_kind := ['AtvWpt', 'GPSfix', 'HSIS', 'PitchM', 'RollM'],
values_block_1_meta := None]
最佳答案
显然在附加索引时没有更新。我无法在 Pandas 或 Py-tables 的任何地方找到这个记录。
所以,问题是当我创建文件时,它没有正确的索引。如果我在创建整个 hdf5 文件之前不创建索引,它似乎允许 select 工作。以这种方式创建文件似乎可以进行正确的搜索:
for file in files:
print (file + " Num: "+str(file_num)+" of: "+str(len(files)))
file_num=file_num+1
in_pd=read_file(file)
head, tail = path.split(file)
in_pd["SrcFile"]=tail
in_pd.to_hdf('AllData.h5','mydata',mode='a',append=True,complib='blosc', complevel=7,index=False,data_columns=Search_cols,min_itemsize={'SrcFile':30})
store = pd.HDFStore('AllData.h5')
store.create_table_index('mydata',columns=Search_cols,optlevel=6,kind='medium')
关于python - 从 pandas.HDFStore 中选择给出了不同的答案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32059385/
我将所有数据都放入了 HDFStore(是的!),但是如何从中取出数据.. 我在我的 HDFStore 中保存了 6 个数据帧作为 frame_table。这些表格中的每一个看起来如下所示,但长度各不
我确定这可能非常简单,但我无法弄清楚如何通过日期时间索引对 Pandas HDFStore 表进行切片以获得特定范围的行。 我有一个看起来像这样的表: mdstore = pd.HDFStore(st
我有一个 pandas HDFStore,我尝试从中进行选择。我想在一个大的 np.array 中选择两个时间戳之间的数据和一个 id。以下代码可以工作,但仅在查询列表中的成员身份时才会占用过多内存。
我对 pandas' HDFStore 有一些问题速度太慢了,不幸的是我无法从这里的其他问题中找到令人满意的解决方案。 情况 我有一个很大的 DataFrame,其中大部分包含 float ,有时包含
我对 pandas' HDFStore 有一些问题速度太慢了,不幸的是我无法从这里的其他问题中找到令人满意的解决方案。 情况 我有一个很大的 DataFrame,其中大部分包含 float ,有时包含
清楚我做错了什么吗? 我正在尝试 pandas HDFStore.select start 和 stop 选项,但没有什么区别。 我使用的命令是: import pandas as pd hdf =
我希望将我读入的两个表存储在数据框中。 我正在将 h5 文件读入我的代码中: with pd.HDFStore(directory_path) as store: self.df = stor
我在平面文件中有数 TB 的数据(在子集中),我想使用 Python Pandas/Pytables/H5py 将这些数据转换为 HDF5 以加快查询和搜索速度。我计划使用 to_hdf 之类的方法转
我有一个 pandas HDFStore,我试图从中进行选择。我想在一个大的 np.array 中选择两个带有 id 的时间戳之间的数据。以下代码有效,但仅在查询列表中的成员资格时占用过多内存。如果我
问题:如何创建一个允许对 pandas HDFStore 对象中的多个列进行迭代的生成器? 我正在尝试为 pandas HDFStore 对象创建一个包装类。我试图实现的功能之一是能够按给定的 blo
我在具有多索引的 HDFStore 中将frame_table 称为“数据”。在 DataFrame 中,它可能看起来像这样 var1 var2 va
以下代码片段: HDFStore = pandas.io.pytables.HDFStore lock = threading.RLock() with lock:
Pandas "Group By" Query on Large Data in HDFStore? 我已经尝试了答案中的示例,只是我希望能够按两列进行分组。 基本上,修改代码看起来像 with pd
我通过 Pandas 将大量数据帧导出到一系列 HDFStore 文件。我需要能够根据需要快速提取每个数据帧的最新记录。 设置: File path: /data/storage_X100.hdf
这很好用: cols = ['X', 'Y'] ind = [('A', 1), ('B', 2)] ind = pd.MultiIndex.from_tuples(index, names=['fo
假设我有一个 store = pd.HDFStore('cache/cache.h5') 我有一个存储的 DataFrame store['myDF'] 如果在我的代码中,我这样做: a = stor
我是 pytables 的新手,对存储压缩的 pandas DataFrame 有疑问。我当前的代码是: import pandas # HDF5 file name H5name="C:\\MyDi
我想知道为什么 HDFStore 会在 pandas 中的字符串列上发出警告。我认为它可能是我真实数据库中的 NaN,但在这里尝试它会给我两个列的警告,即使一个没有混合并且只是字符串。 使用 .13.
我正在试验不同的 pandas 友好存储方案来存储报价数据。迄今为止最快的(就读取和写入而言)是使用具有 blosc 压缩和“固定”格式的 HDFStore。 store = pd.HDFStore(
我有以下 DataFrame,它作为名为数据的 frame_table 存储在 HDFStore 对象中: shipmentid qty catid
我是一名优秀的程序员,十分优秀!