{"id":150,"date":"2020-12-20T14:36:50","date_gmt":"2020-12-20T14:36:50","guid":{"rendered":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/?post_type=chapter&#038;p=150"},"modified":"2020-12-21T21:34:13","modified_gmt":"2020-12-21T21:34:13","slug":"numpy-kahemootmelised-jarjendid","status":"publish","type":"chapter","link":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/chapter\/numpy-kahemootmelised-jarjendid\/","title":{"raw":"NumPy kahem\u00f5\u00f5tmelised j\u00e4rjendid","rendered":"NumPy kahem\u00f5\u00f5tmelised j\u00e4rjendid"},"content":{"raw":"Peamiselt kasutatakse andmet\u00f6\u00f6tluses kahem\u00f5\u00f5tmelisi j\u00e4rjendeid, kus andmetabeleid saab kirjutada kahem\u00f5\u00f5tmelise j\u00e4rjendite kujul. Kahem\u00f5\u00f5tmeline j\u00e4rjend on j\u00e4rjend, mille elemendid on omakorda j\u00e4rjendid. N\u00e4iteks loome kahem\u00f5\u00f5tmelise j\u00e4rjendi x, millele on kaks elementi ehk kaks rida.\r\n<table class=\"aligncenter\" style=\"border: none;width: 653px\">\r\n<tbody>\r\n<tr>\r\n<td style=\"width: 300px\">\r\n<pre>x\u00a0 = [<span style=\"background-color: #f9cb9c\">[1, 2, 3]<\/span>, <span style=\"background-color: #c9daf8\">[4, 5, 6]<\/span>]<\/pre>\r\n<\/td>\r\n<td style=\"width: 100px;font-size: 40px;color: #666666\">\u2192<\/td>\r\n<td style=\"width: 200px\">\r\n<div align=\"center\">\r\n<table class=\"grid aligncenter\">\r\n<tbody>\r\n<tr style=\"height: 20px;background-color: #f9cb9c\">\r\n<td style=\"height: 30px;width: 30px;font-family: 'Lucida Console', 'Courier New', monospace;text-align: center;vertical-align: middle\"><strong>1<\/strong><\/td>\r\n<td style=\"height: 30px;width: 30px;text-align: center;font-family: 'Lucida Console', 'Courier New', monospace;vertical-align: middle\"><strong>2<\/strong><\/td>\r\n<td style=\"height: 30px;width: 30px;text-align: center;font-family: 'Lucida Console', 'Courier New', monospace;vertical-align: middle\"><strong>3<\/strong><\/td>\r\n<\/tr>\r\n<tr style=\"height: 20px;background-color: #c9daf8\">\r\n<td style=\"height: 30px;width: 30px;text-align: center;font-family: 'Lucida Console', 'Courier New', monospace;vertical-align: middle\"><strong>4<\/strong><\/td>\r\n<td style=\"height: 30px;width: 30px;text-align: center;font-family: 'Lucida Console', 'Courier New', monospace;vertical-align: middle\"><strong>5<\/strong><\/td>\r\n<td style=\"height: 30px;width: 30px;text-align: center;font-family: 'Lucida Console', 'Courier New', monospace;vertical-align: middle\"><strong>6<\/strong><\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n<\/div><\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\nKahem\u00f5\u00f5tmelisi j\u00e4rjendeid nimetatakse ka maatriksiteks. Pythoni kahem\u00f5\u00f5tmeliste j\u00e4rjendite kohta loe \u00f5piku peat\u00fckist <a href=\"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/chapter\/kahemootmelinejarjend\/\">Kahem\u00f5\u00f5tmeline j\u00e4rjend<\/a>.\r\n<h2>J\u00e4rjendi loomine<\/h2>\r\nKahem\u00f5\u00f5tmelise Numpy j\u00e4rjendi loomine k\u00e4ib sarnaselt \u00fchem\u00f5\u00f5tmelise j\u00e4rjendi loomisele, kuid funktsiooni <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">array<\/code> argumendiks on seekord kahem\u00f5\u00f5tmeline j\u00e4rjend.\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\"># NumPy j\u00e4rjendi loomine ja v\u00e4ljastamine\r\nimport numpy as np\r\n\r\nb = np.array([[1, 2, 3],[4, 5, 6]])\r\nprint(b)\r\n\r\n<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n\u00a0 [[1 2 3]\r\n\u00a0 [4 5 6]]<\/pre>\r\n! \u00a0Numpy kuvab v\u00e4ljastamisel kahem\u00f5\u00f5tmelised j\u00e4rjendid ridade kaupa, et oleks lihtsam lugeda.\r\n<h2>J\u00e4rjendi suurus<\/h2>\r\nNumPy kahem\u00f5\u00f5tmelise j\u00e4rjendi elementide arvu saab teada, kui kasutada size funktsiooni.\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">b = np.array([[1, 2, 3],[4, 5, 6]])\r\nprint(\"J\u00e4rjendi suurus: \", b.size)<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n\u00a0 J\u00e4rjendi suurus:\u00a0 6<\/pre>\r\nKuna tegemist on kahem\u00f5\u00f5tmelise j\u00e4rjendiga, siis on sellel nii read kui ka veerud. Rida ja veergude arve nimetatakse ka j\u00e4rjendi m\u00f5\u00f5tmeteks. N\u00e4iteks j\u00e4rjendi <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">b<\/code> m\u00f5\u00f5tmed on 2 ja 3, sellel on 2 rida ja 3 veergu.\r\n<table class=\"aligncenter\" style=\"border: none;height: 133px\">\r\n<tbody>\r\n<tr style=\"height: 14px\">\r\n<td style=\"text-align: center;height: 14px;width: 200px\">Read: <strong>2<\/strong><\/td>\r\n<td style=\"text-align: center;height: 14px;width: 200px\">Veerud: <strong>3<\/strong><\/td>\r\n<\/tr>\r\n<tr style=\"height: 119px\">\r\n<td style=\"height: 119px;width: 260.062px\">\r\n<table class=\"aligncenter\">\r\n<tbody>\r\n<tr style=\"border: 2px solid red\">\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">1<\/td>\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">2<\/td>\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">3<\/td>\r\n<\/tr>\r\n<tr style=\"border: 2px solid red\">\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">4<\/td>\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">5<\/td>\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">6<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n<\/td>\r\n<td style=\"height: 119px;width: 404.062px\">\r\n<table class=\"aligncenter\" style=\"border: 2px solid red\">\r\n<tbody>\r\n<tr style=\"border: 1px solid #b7b7b7\">\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">1<\/td>\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">2<\/td>\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">3<\/td>\r\n<\/tr>\r\n<tr>\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">4<\/td>\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">5<\/td>\r\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">6<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\n<\/td>\r\n<\/tr>\r\n<\/tbody>\r\n<\/table>\r\nNumPyl on j\u00e4rjendi m\u00f5\u00f5tmete leidmiseks vastav funktsioon. Selleks, et teada saada j\u00e4rjendi m\u00f5\u00f5tmeid, saab kasutada funktsioon <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">shape<\/code>, mis tagastab enniku, mille esimene element on ridade arv ja teine element on veergude arv.\r\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">b = np.array([[1, 2, 3], [4, 5, 6]])\r\nprint(\"J\u00e4rjendi m\u00f5\u00f5tmed: \", b.shape)<\/pre>\r\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  J\u00e4rjendi m\u00f5\u00f5tmed:\u00a0 (2, 3)<\/pre>\r\nJ\u00e4rjendi m\u00f5\u00f5tmete leidmine on kasulik siis, kui me t\u00e4pselt ei tea kui palju on tabelis ridu v\u00f5i veerge, n\u00e4iteks andmetabeli lugemisel failist ei pruugi me teada, kui palju on selles andmestikus veerge v\u00f5i ridu.\r\n\r\n&nbsp;","rendered":"<p>Peamiselt kasutatakse andmet\u00f6\u00f6tluses kahem\u00f5\u00f5tmelisi j\u00e4rjendeid, kus andmetabeleid saab kirjutada kahem\u00f5\u00f5tmelise j\u00e4rjendite kujul. Kahem\u00f5\u00f5tmeline j\u00e4rjend on j\u00e4rjend, mille elemendid on omakorda j\u00e4rjendid. N\u00e4iteks loome kahem\u00f5\u00f5tmelise j\u00e4rjendi x, millele on kaks elementi ehk kaks rida.<\/p>\n<table class=\"aligncenter\" style=\"border: none;width: 653px\">\n<tbody>\n<tr>\n<td style=\"width: 300px\">\n<pre>x\u00a0 = [<span style=\"background-color: #f9cb9c\">[1, 2, 3]<\/span>, <span style=\"background-color: #c9daf8\">[4, 5, 6]<\/span>]<\/pre>\n<\/td>\n<td style=\"width: 100px;font-size: 40px;color: #666666\">\u2192<\/td>\n<td style=\"width: 200px\">\n<div style=\"margin: auto;\">\n<table class=\"grid aligncenter\">\n<tbody>\n<tr style=\"height: 20px;background-color: #f9cb9c\">\n<td style=\"height: 30px;width: 30px;font-family: 'Lucida Console', 'Courier New', monospace;text-align: center;vertical-align: middle\"><strong>1<\/strong><\/td>\n<td style=\"height: 30px;width: 30px;text-align: center;font-family: 'Lucida Console', 'Courier New', monospace;vertical-align: middle\"><strong>2<\/strong><\/td>\n<td style=\"height: 30px;width: 30px;text-align: center;font-family: 'Lucida Console', 'Courier New', monospace;vertical-align: middle\"><strong>3<\/strong><\/td>\n<\/tr>\n<tr style=\"height: 20px;background-color: #c9daf8\">\n<td style=\"height: 30px;width: 30px;text-align: center;font-family: 'Lucida Console', 'Courier New', monospace;vertical-align: middle\"><strong>4<\/strong><\/td>\n<td style=\"height: 30px;width: 30px;text-align: center;font-family: 'Lucida Console', 'Courier New', monospace;vertical-align: middle\"><strong>5<\/strong><\/td>\n<td style=\"height: 30px;width: 30px;text-align: center;font-family: 'Lucida Console', 'Courier New', monospace;vertical-align: middle\"><strong>6<\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Kahem\u00f5\u00f5tmelisi j\u00e4rjendeid nimetatakse ka maatriksiteks. Pythoni kahem\u00f5\u00f5tmeliste j\u00e4rjendite kohta loe \u00f5piku peat\u00fckist <a href=\"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara\/chapter\/kahemootmelinejarjend\/\">Kahem\u00f5\u00f5tmeline j\u00e4rjend<\/a>.<\/p>\n<h2>J\u00e4rjendi loomine<\/h2>\n<p>Kahem\u00f5\u00f5tmelise Numpy j\u00e4rjendi loomine k\u00e4ib sarnaselt \u00fchem\u00f5\u00f5tmelise j\u00e4rjendi loomisele, kuid funktsiooni <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">array<\/code> argumendiks on seekord kahem\u00f5\u00f5tmeline j\u00e4rjend.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\"># NumPy j\u00e4rjendi loomine ja v\u00e4ljastamine\r\nimport numpy as np\r\n\r\nb = np.array([[1, 2, 3],[4, 5, 6]])\r\nprint(b)\r\n\r\n<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n\u00a0 [[1 2 3]\r\n\u00a0 [4 5 6]]<\/pre>\n<p>! \u00a0Numpy kuvab v\u00e4ljastamisel kahem\u00f5\u00f5tmelised j\u00e4rjendid ridade kaupa, et oleks lihtsam lugeda.<\/p>\n<h2>J\u00e4rjendi suurus<\/h2>\n<p>NumPy kahem\u00f5\u00f5tmelise j\u00e4rjendi elementide arvu saab teada, kui kasutada size funktsiooni.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">b = np.array([[1, 2, 3],[4, 5, 6]])\r\nprint(\"J\u00e4rjendi suurus: \", b.size)<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n\u00a0 J\u00e4rjendi suurus:\u00a0 6<\/pre>\n<p>Kuna tegemist on kahem\u00f5\u00f5tmelise j\u00e4rjendiga, siis on sellel nii read kui ka veerud. Rida ja veergude arve nimetatakse ka j\u00e4rjendi m\u00f5\u00f5tmeteks. N\u00e4iteks j\u00e4rjendi <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">b<\/code> m\u00f5\u00f5tmed on 2 ja 3, sellel on 2 rida ja 3 veergu.<\/p>\n<table class=\"aligncenter\" style=\"border: none;height: 133px\">\n<tbody>\n<tr style=\"height: 14px\">\n<td style=\"text-align: center;height: 14px;width: 200px\">Read: <strong>2<\/strong><\/td>\n<td style=\"text-align: center;height: 14px;width: 200px\">Veerud: <strong>3<\/strong><\/td>\n<\/tr>\n<tr style=\"height: 119px\">\n<td style=\"height: 119px;width: 260.062px\">\n<table class=\"aligncenter\">\n<tbody>\n<tr style=\"border: 2px solid red\">\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">1<\/td>\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">2<\/td>\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">3<\/td>\n<\/tr>\n<tr style=\"border: 2px solid red\">\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">4<\/td>\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">5<\/td>\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 1px solid #b7b7b7\">6<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/td>\n<td style=\"height: 119px;width: 404.062px\">\n<table class=\"aligncenter\" style=\"border: 2px solid red\">\n<tbody>\n<tr style=\"border: 1px solid #b7b7b7\">\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">1<\/td>\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">2<\/td>\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">3<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">4<\/td>\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">5<\/td>\n<td style=\"width: 30px;height: 30px;text-align: center;vertical-align: middle;border-right: 2px solid red\">6<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>NumPyl on j\u00e4rjendi m\u00f5\u00f5tmete leidmiseks vastav funktsioon. Selleks, et teada saada j\u00e4rjendi m\u00f5\u00f5tmeid, saab kasutada funktsioon <code class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\">shape<\/code>, mis tagastab enniku, mille esimene element on ridade arv ja teine element on veergude arv.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"bootstrap4\" data-enlighter-linenumbers=\"false\">b = np.array([[1, 2, 3], [4, 5, 6]])\r\nprint(\"J\u00e4rjendi m\u00f5\u00f5tmed: \", b.shape)<\/pre>\n<pre><span style=\"color: #3366ff\"><strong>&gt;&gt;&gt;<\/strong><\/span> <span style=\"color: #999999\">%Run guido.py<\/span>\r\n  J\u00e4rjendi m\u00f5\u00f5tmed:\u00a0 (2, 3)<\/pre>\n<p>J\u00e4rjendi m\u00f5\u00f5tmete leidmine on kasulik siis, kui me t\u00e4pselt ei tea kui palju on tabelis ridu v\u00f5i veerge, n\u00e4iteks andmetabeli lugemisel failist ei pruugi me teada, kui palju on selles andmestikus veerge v\u00f5i ridu.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"author":16,"menu_order":7,"template":"","meta":{"pb_show_title":"on","pb_short_title":"","pb_subtitle":"","pb_authors":[],"pb_section_license":""},"chapter-type":[],"contributor":[],"license":[],"class_list":["post-150","chapter","type-chapter","status-publish","hentry"],"part":90,"_links":{"self":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapters\/150","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapters"}],"about":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/wp\/v2\/types\/chapter"}],"author":[{"embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/wp\/v2\/users\/16"}],"version-history":[{"count":7,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapters\/150\/revisions"}],"predecessor-version":[{"id":271,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapters\/150\/revisions\/271"}],"part":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/parts\/90"}],"metadata":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapters\/150\/metadata\/"}],"wp:attachment":[{"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/wp\/v2\/media?parent=150"}],"wp:term":[{"taxonomy":"chapter-type","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/pressbooks\/v2\/chapter-type?post=150"},{"taxonomy":"contributor","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/wp\/v2\/contributor?post=150"},{"taxonomy":"license","embeddable":true,"href":"https:\/\/web.htk.tlu.ee\/digitaru\/tarkvara2\/wp-json\/wp\/v2\/license?post=150"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}