50 from daal.data_management
import (
51 HomogenNumericTable, MergedNumericTable, BlockDescriptor, readWrite, readOnly
54 utils_folder = os.path.realpath(os.path.abspath(os.path.dirname(os.path.dirname(__file__))))
55 if utils_folder
not in sys.path:
56 sys.path.insert(0, utils_folder)
57 from utils
import printArray
60 if __name__ ==
"__main__":
62 print(
"Merged numeric table example\n")
71 (0.0, 0.1, 0.2, 0.3, 0.4),
72 (1.0, 1.1, 1.2, 1.3, 1.4),
73 (2.0, 2.1, 2.2, 2.3, 2.4),
74 (3.0, 3.1, 3.2, 3.3, 3.4),
75 (4.0, 4.1, 4.2, 4.3, 4.4),
79 (0.5, 0.6, 0.7, 0.8, 0.9, 1),
80 (1.5, 1.6, 1.7, 1.8, 1.9, 2),
81 (2.5, 2.6, 2.7, 2.8, 2.9, 3),
82 (3.5, 3.6, 3.7, 3.8, 3.9, 4),
83 (4.5, 4.6, 4.7, 4.8, 4.9, 5),
87 dataTable1 = HomogenNumericTable(data1)
88 dataTable2 = HomogenNumericTable(data2)
91 dataTable = MergedNumericTable()
92 dataTable.addNumericTable(dataTable1)
93 dataTable.addNumericTable(dataTable2)
95 block = BlockDescriptor()
98 dataTable.getBlockOfRows(firstReadRow, nRead, readWrite, block)
100 block.getArray(), nFeatures1 + nFeatures2, block.getNumberOfRows(),
101 block.getNumberOfColumns(),
"Print 1 row from merged numeric table as double:" 105 row = block.getArray()
106 for i
in range(nFeatures1 + nFeatures2):
107 row[0][i] *= row[0][i]
108 dataTable.releaseBlockOfRows(block)
111 dataTable1.getBlockOfRows(firstReadRow, nRead, readOnly, block)
113 block.getArray(), nFeatures1, block.getNumberOfRows(),
114 block.getNumberOfColumns(),
"Print 1 row from first homogen numeric table as double:" 116 dataTable1.releaseBlockOfRows(block)
118 dataTable2.getBlockOfRows(firstReadRow, nRead, readOnly, block)
120 block.getArray(), nFeatures2, block.getNumberOfRows(),
121 block.getNumberOfColumns(),
"Print 1 row from second homogen numeric table as double:" 123 dataTable2.releaseBlockOfRows(block)