MCPcopy Create free account
hub / github.com/PyTables/PyTables / populateFile

Method populateFile

tables/tests/test_create.py:757–818  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

755 self.populateFile()
756
757 def populateFile(self):
758 group = self.h5file.root
759 # Add some user attrs:
760 group._v_attrs.attr1 = "an string for root group"
761 group._v_attrs.attr2 = 124
762 # Create a tree
763 for group_i in range(5):
764 for bgroup_i in range(2):
765 # Create a new group (brother of group)
766 group2 = self.h5file.create_group(
767 group, "bgroup" + str(bgroup_i), filters=None
768 )
769
770 # Create a table
771 table = self.h5file.create_table(
772 group2, "table1", Record2, title=self.title, filters=None
773 )
774 # Get the record object associated with the new table
775 d = table.row
776 # Fill the table
777 for row_i in range(self.nrows):
778 d["var1"] = "%04d" % (self.nrows - row_i)
779 d["var2"] = row_i
780 d["var3"] = row_i * 2
781 d.append() # This injects the Record values
782 # Flush the buffer for this table
783 table.flush()
784
785 # Add some user attrs:
786 table.attrs.attr1 = "an string"
787 table.attrs.attr2 = 234
788
789 # Create a couple of arrays in each group
790 var1List = [x["var1"] for x in table.iterrows()]
791 var3List = [x["var3"] for x in table.iterrows()]
792
793 self.h5file.create_array(group2, "array1", var1List, "col 1")
794 self.h5file.create_array(group2, "array2", var3List, "col 3")
795
796 # Create a couple of EArrays as well
797 ea1 = self.h5file.create_earray(
798 group2, "earray1", tb.StringAtom(itemsize=4), (0,), "col 1"
799 )
800 ea2 = self.h5file.create_earray(
801 group2, "earray2", tb.Int16Atom(), (0,), "col 3"
802 )
803 # Add some user attrs:
804 ea1.attrs.attr1 = "an string for earray"
805 ea2.attrs.attr2 = 123
806 # And fill them with some values
807 ea1.append(var1List)
808 ea2.append(var3List)
809
810 # Create a new group (descendant of group)
811 group3 = self.h5file.create_group(
812 group, "group" + str(group_i), filters=None
813 )
814 # Iterate over this new group (group3)

Callers 1

setUpMethod · 0.95

Calls 7

create_groupMethod · 0.80
create_earrayMethod · 0.80
create_tableMethod · 0.45
appendMethod · 0.45
flushMethod · 0.45
iterrowsMethod · 0.45
create_arrayMethod · 0.45

Tested by

no test coverage detected