tastatham / coss Goto Github PK
View Code? Open in Web Editor NEWPython tools for spatial interpolation
License: MIT License
Python tools for spatial interpolation
License: MIT License
Not all areal interpolation methods use unique source and target identifiers.
_check_uid calculates a unique identifier if one is not present, regardless of the interpolation method.
areal_checks should specify an additional parameter, to determine whether a unique identifier should be checked/calculated.
One enhancement that could speed up both areal weighting / dasymetric mapping is to use Dask GeoPandas instead of GeoPandas for the underlying geometric calculations.
However, the GeoPandas overlay function used by areal weighting is not yet available in Dask GeoPandas.
To move this issue forwards, the overlay function must be merged into Dask GeoPandas.
This would also involve merging DataFrames based on the index, which mean #5 would be resolved.
Methods that interpolate values based on areal weighting (as well as pycno) produce erroneous results when there are are duplicate geometries.
Geometries may be duplicated when handing certain types of datasets e.g. survey data.
In this scenario, I was using survey data and I simply forgot to perform a groupby per unique identifier, prior to running the interpolation.
This returned interpolated values for all targets but the results were erroneous.
My initial thought was to update all areal_checks to add an additional check for duplicate geometries/unique identifiers;
Line 65 in 3d8274d
My idea is to add a check, to see whether duplicate values per geometry/unique identifier are present.
Currently the coss package merges pd.DataFrames based on a column.
However, merging on a set index is more performant.
Once unique identifier bugs/enhancements are complete, merges will be based on the index.
An Error is thrown in the _check_uid function , when GeoDataFrame.name
does not exist.
.name
is used to create a unique identifer when one does not exist or is not specified.
A solution is to use the uuid Python module.
Add WIP example notebook for all areal interpolation methods, using both intensive and extensive variables.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.