0
我從HDF5文件中提取numpy數據(所有非零浮點數),然後將其轉換爲熊貓數據幀,然後嘗試顯示數據裏面,但這是失敗的。我在Jupyter筆記本上做了所有這些。熊貓HDF5 numpy創建的數據幀不能使用.head()或display(df)
import h5py # necessary for storing
import pandas as pd
from IPython.display import display, HTML
h5 = h5py.File('some_file')
predict = h5['path/to/dataset'] # get dataset reference
predict = predict[:] # load all float data into Numpy array
col_names = [1, 2, 3]
pred_df = pd.DataFrame(data=predict, index=predict, columns=col_names)
# this works
act_df.describe()
# these don't
display(pred_df)
pred_df.head(5)
錯誤:
ValueError: The truth value of an array with more than one element is ambiguous.
Use a.any() or a.all()
看來我的數據幀不知何故錯誤地創建,但我不明白爲什麼。
解決方案(感謝con--)
刪除, index=predict
- >
pred_df = pd.DataFrame(data=predict, columns=col_names)
獎金
如果您收到以下錯誤從HDF5文件加載數據集後:
ValueError: DataFrame constructor not properly called!
這意味着你忘記了:
predict = predict[:] # load all float data into Numpy array