26 from daal.data_management
import (
27 HomogenNumericTable, MergedNumericTable, BlockDescriptor, readWrite, readOnly
30 utils_folder = os.path.realpath(os.path.abspath(os.path.dirname(os.path.dirname(__file__))))
31 if utils_folder
not in sys.path:
32 sys.path.insert(0, utils_folder)
33 from utils
import printArray
36 if __name__ ==
"__main__":
38 print(
"Merged numeric table example\n")
47 (0.0, 0.1, 0.2, 0.3, 0.4),
48 (1.0, 1.1, 1.2, 1.3, 1.4),
49 (2.0, 2.1, 2.2, 2.3, 2.4),
50 (3.0, 3.1, 3.2, 3.3, 3.4),
51 (4.0, 4.1, 4.2, 4.3, 4.4),
55 (0.5, 0.6, 0.7, 0.8, 0.9, 1),
56 (1.5, 1.6, 1.7, 1.8, 1.9, 2),
57 (2.5, 2.6, 2.7, 2.8, 2.9, 3),
58 (3.5, 3.6, 3.7, 3.8, 3.9, 4),
59 (4.5, 4.6, 4.7, 4.8, 4.9, 5),
63 dataTable1 = HomogenNumericTable(data1)
64 dataTable2 = HomogenNumericTable(data2)
67 dataTable = MergedNumericTable()
68 dataTable.addNumericTable(dataTable1)
69 dataTable.addNumericTable(dataTable2)
71 block = BlockDescriptor()
74 dataTable.getBlockOfRows(firstReadRow, nRead, readWrite, block)
76 block.getArray(), nFeatures1 + nFeatures2, block.getNumberOfRows(),
77 block.getNumberOfColumns(),
"Print 1 row from merged numeric table as double:"
81 row = block.getArray()
82 for i
in range(nFeatures1 + nFeatures2):
83 row[0][i] *= row[0][i]
84 dataTable.releaseBlockOfRows(block)
87 dataTable1.getBlockOfRows(firstReadRow, nRead, readOnly, block)
89 block.getArray(), nFeatures1, block.getNumberOfRows(),
90 block.getNumberOfColumns(),
"Print 1 row from first homogen numeric table as double:"
92 dataTable1.releaseBlockOfRows(block)
94 dataTable2.getBlockOfRows(firstReadRow, nRead, readOnly, block)
96 block.getArray(), nFeatures2, block.getNumberOfRows(),
97 block.getNumberOfColumns(),
"Print 1 row from second homogen numeric table as double:"
99 dataTable2.releaseBlockOfRows(block)