{ "info": { "author": "partitionby", "author_email": "partitionby@protonmail.ch", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Split numpy arrays into partitions by one or multiple columns and apply window function to each partition.\n\n\nThis module tries to replicate `select window_function() over (partition by ... order by ...) ...` functionality, commonly found in SQL databases.\n\nThe following window functions are available out of the box: `row_number()`, `top()`, `avg()`. \n\n\n## Usage examples:\n\n```\n >>> from partition import apply_over_partition\n >>> from partition.window import row_number, top, avg\n\n >>> data = np.array([[1,1,3], [2,2,3], [1,1,4]], dtype=np.float32)\n >>> partition_by_col_indexes = (0, 1)\n >>> value_col_indexes = (2,)\n >>> value_ordering = (-1,) # descending order\n >>> f = avg\n >>> f_kwargs = dict(vcol=2, top_n=2)\n >>> apply_over_partition(data=data, partition_by_col_indexes=partition_by_col_indexes, value_col_indexes=value_col_indexes, value_ordering=value_ordering, f=f, f_kwargs=f_kwargs)\n array([3.5, 3. , 3.5])\n\n >>> f = avg\n >>> f_kwargs = dict(vcol=2, top_n=1)\n >>> apply_over_partition(data=data, partition_by_col_indexes=partition_by_col_indexes, value_col_indexes=value_col_indexes, value_ordering=value_ordering, f=f, f_kwargs=f_kwargs)\n array([4., 3., 4.])\n\n >>> f = row_number\n >>> f_kwargs = dict()\n >>> apply_over_partition(data=data, partition_by_col_indexes=partition_by_col_indexes, value_col_indexes=value_col_indexes, value_ordering=value_ordering, f=f, f_kwargs=f_kwargs)\n array([1, 0, 0])\n\n >>> f = top\n >>> f_kwargs = dict(n=1)\n >>> apply_over_partition(data=data, partition_by_col_indexes=partition_by_col_indexes, value_col_indexes=value_col_indexes, value_ordering=value_ordering, f=f, f_kwargs=f_kwargs)\n array([False, True, True])\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/partitionby/numpy-partition", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "numpy-partition", "package_url": "https://pypi.org/project/numpy-partition/", "platform": "", "project_url": "https://pypi.org/project/numpy-partition/", "project_urls": { "Homepage": "https://github.com/partitionby/numpy-partition" }, "release_url": "https://pypi.org/project/numpy-partition/1.18.9/", "requires_dist": null, "requires_python": "", "summary": "SQL PARTITION BY and window functions for NumPy", "version": "1.18.9" }, "last_serial": 5245555, "releases": { "1.18.3": [ { "comment_text": "", "digests": { "md5": "ebd121f2a034ad0278941b30ab120120", "sha256": "7627d091e22c6f099ff01791a952ce4a83cf0b9e3fc2c11d6cadfda0204d1c52" }, "downloads": -1, "filename": "numpy-partition-1.18.3.tar.gz", "has_sig": false, "md5_digest": "ebd121f2a034ad0278941b30ab120120", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2844, "upload_time": "2019-05-09T01:46:04", "url": "https://files.pythonhosted.org/packages/6d/2b/ba51f266648f2f4f380511b61f0f9a04d0bc46e616fcfb7a87809d092a4b/numpy-partition-1.18.3.tar.gz" } ], "1.18.7": [ { "comment_text": "", "digests": { "md5": "1665c69666eca1b40ef7a1fd2639d390", "sha256": "47075d4614acd7e071dcf50dc243445e0a7828f2ab4f1dcbe91eb71bf95967ea" }, "downloads": -1, "filename": "numpy-partition-1.18.7.tar.gz", "has_sig": false, "md5_digest": "1665c69666eca1b40ef7a1fd2639d390", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2846, "upload_time": "2019-05-09T02:49:49", "url": "https://files.pythonhosted.org/packages/3e/29/f1be459c7b78353f997a03d3fd64123ec79a09777878d75b4ca6fe6e8a20/numpy-partition-1.18.7.tar.gz" } ], "1.18.9": [ { "comment_text": "", "digests": { "md5": "d7f40a2ea8e8155506a7da215ca29412", "sha256": "137bd23de00e776acff36011575ea9df1ca36b4661424ea914bd068e7a722091" }, "downloads": -1, "filename": "numpy-partition-1.18.9.tar.gz", "has_sig": false, "md5_digest": "d7f40a2ea8e8155506a7da215ca29412", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2860, "upload_time": "2019-05-09T03:27:23", "url": "https://files.pythonhosted.org/packages/b1/18/bdf87482d92a21574326ec41307aa97e38455595d41042f7037c90685b64/numpy-partition-1.18.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d7f40a2ea8e8155506a7da215ca29412", "sha256": "137bd23de00e776acff36011575ea9df1ca36b4661424ea914bd068e7a722091" }, "downloads": -1, "filename": "numpy-partition-1.18.9.tar.gz", "has_sig": false, "md5_digest": "d7f40a2ea8e8155506a7da215ca29412", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2860, "upload_time": "2019-05-09T03:27:23", "url": "https://files.pythonhosted.org/packages/b1/18/bdf87482d92a21574326ec41307aa97e38455595d41042f7037c90685b64/numpy-partition-1.18.9.tar.gz" } ] }