我使用python 3.5,我有下一个问题从hdf5文件导入一些数据。
我将展示一个简单的例子,它可以恢复发生的事情。我创建了一个小型数据帧,并将其插入到hdf5文件中。然后我试图从这个hdf5文件中选择列#34; A"一个小于1的值。所以我得到错误:
"类型错误:不可解决的类型:str()< INT()"
import pandas as pd
import numpy as np
import datetime
import time
import h5py
from pandas import DataFrame, HDFStore
def test_conected():
hdf_nombre_archivo ="1_Archivo.h5"
hdf = HDFStore(hdf_nombre_archivo)
np.random.seed(1234)
index = pd.date_range('1/1/2000', periods=3)
df = pd.DataFrame(np.random.randn(3, 4), index=index, columns=
['A', 'B','C','F'])
print(df)
with h5py.File(hdf_nombre_archivo) as f:
df.to_hdf(hdf_nombre_archivo, 'df',format='table')
print("")
with h5py.File(hdf_nombre_archivo) as f:
df_nuevo = pd.read_hdf(hdf_nombre_archivo, 'df',where= ['A' < 1])
print(df_nuevo )
def Fin():
print(" ")
print("FIN")
if __name__ == "__main__":
test_conected()
Fin()
print(time.strftime("%H:%M:%S"))
我一直在调查,但我没有解决这个错误。有些想法?
由于
天使
答案 0 :(得分:0)
其中= ['A'&lt; 1]
在你的条件语句中'A'被认为是字符串或char,1是int,所以首先通过类型转换使它们成为相同的类型。 例如: STR(1)