{ "info": { "author": "Chancy Kennedy", "author_email": "kennedychancy+fuzzyjoin@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8" ], "description": "fuzzyjoin\n=========\n\nJoin two tables by a fuzzy comparison of text columns.\n\nFeatures\n--------\n* Command line utility to quickly join CSV files.\n* Ngram blocking to reduce the total number of comparisons.\n* Pure python levenshtein edit distance using [pylev](https://github.com/toastdriven/pylev).\n* Fast levenshtein edit distance using [editdistance](https://github.com/aflc/editdistance).\n* License: [MIT](https://opensource.org/licenses/MIT)\n\n\nInstallation\n------------\n* Pure python: `pip install fuzzyjoin`\n* Optimized: `pip install fuzzyjoin[fast]`\n\n\nDescription\n-----------\nThe goal of this package is to provide a quick and convenient way to\njoin two tables on a pair of text columns, which often contain variations\nof names for the same entity. `fuzzyjoin` satisfies the simple and common case\nof joining by a single column from each table for datasets in the thousands of records.\n\nFor a more sophisticated and comprehensive treatment of the topic that will allow\nyou to join records using multiple fields, see the packages below:\n\n* [dedupe](https://github.com/dedupeio/dedupe)\n* [recordlinkage](https://recordlinkage.readthedocs.io/en/latest/about.html)\n\n\nCLI Help\n--------\n```bash\n\\> fuzzyjoin --help\n\nUsage: fuzzyjoin_cli.py [OPTIONS] LEFT_CSV RIGHT_CSV\n\n Inner join and by a fuzzy comparison of\n and .\n\nOptions:\n -f, --fields TEXT... [required]\n -t, --threshold FLOAT Only return matches above this score. [default: 0.7]\n -o, --output TEXT File to write the matches to.\n --multiples TEXT File for left IDs with multiple matches.\n --exclude TEXT Function used to exclude records. See:\n \n --collate TEXT Function used to collate . See:\n \n --compare TEXT Function used to compare records. See:\n \n --numbers-exact Numbers and order must match exactly.\n --numbers-permutation Numbers must match but may be out of order.\n --numbers-subset Numbers must be a subset.\n --ngram-size INTEGER The ngram size to create blocks with. [default: 3]\n --no-progress Do not show comparison progress.\n --debug Exit to PDB on exception.\n --yes Yes to all prompts.\n --help Show this message and exit.\n```\n\n\nCLI Usage\n---------\n\n```bash\n# Use field `name` from left.csv and field `full_name` from right.csv\n\\> fuzzyjoin --fields name full_name left.csv right.csv\n# Export rows with multiple matches from left.csv to a separate file.\n\\> fuzzyjoin --multiples multiples.csv --fields name full_name left.csv right.csv\n# Increase the ngram size, reducing execution time but removing tokens small than `ngram_size`\n# as possible matches.\n\\> fuzzyjoin --ngram-size 5 --fields name full_name left.csv right.csv\n# Ensure any numbers that appear are in both fields and in the same order.\n\\> fuzzyjoin --numbers-exact --fields name full_name left.csv right.csv\n# Ensure any numbers that appear are in both fields but may be in a different order.\n\\> fuzzyjoin --numbers-permutation --fields name full_name left.csv right.csv\n# Ensure numbers that appear in one field are at least a subset of the other.\n\\> fuzzyjoin --numbers-subset --fields name full_name left.csv right.csv\n# Use importable function `package.func` from PATH as the comparison function\n# instead of `fuzzyjoin.compare.default_compare`.\n\\> fuzzyjoin --compare package.func --fields name full_name left.csv right.csv\n```\n\nAPI Usage\n---------\n```python\nfrom fuzzyjoin import io\n\n# Specify which field to use from the left and right CSV files.\noptions = Options(\n field_1='name',\n field_2='full_name'\n)\nmatches = io.inner_join_csv_files('left.csv', 'right.csv', options)\nio.write_matches(matches, output_file='matches.csv')\n```\n\nTODO\n----\n- Test transformation and exclude functions.\n- Implement left join and full join.\n- Check that the ID is actually unique.\n- Add documentation.\n- Option to rename headers and disambiguate duplicate header names.\n\n\nHistory\n=======\n0.5.1 (2019-04-15)\n------------------\n* Update usage docs.\n* Rename key_* params to field_* for consistency.\n\n0.5.0 (2019-04-15)\n------------------\n* Removed ID field requirement.\n\n0.4.1 (2019-04-12)\n------------------\n* Options parameter.\n\n0.3.4 (2019-04-11)\n------------------\n* Fix function defaults.\n* Minor optimizations.\n* Additional CLI parameters.\n\n0.3.3 (2019-04-10)\n------------------\n* Cleanup checks.\n\n0.3.2 (2019-04-10)\n------------------\n* Include basic installation instructions.\n\n0.3.1 (2019-04-10)\n------------------\n* Minor README updates.\n\n\n0.3.0 (2019-04-10)\n------------------\n* Use editdistance if available, otherwise fallback to pylev.\n* Report progress by default.\n* Number comparison options.\n* Renamed get_multiples to filter_multiples.\n\n\n0.2.1 (2019-04-10)\n------------------\n* Additional docs and tests.\n\n0.2.0 (2019-04-09)\n------------------\n* Write multiples matches to a separate file.\n* Added types and docstrings.\n\n0.1.2 (2019-04-09)\n------------------\n* Duplicate release of 0.1.1\n\n0.1.1 (2019-04-09)\n------------------\n* First release on PyPI.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/chancyk/fuzzyjoin", "keywords": "fuzzyjoin", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "fuzzyjoin", "package_url": "https://pypi.org/project/fuzzyjoin/", "platform": "", "project_url": "https://pypi.org/project/fuzzyjoin/", "project_urls": { "Homepage": "https://github.com/chancyk/fuzzyjoin" }, "release_url": "https://pypi.org/project/fuzzyjoin/0.5.2/", "requires_dist": [ "Click (<8.0,>=7.0)", "pylev (<1.4.0,>=1.3.0)", "editdistance (<0.6.0,>=0.5.3) ; extra == 'fast'" ], "requires_python": "", "summary": "Join two tables by a fuzzy comparison of text columns.", "version": "0.5.2" }, "last_serial": 5147192, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "5445b351db1e777b93585ebd661ca313", "sha256": "e8faf20a840a6863d3f3050954857f49953d5c733e23828351cba2a1c245e665" }, "downloads": -1, "filename": "fuzzyjoin-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5445b351db1e777b93585ebd661ca313", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6516, "upload_time": "2019-04-10T00:10:29", "url": "https://files.pythonhosted.org/packages/3f/cb/d4d1f8d60173ad4abed00d55dd780b4800040d15ab703e004aba95ef36fe/fuzzyjoin-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "18d22aae614ec5f6ab5d3a3f99d4f4c2", "sha256": "f746a5eb4718ad39f1b0d079eac18f4d4a47fd153dd2083eb01bf28067c54d19" }, "downloads": -1, "filename": "fuzzyjoin-0.1.1.tar.gz", "has_sig": false, "md5_digest": "18d22aae614ec5f6ab5d3a3f99d4f4c2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5984, "upload_time": "2019-04-10T00:10:31", "url": "https://files.pythonhosted.org/packages/61/3c/f725f071690d083f818b139dc410f8cbc5fc30b9ea18038a794971c3b375/fuzzyjoin-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "9e9fd4fa62329c6577d5477ef884b542", "sha256": "e67d757b41a0ebb1068b4c22f372fcabb65d198178dd49166ea073f4d115d265" }, "downloads": -1, "filename": "fuzzyjoin-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9e9fd4fa62329c6577d5477ef884b542", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6516, "upload_time": "2019-04-10T00:11:04", "url": "https://files.pythonhosted.org/packages/a3/a2/b9c9c1228dee7da7702a09ab69159dcbe13779b27190361d322df5606cd2/fuzzyjoin-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0cfb7456d4fdb7cf7aada716306aad16", "sha256": "91af73d4c19fe32eb38f0036af370046e932a5d028384df3de46769ad3cc0a2a" }, "downloads": -1, "filename": "fuzzyjoin-0.1.2.tar.gz", "has_sig": false, "md5_digest": "0cfb7456d4fdb7cf7aada716306aad16", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5993, "upload_time": "2019-04-10T00:11:05", "url": "https://files.pythonhosted.org/packages/df/aa/8c2f7c066761506b18ac3ef08bdceeb065f5cffef72d049582aa7eadacc9/fuzzyjoin-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "47e1461beab3334a159fdaee4d3bc110", "sha256": "6fbcc246f827ea5a124b051e434174833ee096ee0f360c90b04b56398d466e79" }, "downloads": -1, "filename": "fuzzyjoin-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "47e1461beab3334a159fdaee4d3bc110", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7353, "upload_time": "2019-04-10T02:27:03", "url": "https://files.pythonhosted.org/packages/62/30/7f8e4fde3af9c128aa2002e9d3d370f19892094f3f568fec418a7aa33bd9/fuzzyjoin-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "726805a27ef30bd24613951d25981f7c", "sha256": "28c16c97c90c7c76962e872f9f331900c710bac6a99f4be4198f569bb959b5de" }, "downloads": -1, "filename": "fuzzyjoin-0.2.0.tar.gz", "has_sig": false, "md5_digest": "726805a27ef30bd24613951d25981f7c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6753, "upload_time": "2019-04-10T02:27:04", "url": "https://files.pythonhosted.org/packages/68/cd/8b611adcda290a10b0689b44658d3a2cec80f07c26c39c35d2e7706dfd74/fuzzyjoin-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "398f10f576b038b8c59c0a62a4e1e3a3", "sha256": "89b46d586e3bd6d2ef4da8ddb1d3e9b7bbaa02371b201b71c5be36e6afb7dd68" }, "downloads": -1, "filename": "fuzzyjoin-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "398f10f576b038b8c59c0a62a4e1e3a3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8228, "upload_time": "2019-04-10T15:43:52", "url": "https://files.pythonhosted.org/packages/52/9b/c69f2b602553b374f8a0a8fd0583eaa5a9c19a3c683d197235867116d74c/fuzzyjoin-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6a4b4b71f4caadb0510bdcf4c08a148d", "sha256": "988fc9d999784fb8ec7dcd026b97992865bd7dca1249401ddf679edfe770a087" }, "downloads": -1, "filename": "fuzzyjoin-0.2.1.tar.gz", "has_sig": false, "md5_digest": "6a4b4b71f4caadb0510bdcf4c08a148d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7701, "upload_time": "2019-04-10T15:43:53", "url": "https://files.pythonhosted.org/packages/57/b2/0dd2679ef43452b02be81b043d251fb58ed080c62f1601c4c79ca75aa81a/fuzzyjoin-0.2.1.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "934fe16e7bddcd1d5deff8e614b64b53", "sha256": "b87ff846581d10a02a2dad3a498946b6e4fe2f04f2a17361c87445f1c6ff3728" }, "downloads": -1, "filename": "fuzzyjoin-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "934fe16e7bddcd1d5deff8e614b64b53", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9512, "upload_time": "2019-04-10T22:44:25", "url": "https://files.pythonhosted.org/packages/7f/0c/752133ba396b8ad875a1457d905d3a6131b6e8c76420c35e3e74938138ef/fuzzyjoin-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6c7f0610d8ea3d637d7ae7bb8b82f6f8", "sha256": "7dd253b14017d30a95f542ff127edba3019369c88e7d9140f6a90c50c93c0979" }, "downloads": -1, "filename": "fuzzyjoin-0.3.0.tar.gz", "has_sig": false, "md5_digest": "6c7f0610d8ea3d637d7ae7bb8b82f6f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9036, "upload_time": "2019-04-10T22:44:26", "url": "https://files.pythonhosted.org/packages/90/ae/38eb41ba92e2df10c1fb1dc768fcab3ee54dc6aeefc5187f60d92e34cd50/fuzzyjoin-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "d97c6667081e2c2d1a14f1efa7222a11", "sha256": "3e8250e352f4774a141c9ae48f6ede3f91e30daf59f9e96e3668d0edcb487801" }, "downloads": -1, "filename": "fuzzyjoin-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d97c6667081e2c2d1a14f1efa7222a11", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9573, "upload_time": "2019-04-10T22:54:09", "url": "https://files.pythonhosted.org/packages/6a/1e/7632484a129b6ad2892fa8c1ac3229e913a20942ebba2d7655151f88f209/fuzzyjoin-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "14d9c94c5c4a91fce363ab4ef869da44", "sha256": "8793ffa85493a24066dc2db66b361af342e9ca7926998fde3a296bb833e0584b" }, "downloads": -1, "filename": "fuzzyjoin-0.3.1.tar.gz", "has_sig": false, "md5_digest": "14d9c94c5c4a91fce363ab4ef869da44", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9115, "upload_time": "2019-04-10T22:54:10", "url": "https://files.pythonhosted.org/packages/1b/b3/fad0c444266f5937f7d19abd9a12649c0e7382f7c258f30f71d4b2c42cc1/fuzzyjoin-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "81baccc98ea29c7a142cbcd8b70b4c62", "sha256": "4950efed5239093c1ff97f9103ae9bd9213248df326cf5b3d7a6ad1902fa1764" }, "downloads": -1, "filename": "fuzzyjoin-0.3.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "81baccc98ea29c7a142cbcd8b70b4c62", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9610, "upload_time": "2019-04-10T22:59:28", "url": "https://files.pythonhosted.org/packages/36/49/d4236e0ade77eaf1b60faa368404ee53833cfa1a20902c8a4a2cdc52d686/fuzzyjoin-0.3.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1bf6791978e7144fdcd2951a180cb2db", "sha256": "1aecbfb58b13ad207b34dce2bd656c1f8f7dbec13e6a4255db7b05b13e1f0caf" }, "downloads": -1, "filename": "fuzzyjoin-0.3.2.tar.gz", "has_sig": false, "md5_digest": "1bf6791978e7144fdcd2951a180cb2db", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9180, "upload_time": "2019-04-10T22:59:29", "url": "https://files.pythonhosted.org/packages/01/42/a95235707d48f55e149520f971b032051e267317522d61a1359e1455f292/fuzzyjoin-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "8dbe5c64b79d54a04f2b5c216a5ac0cc", "sha256": "0279a58eada751ac588a8fb41b8da7518147bf14f0602ebff98659e1f7c355f1" }, "downloads": -1, "filename": "fuzzyjoin-0.3.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8dbe5c64b79d54a04f2b5c216a5ac0cc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9646, "upload_time": "2019-04-10T23:07:15", "url": "https://files.pythonhosted.org/packages/8a/74/ff1b2a95be71c87da657adc7f8eec9a7df2e08b21781a0701743607af5d6/fuzzyjoin-0.3.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "10806e2f56a341268b0d7f018b877a20", "sha256": "8a0f690dd0c0569ec4c2a39e12b1752849f887fe7fbc621865e1f43ce5116c63" }, "downloads": -1, "filename": "fuzzyjoin-0.3.3.tar.gz", "has_sig": false, "md5_digest": "10806e2f56a341268b0d7f018b877a20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9247, "upload_time": "2019-04-10T23:07:16", "url": "https://files.pythonhosted.org/packages/40/4a/479b86fd86d6309bc4fa14434f7465b8e58b027a1f9349ef32cf15b83a2e/fuzzyjoin-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "3072ca7c8238cc79138673367de92cf0", "sha256": "cde47d70c98be0762ebb2babb6af1e772cf5280ef56cf5fbb18d919985c18a64" }, "downloads": -1, "filename": "fuzzyjoin-0.3.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3072ca7c8238cc79138673367de92cf0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9885, "upload_time": "2019-04-12T01:06:13", "url": "https://files.pythonhosted.org/packages/b8/ac/898f2cd1d98a58d7723077323f9c68a81e1884125fae5e9f0afa5b018929/fuzzyjoin-0.3.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9ce2f3de3e5a2ef3bbd56246842eab7c", "sha256": "11722293d4de607a74f94e6f175bbcc5deff3d35527e92de8f8922ba8c87dee3" }, "downloads": -1, "filename": "fuzzyjoin-0.3.4.tar.gz", "has_sig": false, "md5_digest": "9ce2f3de3e5a2ef3bbd56246842eab7c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9451, "upload_time": "2019-04-12T01:06:14", "url": "https://files.pythonhosted.org/packages/42/18/7a419bbd516300e8c885abf1ca77b2ddc53dfa9874b002308bc9bec45dc7/fuzzyjoin-0.3.4.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "120c8f12dca21ce6898b9c1c8c67f0e0", "sha256": "569f4593d8745a2537b63306ea90123558a3f6b0112fbd6886f0266a4bca9d1f" }, "downloads": -1, "filename": "fuzzyjoin-0.4.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "120c8f12dca21ce6898b9c1c8c67f0e0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10459, "upload_time": "2019-04-12T22:43:00", "url": "https://files.pythonhosted.org/packages/b3/6c/1f5d2632af69bb96ae705d9b4d400f40dc63e8d314e5b5f0b6b538edf876/fuzzyjoin-0.4.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "71ec3f833b8a5f7e3c75518a43bedd8a", "sha256": "5d78e5fe46e0cc1b0b033de67d1b41dae83443fe1726b3d7fe324a012af16c67" }, "downloads": -1, "filename": "fuzzyjoin-0.4.1.tar.gz", "has_sig": false, "md5_digest": "71ec3f833b8a5f7e3c75518a43bedd8a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10398, "upload_time": "2019-04-12T22:43:02", "url": "https://files.pythonhosted.org/packages/03/68/32383fce3a19ac9398e6a2c37e482bbe847fbe6aa34c2fef3183fee10682/fuzzyjoin-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "2029373b49d84d3303d4bc904b2c8779", "sha256": "e0d48a5658cf1cd053a38d2c8830b9c0d926c5196c5cddf90746a3d6d60041f4" }, "downloads": -1, "filename": "fuzzyjoin-0.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2029373b49d84d3303d4bc904b2c8779", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10415, "upload_time": "2019-04-15T20:47:10", "url": "https://files.pythonhosted.org/packages/cf/b4/c5c01e3f39ec659ef195ef1fdf6fe043f34a5d532b084a1e149b4419ec74/fuzzyjoin-0.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3ee8e1ae88c1ffa203b487f86448f28", "sha256": "ee4eed988f532e0989e373ad259889a88209a7f15fdedd63d9c442ea08aaa9e3" }, "downloads": -1, "filename": "fuzzyjoin-0.5.0.tar.gz", "has_sig": false, "md5_digest": "d3ee8e1ae88c1ffa203b487f86448f28", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10336, "upload_time": "2019-04-15T20:47:12", "url": "https://files.pythonhosted.org/packages/74/d0/f945ae5beae2cd6f0ef2a3f3c478296c2f3c2a89267baad5cf0dab92fa8f/fuzzyjoin-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "aeeab7252d4efb0e146eac481bca0ba4", "sha256": "3abed88850c5808826022acb2e17d56808d2a4799c88bfa64a34124a8a9768ee" }, "downloads": -1, "filename": "fuzzyjoin-0.5.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aeeab7252d4efb0e146eac481bca0ba4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11399, "upload_time": "2019-04-15T23:11:40", "url": "https://files.pythonhosted.org/packages/6d/d9/a670bb9425576a0e43f40c302b33882a5a570d95936a0a2d47c9c21940bf/fuzzyjoin-0.5.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d814414d6fde2947c9bbf7bf85ca724e", "sha256": "efab7bdb73fa20e675b49bb3d7ee2896b98371a624908fe5f004b64c4a95d177" }, "downloads": -1, "filename": "fuzzyjoin-0.5.1.tar.gz", "has_sig": false, "md5_digest": "d814414d6fde2947c9bbf7bf85ca724e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11397, "upload_time": "2019-04-15T23:11:41", "url": "https://files.pythonhosted.org/packages/a0/0b/da46ef2064e287b9fa5a7f53cb3d198d2e0c012f115671b4b5480c8fe0e7/fuzzyjoin-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "16702f549b8292d56ea69d3d73cf62ce", "sha256": "847fe6fa1c735101b91034d318fb90a405292e7f3431522b3e3586b0adddf241" }, "downloads": -1, "filename": "fuzzyjoin-0.5.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "16702f549b8292d56ea69d3d73cf62ce", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11473, "upload_time": "2019-04-15T23:16:51", "url": "https://files.pythonhosted.org/packages/88/49/acb8228b11ae8f3d627ad78b2a5235094d27b8a9bc78920d918194d08106/fuzzyjoin-0.5.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d72c4a9f6d4597495abc54f24e273119", "sha256": "f5d594f37d806ed553ed3431980c89bfcf2240fb5cec0f43a0fb76baf118ebc2" }, "downloads": -1, "filename": "fuzzyjoin-0.5.2.tar.gz", "has_sig": false, "md5_digest": "d72c4a9f6d4597495abc54f24e273119", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11452, "upload_time": "2019-04-15T23:16:52", "url": "https://files.pythonhosted.org/packages/64/6a/21430e07d12afba18367490d563a335aea3cdc4d984f75487b3ed3b4bef5/fuzzyjoin-0.5.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "16702f549b8292d56ea69d3d73cf62ce", "sha256": "847fe6fa1c735101b91034d318fb90a405292e7f3431522b3e3586b0adddf241" }, "downloads": -1, "filename": "fuzzyjoin-0.5.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "16702f549b8292d56ea69d3d73cf62ce", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11473, "upload_time": "2019-04-15T23:16:51", "url": "https://files.pythonhosted.org/packages/88/49/acb8228b11ae8f3d627ad78b2a5235094d27b8a9bc78920d918194d08106/fuzzyjoin-0.5.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d72c4a9f6d4597495abc54f24e273119", "sha256": "f5d594f37d806ed553ed3431980c89bfcf2240fb5cec0f43a0fb76baf118ebc2" }, "downloads": -1, "filename": "fuzzyjoin-0.5.2.tar.gz", "has_sig": false, "md5_digest": "d72c4a9f6d4597495abc54f24e273119", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11452, "upload_time": "2019-04-15T23:16:52", "url": "https://files.pythonhosted.org/packages/64/6a/21430e07d12afba18367490d563a335aea3cdc4d984f75487b3ed3b4bef5/fuzzyjoin-0.5.2.tar.gz" } ] }