Skip to content

Writing profiles #1531

@wiso

Description

@wiso

From #1000 I undestand writing profile is supported.

import uproot
import hist

f = uproot.recreate("test.root")
h1 = hist.Hist.new.Reg(100, 0, 10).Mean()
f['h1'] = h1

gives

File ~/micromamba/envs/mamba-python3.11/lib/python3.11/site-packages/uproot/writing/writable.py:984, in WritableDirectory.__setitem__(self, where, what)
    982 if self._file.sink.closed:
    983     raise ValueError("cannot write data to a closed file")
--> 984 self.update({where: what})

File ~/micromamba/envs/mamba-python3.11/lib/python3.11/site-packages/uproot/writing/writable.py:1576, in WritableDirectory.update(self, pairs, **more_pairs)
   1573     for item in path:
   1574         directory = directory[item]
-> 1576     uproot.writing.identify.add_to_directory(v, name, directory, streamers)
   1578 self._file._cascading.streamers.update_streamers(self._file.sink, streamers)

File ~/micromamba/envs/mamba-python3.11/lib/python3.11/site-packages/uproot/writing/identify.py:169, in add_to_directory(obj, name, directory, streamers)
    166     tree.extend(data)
    168 else:
--> 169     writable = to_writable(obj)
    171     for rawstreamer in writable.class_rawstreamers:
    172         if isinstance(rawstreamer, tuple):

File ~/micromamba/envs/mamba-python3.11/lib/python3.11/site-packages/uproot/writing/identify.py:362, in to_writable(obj)
    360 if obj.kind == "MEAN":
    361     if hasattr(obj, "storage_type"):
--> 362         if "fSumw2" in obj.metadata.keys():
    363             fSumw2 = obj.metadata["fSumw2"]
    364         else:

AttributeError: 'NoneType' object has no attribute 'keys'
uproot.__version__ 5.6.6'
hist.__version__ 2.9.0

Metadata

Metadata

Assignees

Labels

bugThe problem described is something that must be fixed

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions