你能告诉我为什么 uproot 不解释树:Evt、AAObject、TObject 和 t?我可能在这里做错了什么,因为我不熟悉根文件。
我的目标:将根文件中的数据打开到 pandas DataFrame 中。
当我尝试遍历 ['Evt'] 树中的数据时,我收到以下分支 AAObject、TObject 和 t 的以下错误
ValueError: cannot interpret branch b'AAObject' as a Python type
in file: /myfile.root
ValueError: cannot interpret branch b't' as a Python type
in file: /myfile.root
ValueError: cannot interpret branch b'TObject' as a Python type
in file: /myfile.root
这是我键入以探索我的文件的内容
data = uproot.open("myfile.root")["E"]
data.show()
data_branch_Evt['Evt']['AAObject'].basket(0)
data_branch_Evt['t'].basket(0)`
这是 data.show() 的结果
Evt TStreamerInfo None
AAObject TStreamerInfo None
TObject TStreamerInfo None
fUniqueID TStreamerBasicType asdtype('>u4')
fBits TStreamerBasicType asdtype('>u4')
usr TStreamerSTL asjagged(asdtype('>f8'), 10)
usr_names TStreamerSTL asgenobj(STLVector(STLString()))
id TStreamerBasicType asdtype('>i4')
det_id TStreamerBasicType asdtype('>i4')
mc_id TStreamerBasicType asdtype('>i4')
run_id TStreamerBasicType asdtype('>i4')
mc_run_id TStreamerBasicType asdtype('>i4')
frame_index TStreamerBasicType asdtype('>i4')
trigger_mask TStreamerBasicType asdtype('>u8')
trigger_counter TStreamerBasicType asdtype('>u8')
overlays TStreamerBasicType asdtype('>u4')
t TStreamerObjectAny None
t.fSec TStreamerBasicType asdtype('>i4')
t.fNanoSec TStreamerBasicType asdtype('>i4')
hits TStreamerSTL asdtype('>i4')
....等等...`
谢谢!