{ "info": { "author": "Hunan Rostomyan", "author_email": "hunan131@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Vector\n\n```python\nfrom abel.linalg.vector import Vector\n\na, b = Vector([1, 2]), Vector([3, 4])\nc, d = Vector([1, 2, 3]), Vector([4, 5, 6])\n\nassert a.shape == b.shape == (1, 2)\nassert c.shape == d.shape == (1, 3)\n```\n\n#### Addition\n\n```python\nassert a + a == Vector([2, 4])\nassert a + b == Vector([4, 6])\nassert b + b == Vector([6, 8])\n```\n\n#### Subtraction\n\n```python\nassert a - b == Vector([-2, -2])\nassert b - a == Vector([2, 2])\n```\n\n#### Scaling\n\n```python\nassert a * 5 == Vector([5, 10])\nassert 5 * a == Vector([5, 10])\nassert a / 2 == Vector([0.5, 1.0])\n```\n\n#### Dot (inner) product\n\n```python\nassert a @ b == 11\nassert a @ a == 5\n```\n\n#### Norm (length)\n\n```python\nassert a.norm() - 2.236 < 0.001\nassert b.norm() - 5 < 0.001\n```\n\n#### Angle\n\n```python\nassert Vector.angle(a, a) < 0.001\nassert Vector.angle(a, b) - 0.1799 < 0.001\nassert Vector.angle(a, b) == Vector.angle(b, a)\n```\n\n#### Vector projection\n\n```python\nassert Vector.proj(a, a) == a\nassert Vector.proj(a, b) == Vector([1.32, 1.76])\nassert Vector.proj(b, a) == Vector([2.2, 4.4])\n```\n\n#### Scalar projection\n\n```python\nassert Vector.scalproj(a, b) - 4.919 < 0.01\nassert Vector.scalproj(b, a) - 2.2 < 0.01\nassert Vector.scalproj(a, a) - 2.236 < 0.01\nassert Vector.scalproj(b, b) - 5 < 0.1\n```\n\n#### Cross product\n\n```python\nassert Vector.cross(c, d) == Vector([-3, 6, -3])\n```\n\n#### Average (arithmetic mean)\n\n```python\nassert Vector.average(Vector([2, 1]), Vector([4, 2])) == Vector([3.0, 1.5])\n```\n\n#### Collinearity\n\nVectors are collinear iff one is a scalar multiple of the other.\n\n```python\nassert Vector.collinear(Vector([2, 1]), Vector([4, 2]))\nassert Vector.collinear(Vector([-3, 4, 1]), Vector([-15, 20, 5]))\nassert not Vector.collinear(Vector([0, 1]), Vector([1, 0]))\n```\n\n#### Linear independence\n\nA set of vectors is linearly independent iff all vectors in it are pairwise non-collinear.\n\n```python\nassert Vector.linindep(Vector([0, 1]), Vector([1, 0]))\nassert Vector.linindep(Vector([1, 1]), Vector([2, 1]))\nassert not Vector.linindep(Vector([1, 2, 3]), Vector([0, 0, 1]), Vector([0, 0, 2]))\n```\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/hunan-rostomyan/abel", "keywords": "", "license": "BSD 3-clause", "maintainer": "", "maintainer_email": "", "name": "abel", "package_url": "https://pypi.org/project/abel/", "platform": "", "project_url": "https://pypi.org/project/abel/", "project_urls": { "Homepage": "https://github.com/hunan-rostomyan/abel" }, "release_url": "https://pypi.org/project/abel/0.0.6/", "requires_dist": null, "requires_python": "", "summary": "Machine learning components", "version": "0.0.6" }, "last_serial": 4021755, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "063664c97d31d657407ecad6fe3cb3b7", "sha256": "d993cea4d453d3b2d60d6691495c37ffc184da97c9776ef12589a9b923b75673" }, "downloads": -1, "filename": "abel-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "063664c97d31d657407ecad6fe3cb3b7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 1321, "upload_time": "2018-06-30T18:41:03", "url": "https://files.pythonhosted.org/packages/73/1b/3cbe443fd6f5ca9ffd049f389124dab6ff109c74e4305cb17e9c9b8657cb/abel-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b849914ce198a2ac30e5dd85fb08e1d5", "sha256": "8769f77721437c01e96519da8f5fa94ebe35c9c3fa3694cfa657a49511a15ba1" }, "downloads": -1, "filename": "abel-0.0.1.tar.gz", "has_sig": false, "md5_digest": "b849914ce198a2ac30e5dd85fb08e1d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1003, "upload_time": "2018-06-30T18:41:04", "url": "https://files.pythonhosted.org/packages/69/4a/d7eee469e9311fb719fff671fad45332da9b9cea8c82ad9c6ec6379e82a3/abel-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "519b91294036effdcad2e5b5696756c5", "sha256": "f6a47607a8ca9e32b22da92a01499537912ec6b98097a84181c39c007bb49057" }, "downloads": -1, "filename": "abel-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "519b91294036effdcad2e5b5696756c5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 2713, "upload_time": "2018-06-30T23:47:24", "url": "https://files.pythonhosted.org/packages/f9/bc/2afb14e624d13471609c3214434c7ac68b37759c456c8237eba7ddb52335/abel-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dcdbe55271f7acb54aa47ca9a2dabc5c", "sha256": "6a338441e0358061a3c63589435850e0912cc8544ee7d0f15b25af834d51f488" }, "downloads": -1, "filename": "abel-0.0.2.tar.gz", "has_sig": false, "md5_digest": "dcdbe55271f7acb54aa47ca9a2dabc5c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1943, "upload_time": "2018-06-30T23:47:25", "url": "https://files.pythonhosted.org/packages/c2/ee/15fa11ac53b5197843792a5460b8fd0822414faaddc625c93f6e664d6698/abel-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "3f2fc236499c3b93fd94c36aae81e630", "sha256": "56014980238d93c3251c90af7999a2641c7796c2a7c1e073d8c5ff627baeef87" }, "downloads": -1, "filename": "abel-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "3f2fc236499c3b93fd94c36aae81e630", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3187, "upload_time": "2018-07-01T00:09:04", "url": "https://files.pythonhosted.org/packages/72/ef/e2ca1ea9941093031ce7269ce04f6d7e2d33574b59f209b040c3e2c7f72a/abel-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6325900264679ce28d5f3ecb1de086f9", "sha256": "36206e54d8587d4c0c09c6f3f95774ff417c75fe6a2a284a9cb50e7dd685c819" }, "downloads": -1, "filename": "abel-0.0.3.tar.gz", "has_sig": false, "md5_digest": "6325900264679ce28d5f3ecb1de086f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2446, "upload_time": "2018-07-01T00:09:05", "url": "https://files.pythonhosted.org/packages/53/b9/406750ccbc449340d238cecaf4ef17e483d141a7f3cd41c8dd19fccaeb49/abel-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "9eb72bbdbd5ad0e347efe4a62bde5e8a", "sha256": "b2138eef4144f9b58ab849bea0bca7d779f31d7f5f9559a48cdb8e11dcfc6ccd" }, "downloads": -1, "filename": "abel-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "9eb72bbdbd5ad0e347efe4a62bde5e8a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3188, "upload_time": "2018-07-01T00:13:42", "url": "https://files.pythonhosted.org/packages/55/4f/f8201a127fa89024d9d98ba8d23ee17bc9d15359a9b32196033f26e95274/abel-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "154acd842a7a834feaf7fc3e07059cef", "sha256": "b01f1b7e7fc071c6a4d42362e7e5cbeeda3fcfab585f45b50ef968dece31f305" }, "downloads": -1, "filename": "abel-0.0.4.tar.gz", "has_sig": false, "md5_digest": "154acd842a7a834feaf7fc3e07059cef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2500, "upload_time": "2018-07-01T00:13:43", "url": "https://files.pythonhosted.org/packages/03/d7/0218e0262ff9483d61a7c06feab3dd8946b3a0ef32146c35e9b1c4987ac6/abel-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "0d2b8c8c98c5ff08fceb37d59e2a9c46", "sha256": "df8775827512ff7310b9cd6f78f4c64465332d9efa37da8ac0841e6cf03b397a" }, "downloads": -1, "filename": "abel-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "0d2b8c8c98c5ff08fceb37d59e2a9c46", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3195, "upload_time": "2018-07-01T00:36:29", "url": "https://files.pythonhosted.org/packages/c6/40/1af00a6def8b7d11cfad0196ca8996eca7b439a558dd3e798d29241eb885/abel-0.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "768783c63e5c8ea7c756541fcff6b5dc", "sha256": "dd02d5eb9ddc4f7353e2ef7f9806e09a51a89b5cc9d94dbe789f917b44f14104" }, "downloads": -1, "filename": "abel-0.0.5.tar.gz", "has_sig": false, "md5_digest": "768783c63e5c8ea7c756541fcff6b5dc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2524, "upload_time": "2018-07-01T00:36:30", "url": "https://files.pythonhosted.org/packages/9b/f4/929ddcef3f1b2e32ed2a915e61a64f21fae43ae1b53f83a662a75df64fff/abel-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "8982d1abdeafe24ad3b4a8b4ea7e6216", "sha256": "dc8aca51675c9d62674f1e75699f90f98bacefc1437af7371b85fb9b3d1d7676" }, "downloads": -1, "filename": "abel-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "8982d1abdeafe24ad3b4a8b4ea7e6216", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3753, "upload_time": "2018-07-02T06:32:22", "url": "https://files.pythonhosted.org/packages/f8/ec/4480b1b854b239a8350e726ef6759b6521e970d5335765fe86e48dc5a92d/abel-0.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "49648be711bff4af67e34182389279fd", "sha256": "4b1bbdd51a019a9b2f64f9cf1e57ae6929832f909154a53952635af3ca3e5e1e" }, "downloads": -1, "filename": "abel-0.0.6.tar.gz", "has_sig": false, "md5_digest": "49648be711bff4af67e34182389279fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3061, "upload_time": "2018-07-02T06:32:23", "url": "https://files.pythonhosted.org/packages/5a/b3/8830991bf9ae36e17626f27d557d07622cdf628a1c2773186f79174567ed/abel-0.0.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8982d1abdeafe24ad3b4a8b4ea7e6216", "sha256": "dc8aca51675c9d62674f1e75699f90f98bacefc1437af7371b85fb9b3d1d7676" }, "downloads": -1, "filename": "abel-0.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "8982d1abdeafe24ad3b4a8b4ea7e6216", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3753, "upload_time": "2018-07-02T06:32:22", "url": "https://files.pythonhosted.org/packages/f8/ec/4480b1b854b239a8350e726ef6759b6521e970d5335765fe86e48dc5a92d/abel-0.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "49648be711bff4af67e34182389279fd", "sha256": "4b1bbdd51a019a9b2f64f9cf1e57ae6929832f909154a53952635af3ca3e5e1e" }, "downloads": -1, "filename": "abel-0.0.6.tar.gz", "has_sig": false, "md5_digest": "49648be711bff4af67e34182389279fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3061, "upload_time": "2018-07-02T06:32:23", "url": "https://files.pythonhosted.org/packages/5a/b3/8830991bf9ae36e17626f27d557d07622cdf628a1c2773186f79174567ed/abel-0.0.6.tar.gz" } ] }