{"id":1716,"date":"2022-12-13T19:50:12","date_gmt":"2022-12-14T03:50:12","guid":{"rendered":"https:\/\/gantovnik.com\/bio-tips\/?p=1716"},"modified":"2022-12-13T19:50:12","modified_gmt":"2022-12-14T03:50:12","slug":"324-matrix-operations-using-numpy","status":"publish","type":"post","link":"https:\/\/gantovnik.com\/bio-tips\/2022\/12\/324-matrix-operations-using-numpy\/","title":{"rendered":"#324 Matrix operations using numpy"},"content":{"rendered":"<p>The numpy.matrix method is syntactically the simplest. However, numpy.array is the most practical.<\/p>\n<pre class=\"brush: python; title: ; notranslate\" title=\"\">\r\nimport numpy as np\r\nA = np.matrix(&#x5B;&#x5B;3,6,-5],\r\n              &#x5B;1,-3,2],\r\n              &#x5B;5,-1,4]])\r\n\r\nb = np.matrix(&#x5B;&#x5B;12],\r\n              &#x5B;-2],\r\n              &#x5B;10]])\r\n\r\nx = A**(-1) * b\r\nprint(x)\r\n#output:\r\n#&#x5B;&#x5B;1.75]\r\n# &#x5B;1.75]\r\n# &#x5B;0.75]]    \r\n\r\nA = np.array(&#x5B;&#x5B;3,6,-5],\r\n              &#x5B;1,-3,2],\r\n              &#x5B;5,-1,4]])\r\n\r\nb = np.array(&#x5B;&#x5B;12],\r\n              &#x5B;-2],\r\n              &#x5B;10]])\r\n\r\nx = np.linalg.inv(A).dot(b)\r\nprint(x)\r\n#output:\r\n#&#x5B;&#x5B;1.75]\r\n# &#x5B;1.75]\r\n# &#x5B;0.75]]    \r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>The numpy.matrix method is syntactically the simplest. However, numpy.array is the most practical. import numpy as np A = np.matrix(&#x5B;&#x5B;3,6,-5], &#x5B;1,-3,2], &#x5B;5,-1,4]]) b = np.matrix(&#x5B;&#x5B;12], &#x5B;-2], &#x5B;10]]) x = A**(-1) * b print(x) #output: #&#x5B;&#x5B;1.75] # &#x5B;1.75] # &#x5B;0.75]] A = np.array(&#x5B;&#x5B;3,6,-5], &#x5B;1,-3,2], &#x5B;5,-1,4]]) b = np.array(&#x5B;&#x5B;12], &#x5B;-2], &#x5B;10]]) x = np.linalg.inv(A).dot(b) print(x) #output: #&#x5B;&#x5B;1.75] [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","_lmt_disableupdate":"yes","_lmt_disable":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[2],"tags":[61],"class_list":["post-1716","post","type-post","status-publish","format-standard","hentry","category-python","tag-numpy"],"modified_by":"gantovnik","jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p8bH0k-rG","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":117,"url":"https:\/\/gantovnik.com\/bio-tips\/2019\/01\/optimization-with-contraints\/","url_meta":{"origin":1716,"position":0},"title":"#22: Optimization with constraints using SciPy in python","author":"gantovnik","date":"2019-01-03","format":false,"excerpt":"[code language=\"python\"] import os import matplotlib.pyplot as plt import numpy as np from scipy.optimize import minimize os.chdir(r'D:\\data\\scripts\\web1\\ex22') os.getcwd() def f(X): return (X[0]-1)2 + (X[1]-1)2 def g(X): return X[1]-1.75-(X[0]-0.75)**4 def func_X_Y_to_XY(f, X, Y): s = np.shape(X) return f(np.vstack([X.ravel(), Y.ravel()])).reshape(*s) x_opt=minimize(f,(0,0),method='BFGS').x print(x_opt) constraints = [dict(type='ineq', fun=g)] x_cons_opt = minimize(f, (0, 0), method='SLSQP',\u2026","rel":"","context":"In &quot;optimization&quot;","block_context":{"text":"optimization","link":"https:\/\/gantovnik.com\/bio-tips\/category\/optimization\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/gantovnik.com\/bio-tips\/wp-content\/uploads\/2019\/01\/example22.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/gantovnik.com\/bio-tips\/wp-content\/uploads\/2019\/01\/example22.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/gantovnik.com\/bio-tips\/wp-content\/uploads\/2019\/01\/example22.png?resize=525%2C300&ssl=1 1.5x"},"classes":[]},{"id":1114,"url":"https:\/\/gantovnik.com\/bio-tips\/2021\/11\/195-use-numpy-linalg-solve-to-solve-system-of-linear-equations\/","url_meta":{"origin":1716,"position":1},"title":"#195 Use numpy.linalg.solve to solve system of linear equations","author":"gantovnik","date":"2021-11-19","format":false,"excerpt":"[code language=\"python\"] import numpy as np A = np.array([[4, 3, -5],[-2, -4, 5],[8, 8, 0]]) y = np.array([2, 5, -3]) x = np.linalg.solve(A, y) print(x) [\/code] Result: [code language=\"python\"] [ 2.20833333 -2.58333333 -0.18333333] [\/code]","rel":"","context":"In &quot;python&quot;","block_context":{"text":"python","link":"https:\/\/gantovnik.com\/bio-tips\/category\/python\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2148,"url":"https:\/\/gantovnik.com\/bio-tips\/2024\/04\/419-random-permutations-using-numpy\/","url_meta":{"origin":1716,"position":2},"title":"#419 Random permutations using numpy","author":"gantovnik","date":"2024-04-21","format":false,"excerpt":"[code language=\"python\"] import numpy as np original_array = np.array([[1,2,3],[4,5,6],[7,8,9]]) permuted_rows = np.random.permutation(original_array) permuted_columns = np.random.permutation(original_array.T).T print(\"original array:\") print(original_array) print(\"permuted rows:\") print(permuted_rows) print(\"permuted columns:\") print(permuted_columns) [\/code] Output: [code language=\"python\"] original array: [[1 2 3] [4 5 6] [7 8 9]] permuted rows: [[4 5 6] [1 2 3] [7 8 9]]\u2026","rel":"","context":"In &quot;numpy&quot;","block_context":{"text":"numpy","link":"https:\/\/gantovnik.com\/bio-tips\/category\/python\/numpy\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":121,"url":"https:\/\/gantovnik.com\/bio-tips\/2019\/01\/polynomial-interpolation\/","url_meta":{"origin":1716,"position":3},"title":"Polynomial interpolation","author":"gantovnik","date":"2019-01-03","format":false,"excerpt":"import os import matplotlib.pyplot as plt import numpy as np from numpy import polynomial as P from scipy import linalg os.chdir(r'D:\\data\\scripts\\web1\\ex23') os.getcwd() x = np.array([1, 2, 3, 4]) y = np.array([1, 3, 5, 4]) deg = len(x) - 1 A = P.polynomial.polyvander(x, deg) c = linalg.solve(A, y) f1 = P.Polynomial(c)\u2026","rel":"","context":"In &quot;python&quot;","block_context":{"text":"python","link":"https:\/\/gantovnik.com\/bio-tips\/category\/python\/"},"img":{"alt_text":"example23","src":"https:\/\/i0.wp.com\/gantovnik.com\/bio-tips\/wp-content\/uploads\/2019\/01\/example23.png?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/gantovnik.com\/bio-tips\/wp-content\/uploads\/2019\/01\/example23.png?resize=350%2C200 1x, https:\/\/i0.wp.com\/gantovnik.com\/bio-tips\/wp-content\/uploads\/2019\/01\/example23.png?resize=525%2C300 1.5x"},"classes":[]},{"id":124,"url":"https:\/\/gantovnik.com\/bio-tips\/2019\/01\/polynomial-fit\/","url_meta":{"origin":1716,"position":4},"title":"Polynomial fit","author":"gantovnik","date":"2019-01-03","format":false,"excerpt":"import os import matplotlib.pyplot as plt import numpy as np from numpy import polynomial as P os.chdir(r'D:\\data\\scripts\\web1\\ex24') os.getcwd() x = np.array([1, 2, 3, 4]) y = np.array([1, 3, 5, 4]) f1 = P.Polynomial.fit(x, y, 1) f2 = P.Polynomial.fit(x, y, 2) f3 = P.Polynomial.fit(x, y, 3) xx = np.linspace(x.min(), x.max(), 100)\u2026","rel":"","context":"In &quot;python&quot;","block_context":{"text":"python","link":"https:\/\/gantovnik.com\/bio-tips\/category\/python\/"},"img":{"alt_text":"example24","src":"https:\/\/i0.wp.com\/gantovnik.com\/bio-tips\/wp-content\/uploads\/2019\/01\/example24.png?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/gantovnik.com\/bio-tips\/wp-content\/uploads\/2019\/01\/example24.png?resize=350%2C200 1x, https:\/\/i0.wp.com\/gantovnik.com\/bio-tips\/wp-content\/uploads\/2019\/01\/example24.png?resize=525%2C300 1.5x"},"classes":[]},{"id":1872,"url":"https:\/\/gantovnik.com\/bio-tips\/2023\/06\/352-optimization-using-genetic-algorithm-in-python\/","url_meta":{"origin":1716,"position":5},"title":"#352 Optimization using Genetic Algorithm in python","author":"gantovnik","date":"2023-06-28","format":false,"excerpt":"[code language=\"python\"] #pip install geneticalgorithm import numpy as np from geneticalgorithm import geneticalgorithm as ga # Define charateristics of variables: varbound=np.array([[0,1],[0,1]]) vartype=np.array([['real'],['real']]) # Define settings of the algorithm: algorithm_param = {'max_num_iteration': 100,\\ 'population_size':60,\\ 'mutation_probability':0.1,\\ 'elit_ratio': 0.01,\\ 'crossover_probability': 0.5,\\ 'parents_portion': 0.3,\\ 'crossover_type':'uniform',\\ 'max_iteration_without_improv':None} # Define your optimization model: def MyOptProb(X): y\u2026","rel":"","context":"In &quot;genetic algorithm&quot;","block_context":{"text":"genetic algorithm","link":"https:\/\/gantovnik.com\/bio-tips\/category\/genetic-algorithm\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/gantovnik.com\/bio-tips\/wp-content\/uploads\/2023\/06\/ga_history.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]}],"_links":{"self":[{"href":"https:\/\/gantovnik.com\/bio-tips\/wp-json\/wp\/v2\/posts\/1716","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gantovnik.com\/bio-tips\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gantovnik.com\/bio-tips\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gantovnik.com\/bio-tips\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gantovnik.com\/bio-tips\/wp-json\/wp\/v2\/comments?post=1716"}],"version-history":[{"count":0,"href":"https:\/\/gantovnik.com\/bio-tips\/wp-json\/wp\/v2\/posts\/1716\/revisions"}],"wp:attachment":[{"href":"https:\/\/gantovnik.com\/bio-tips\/wp-json\/wp\/v2\/media?parent=1716"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gantovnik.com\/bio-tips\/wp-json\/wp\/v2\/categories?post=1716"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gantovnik.com\/bio-tips\/wp-json\/wp\/v2\/tags?post=1716"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}