GEOS封装在numpy ufunc中
项目描述
PyGEOS是一个具有向量化几何函数的C/Python库。几何操作在开源几何库GEOS中执行。PyGEOS将这些操作封装在NumPy ufunc中,在处理几何数组时提供性能提升。
重要提示:PyGEOS于2021年12月与Shapely(https://shapely.readthedocs.io)合并,并将作为Shapely 2.0的一部分发布。开发将在Shapely存储库中完成。请在那里提出问题或创建拉取请求。PyGEOS本身将接收更新(通过从Shapely存储库回滚),直到Shapely 2.0实际上发布。
什么是ufunc?
通用函数(或简称为ufunc)是一种以元素对元素的方式对n维数组进行操作的函数,支持数组广播。涉及的for循环完全用C语言实现,减少了Python解释器的开销。
多线程
PyGEOS函数支持多线程。更具体地说,在函数执行期间会释放全局解释器锁(GIL)。通常在Python中,GIL阻止多个线程同时进行计算。PyGEOS函数内部释放这个限制,以便GEOS可以并行执行重量级操作,而无需多个Python进程。
示例
比较点网格和多边形
>>> geoms = points(*np.indices((4, 4)))
>>> polygon = box(0, 0, 2, 2)
>>> contains(polygon, geoms)
array([[False, False, False, False],
[False, True, False, False],
[False, False, False, False],
[False, False, False, False]])
计算两个多边形列表所有可能交点面积
>>> from pygeos import box, area, intersection
>>> polygons_x = box(range(5), 0, range(10, 15), 10)
>>> polygons_y = box(0, range(5), 10, range(10, 15))
>>> area(intersection(polygons_x[:, np.newaxis], polygons_y[np.newaxis, :]))
array([[100., 90., 80., 70., 60.],
[ 90., 81., 72., 63., 54.],
[ 80., 72., 64., 56., 48.],
[ 70., 63., 56., 49., 42.],
[ 60., 54., 48., 42., 36.]])
更多文档请参阅: https://pygeos.readthedocs.io
参考资料
GEOS: https://libgeos.org
Numpy ufuncs: https://docs.scipy.org.cn/doc/numpy/reference/ufuncs.html
Joris van den Bossche的博客文章: https://jorisvandenbossche.github.io/blog/2017/09/19/geopandas-cython/
Matthew Rocklin的博客文章: http://matthewrocklin.com/blog/work/2017/09/21/accelerating-geopandas-1
版权 & 许可
PyGEOS根据BSD 3-Clause许可进行许可。版权(c)2019,Casper van der Wel。GEOS根据GNU Lesser General Public License (LGPL) 2.1条款提供,可在https://libgeos.org找到。
项目详情
下载文件
下载适合您平台的文件。如果您不确定该选择哪个,请了解有关安装包的更多信息。
源代码发行版
构建发行版
pygeos-0.14.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 30fbc17f64844200b85133b885fcfb65541b8779531f6ef4f8fe467d3fba7623 |
|
MD5 | 85450969759e2a9601fe18bf82fddcee |
|
BLAKE2b-256 | ca1f07cda42b8a478ddfeb8b0bb328a10b2759ae75f8a60026238c0e33c9ef80 |
pygeos-0.14-cp311-cp311-win_amd64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6d41973d0361712e53d54489d0c1cc6d37b941e5c808bfd51c461e36c0b4758b |
|
MD5 | 63dd140664f39472edd9d5d2dcb9ec9a |
|
BLAKE2b-256 | 00db130fdda366f3e3f08984a3638d624ce10565fe306ac93429d04537a22f5b |
pygeos-0.14-cp311-cp311-win32.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a5bae1772f0d333e38689bf691c23e3416d797711bfed8086d78c91d63cd373a |
|
MD5 | b9abc4d5ba407a005680d355ca9bf20c |
|
BLAKE2b-256 | 055cd72d59163655d29e6fd4c6ebf7f9b1e286b47c6adfb20ecfce7c6836e83c |
pygeos-0.14-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 987facbd0283ab1990ff490681898a93690e8181f8c92e37c5e23d630750ef4c |
|
MD5 | 5ff8c30312596d1c8af2f7c213af635b |
|
BLAKE2b-256 | 4ae58fc6f9586674c06080327a4fe0774d871416b6bd60974c468559ec650570 |
哈希值 用于 pygeos-0.14-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 67fb8f47978fff46f6f209d3aae094c3530ad70cce6b7baafc01f077549770c2 |
|
MD5 | 73aa7ebc1677a1a7e83d262ef3d75c83 |
|
BLAKE2b-256 | e7c8d094bb33177d9ade063dc20720fc747c08c978ebd5e497520fcfed3e656b |
哈希值 用于 pygeos-0.14-cp311-cp311-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f6dc30f459f9474fb1eb161291ff7b6258d73c27f8020a0d5683d9d98ffec3d0 |
|
MD5 | 0cd6f742603a663db410b2235ed4a789 |
|
BLAKE2b-256 | 74ebfc13b19ca115428e7eabf27b8d925931d3a9984d231405b76f31c8adaf5e |
哈希值 用于 pygeos-0.14-cp311-cp311-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 251a663ac32312641111d00976878758637ebab40354f97f544abbd4cea3e677 |
|
MD5 | 6f8e659ed8f7a56a0fc3615a5cbb237c |
|
BLAKE2b-256 | c71ddff60d4a7b427b27d7e77ff974b7456e996a9ed3cbda5f8b10d9e7f4f2b6 |
哈希值 用于 pygeos-0.14-cp311-cp311-macosx_10_9_universal2.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | de8261998e7a767cfa4ecf4eea3cc5648cc8afcf57d0286ceaf2e63db3c85adf |
|
MD5 | b0c06a3e0f892de08e67d760652830fe |
|
BLAKE2b-256 | 0bb62a5d66f1742b5ae7ab29c442cd629ce75d5e66310ad3641a8f11076f9dcc |
哈希值 用于 pygeos-0.14-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 169a9fafa047dee10ef98479eb0f60bfbf5c688d8228a1c785c1c8ca154345b1 |
|
MD5 | 3c3b53f4a4bfd01c66328124287a78db |
|
BLAKE2b-256 | 4b8c0ac92b1fa6a5f7d77861e6974c85335b703cfe2f4197610d52035b052d99 |
哈希值 用于 pygeos-0.14-cp310-cp310-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 785bb70f2d3bcf331e1fa14f17d95e7aa045e0a56114e25cf1976cae29f0419a |
|
MD5 | ab93a9278a849c9f6c914da06ff0899f |
|
BLAKE2b-256 | e01015a1d48100b726c403c38df3c9991c1d4fad727bda06026dd817fc4ad50a |
哈希值 用于 pygeos-0.14-cp310-cp310-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | bf00c2be6ea9816875636cfe139ff5ac53e9b99e0e7ce38c92cf67b69cf2d6be |
|
MD5 | e05a1210f5b4f23bb7d7451f52010af3 |
|
BLAKE2b-256 | b99e022933e46efc78ba2dbfad6e74e187c61ac9dc77b377999f41ba6e360abe |
哈希值 用于 pygeos-0.14-cp310-cp310-macosx_10_9_universal2.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | cfad06eae27e7236a9dc1a6d1c278525d4cf79422cd05ac6513d55032ff0b6b6 |
|
MD5 | bbd166d888783c98ffe26d2f9188a294 |
|
BLAKE2b-256 | 263ab1b1348ed4954946efa6d300a68776d1617454fcc240cacbb8cbf369d281 |
哈希值 用于 pygeos-0.14-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9ad6c749665badc4c66fcfea5a18b440f24b4c6e1df755391663598a709fa8f8 |
|
MD5 | f797174532b1dfb5e6e5a8c7f99c20ed |
|
BLAKE2b-256 | 8a0f25cd3e9ab75b498a3316af0f047a181a60466bc5f44d7423c2bb2d2a899f |
哈希值 用于 pygeos-0.14-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 85935aaf69c5fa6a7e3e4363e8fa429ecacad23535999233923ed3ad33d203eb |
|
MD5 | bb06a7fbcebe0181d2076c8a15467086 |
|
BLAKE2b-256 | 80556c857205f7884b58d5669290e480957faf07ea414a4c0d87658caf780582 |
哈希值 用于 pygeos-0.14-cp39-cp39-macosx_10_9_universal2.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f51a46e0c3f305c6d08296bb70cf0e94e8fe4ce827acf32499e4d11164d005aa |
|
MD5 | 67ee59c6ea01a9303e51d59df9f0d4f1 |
|
BLAKE2b-256 | f23b5acfe74655fe578171e339d4bdfcacb81db2121291fa585988c435f7561c |
哈希值 用于 pygeos-0.14-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 726893ddf186fe396dea22b4ef76b71db73132d034efc4d22bd8bb3d5a6ab649 |
|
MD5 | b094ebddefc7b993be7432997249711f |
|
BLAKE2b-256 | 3b2ef281acdae482ea43bb7b446f1098fe11bf9e0393f47bcfa153be181a2b5b |
哈希值 用于 pygeos-0.14-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3e90515f20025fbbf5d4080e6a0192c93957f7b7d60279834e2afab5129b6163 |
|
MD5 | 2399b6ebc32b3c1e95bc7a6658eaa454 |
|
BLAKE2b-256 | 08b805dbe6d1383fc68ac41a297dc844a511d1322b85b23084983bc4280665e4 |
哈希值 用于 pygeos-0.14-cp38-cp38-macosx_10_9_universal2.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b951deb677c9209bbedbeac59be0e19681ba26385232bd657329560db7ca8b42 |
|
MD5 | 65cd5eea247efdd47905c9b5ba7f8b39 |
|
BLAKE2b-256 | 5c644149637a46740f6f5ed977c8fe1f1acfcea8c8e125919e1bd3eda7732567 |
哈希值 用于 pygeos-0.14-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fc8939d6f4478918e65149f7eaea44b4a8a42d5ac210ab98a03fd49413f17375 |
|
MD5 | 1c18c04658a74fbe5fa9dc4db08cf074 |
|
BLAKE2b-256 | 86691b53d2963b94182907985688a6b35838b63f5d74a996b55f93982a1f4c47 |
哈希值 用于 pygeos-0.14-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 61f9151ace84c69b9f51fce07d1ec784335a06eb8f83efbf36d9812e15ee1501 |
|
MD5 | 2c43e3bf3a46913bdf31954650e2266f |
|
BLAKE2b-256 | 59d957a66b7ed7ac4b9f3b20217c7c7d49f3cb156ab6a76319b1d42cb84f73b5 |
哈希值 用于 pygeos-0.14-cp37-cp37m-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e415467b6f73bcd0762dbb49d7d27188ccf1883dd94620d081a46b177b1d8696 |
|
MD5 | 87f080a82ecb45179ede12f211dcec25 |
|
BLAKE2b-256 | 31ec009216b50fd1b481a3b23ba2cb9b3b4d9bcb0a4152a6c5a8f7ee26589766 |