pydataweaver

The Pydata Weaver: A data Integration platform

https://github.com/weecology/pydataweaver

Science Score: 18.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.8%) to scientific vocabulary

Keywords from Contributors

data-retrieval hacktobefest
Last synced: 11 months ago · JSON representation ·

Repository

The Pydata Weaver: A data Integration platform

Basic Info
  • Host: GitHub
  • Owner: weecology
  • License: other
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 242 KB
Statistics
  • Stars: 8
  • Watchers: 2
  • Forks: 5
  • Open Issues: 8
  • Releases: 0
Created almost 11 years ago · Last pushed over 2 years ago
Metadata Files
Readme Changelog Contributing License Code of conduct Citation

README.md

logo

Build Status Build status (windows) Documentation Status License Join the chat at https://gitter.im/weecology/pydataweaver

The PyDataweaver Project

The PyDataweaver is a Python tool that offers a simple to use, clean and a robust data integration platform.

The PydataWeaver supports data integration of spatial datasets (Raster and Vector data), as well as tabular datasets.

Problem solving in science involves and requires studying entities using a broad range of associations among the entities under study. These associations are obtained through collecting and integrating various sources and forms of data.

Since these heterogenous datasets are collected by various scientists, the datasets are domain based or centered around a unique subset of problems.

The pydataweaver bridges the gap scientist's face of not having readily unified datasets that can be used for multi dimension feature analysis. The data weaver handles the finding and integration of heterogeneous datasets forming a new dataset.

Dependencies

This package requires Python 3.3+, recommends Python 3.6+ and depends on the following packages:

 retriever
 PyMySQL>=0.4
 psycopg2>=2.0
 gdal
 future
 numpydoc
 pandas

They can be installed using pip.

sudo pip install -r requirements.txt

The package supports the following database management systems (DBMS):

| DBMS | Spatial Datasets | Tabular Datasets | |------------|-----------------:|-----------------:| | PostgreSQL | Yes | Yes | | SQLite | No | Yes |

Installing From Source

Either use pip to install directly from GitHub:

shell pip install git+https://git@github.com/weecology/pydataweaver.git

or:

  1. Clone the repository
  2. From the directory containing setup.py, run the following command: pip install .. You may need to include sudo at the beginning of the command depending on your system (i.e., sudo pip install .).

More extensive documentation for those that are interested in developing can be found here

Using the Command Line

After installing the package, run pydataweaver update to download the latest available dataset scripts. To see the full list of command line options and datasets run pydataweaver --help.

$ pydataweaver --help

```shell

usage: pydataweaver [-h] [-v] [-q] {help,ls,citation,license,join,update} ...

positional arguments: {help,ls,citation,license,join,update} sub-command help help ls display a list all available datasets citation view citation license view dataset licenses join integrate data using a data package script update download updated versions of data package scripts

optional arguments: -h, --help show this help message and exit -v, --version show program's version number and exit -q, --quiet suppress command-line output

```

To get a list of available dataset use pydataweaver ls

$ pydataweaver ls

```shell

Available datasets : 11

breed-bird-routes-bioclim mammal-community-bioclim mammal-community-masses mammal-community-sites-all-bioclim mammal-community-sites-bioclim mammal-community-sites-harvard-linear-features mammal-community-sites-harvard-linear-features-soils mammal-community-sites-harvard-soil mammal-diet-mammal-life-history mammal-sites-bioclim-1-2 portal-plot-species

. ... ```

To view the citaion of the datasets use `pydataweaver citation [dataset-name] Running pydataweaver with no citation will provide the citation for the tool.

$ pydataweaver citation mammal-diet-mammal-life-history

```shell

Dataset: mammal-diet-mammal-life-history Description: Integrated data set of mammal-life-hist and mammal-diet Citations: mammal-life-hist: S. K. Morgan Ernest. 2003. .... mammal-diet: Kissling WD, Dalby L, Flojgaard C, Lenoir J, ...

```

Integrating Data

To integrate data, run pydataweaver join [data package name] and provide the connection configurations.

```shell

pydataweaver join postgres -h usage: pydataweaver join postgres [-h] [--user [USER]] [--password [PASSWORD]] [--host [HOST]] [--port [PORT]] [--database [DATABASE]] [--databasename [DATABASENAME]] [--tablename [TABLENAME]] dataset

positional arguments: dataset file name

optional arguments: -h, --help show this help message and exit --user [USER], -u [USER] Enter your PostgreSQL username --password [PASSWORD], -p [PASSWORD] Enter your password --host [HOST], -o [HOST] Enter your PostgreSQL host --port [PORT], -r [PORT] Enter your PostgreSQL port --database [DATABASE], -d [DATABASE] Enter your PostgreSQL database name --databasename [DATABASENAME], -a [DATABASENAME] Format of schema name --tablename [TABLENAME], -t [TABLENAME] Format of table name

```

To use the pydataweaver with postges .pgpass file set

```shell

pydataweaver join postgres ```

or with command line configurations supplied

```shell

pydataweaver join postgres -u name-of-user -h host-name -d database-to-use ```

Contribution

If you find any operation that is not supported by this package, feel free to create a Github issue. Additionally, you are more than welcome to submit a pull request for a bug fix or additional feature.

If you find any operation that is not supported by this package, feel free to create a Github issue. Additionaly you are more than welcome to submit a pull request for a bug fix or additional feature.

Please take a look at the Code of Conduct governing contributions to this project.

Acknowledgments

Development of this software was funded by the Gordon and Betty Moore Foundation's Data-Driven Discovery Initiative to Ethan White.

Owner

  • Name: Weecology
  • Login: weecology
  • Kind: organization

Citation (CITATION)

Not Available

GitHub Events

Total
Last Year

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 74
  • Total Committers: 3
  • Avg Commits per committer: 24.667
  • Development Distribution Score (DDS): 0.041
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
henrykironde h****e@g****m 71
Ethan White e****n@w****g 2
zhangcandrew z****w@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 12 months ago

All Time
  • Total issues: 22
  • Total pull requests: 31
  • Average time to close issues: over 2 years
  • Average time to close pull requests: 3 days
  • Total issue authors: 5
  • Total pull request authors: 5
  • Average comments per issue: 1.23
  • Average comments per pull request: 0.29
  • Merged pull requests: 22
  • Bot issues: 0
  • Bot pull requests: 1
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • ethanwhite (15)
  • henrykironde (3)
  • tz05 (2)
  • sdtaylor (1)
  • MarconiS (1)
Pull Request Authors
  • henrykironde (27)
  • dependabot[bot] (2)
  • ethanwhite (1)
  • tz05 (1)
  • zhangcandrew (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (2)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 10 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 1
  • Total maintainers: 2
pypi.org: pydataweaver

Pydata Weaver

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 10 Last month
Rankings
Dependent packages count: 7.3%
Forks count: 14.3%
Stargazers count: 17.7%
Dependent repos count: 22.1%
Average: 23.2%
Downloads: 54.8%
Maintainers (2)
Last synced: 12 months ago

Dependencies

requirements.txt pypi
  • PyMySQL >=0.4
  • argcomplete *
  • future *
  • numpydoc *
  • psycopg2-binary *
  • requests *
  • retriever *
  • sphinx_py3doc_enhanced_theme *
  • sphinx_rtd_theme *
  • sphinxcontrib-napoleon *
  • tqdm ==4.30.0
  • xlrd >=0.7
setup.py pypi
  • xlrd *