lipd

Input/output and manipulation utilities for LiPD files in Matlab, R and Python

https://github.com/nickmckay/lipd-utilities

Science Score: 33.0%

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

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    8 of 13 committers (61.5%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.2%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Input/output and manipulation utilities for LiPD files in Matlab, R and Python

Basic Info
Statistics
  • Stars: 29
  • Watchers: 15
  • Forks: 8
  • Open Issues: 29
  • Releases: 0
Created almost 11 years ago · Last pushed almost 4 years ago
Metadata Files
Readme License

README.md


LiPD

Update

The R package hosted here is now deprecated, but do not fear! A significantly updated version is available at http:/github.com/nickmckay/lipdR and the documentation is available here.

The python package is also in the process of being replaced with a more modern architecture.

Lipd utitilities

Input/output and manipulation utilities for LiPD files in Matlab, R and Python.


What is it?

LiPD is short for Linked PaleoData. LiPD files are the data standard for storing and exchanging data amongst paleoclimate scientists. The package will help you convert your existing paleoclimate observations into LiPD files that can be shared and analyzed.

Organizing and using your observation data can be time consuming. Our goal is to let you focus on more important tasks than data wrangling.


Core functions

The functions below are considered the core functions of the LiPD package. These functions are consistent in Matlab, Python, and R. The function names, parameters and returned data are the same.

readLipd

Read LiPD files from your computer into your workspace

writeLipd

Write LiPD data from your workspace onto your computer.

extractTs

Extract a time series from one or more datasets in the workspace. Your hierarchical LiPD data structure is extracted into a flattened time series structure.

collapseTs

Collapse a time series back into LiPD dataset form in the workspace. Your flattened time series structure is condensed back into a hierarchical LiPD data structure

filterTs

Retrieve time series objects that match a specific criteria. This filters out the data that you don't want, and returns a new time series of data that you do want.

queryTs

Retrieve the index numbers of time series objects that match a specific criteria. This filters out the data that you don't want, and returns a list of index numbers of the data that you do want.


Language-specific Documentation

The core functions are consistent across the 3 languages; However, each language has some nuances that you may be unfamiliar with. For example, in Python you may use lipd.readLipd(), whereas in R you use lipd::readLipd() or readLipd().

Additionally, while the core functions remain the same, we chose to take advantage of the strengths of each language. The Python utilities have additional functions for converting and validating data. The R and Matlab utilities are better suited for data analyzation. The language-specific documentation linked below will go into detail about all the functions included in each language.


FAQ

What is a time series?

The LiPD dataset hierarchy is great for organization and giving context to data, but can be more difficult to sift through to find relevant information since it can often go 10+ levels deep.

A time series is a flattened set of data that makes data more approachable and is used to perform data analysis. A time series is a collection of time series objects.

1-to-1 ratio 1 time series object = 1 measurement table column

Each object within a time series is made from one column of data in a measurement table. It's important to note that this only pertains to measurement table data. All model data (ensemble, distribution, summary) are not included when creating a time series.

Example 1: One dataset

  • ODP1098B13
    • 1 measurement table
      • 5 columns
        • depth, depth1, SST, TEX86, age

extractTs creates a time series (ts) of 5 objects

Example 2: Multiple datasets

  • ODP1098B13

    • 1 measurement table
      • 5 columns
        • depth, depth1, SST, TEX86, age
  • Ant-CoastalDML.Thamban.2006

    • 1 measurement table
      • 2 columns
        • d18O, year
  • CO00COKY

    • 1 measurement table
      • 2 columns
        • d18O, year

extractTs creates a time series (ts) of 9 objects


How to Cite this code

Use this link to visit the Zenodo website. It provides citation information in many popular formats.


Further information

Github - GeoChronR

Linked Earth Wiki

LiPD.net


Contact

If you are having issues, please let me know at heiser@nau.edu.


License

The project is licensed under the GNU Public License.

footer NSF

Owner

  • Name: Nick McKay
  • Login: nickmckay
  • Kind: user
  • Location: Flagstaff, AZ
  • Company: Northern Arizona University

GitHub Events

Total
  • Issues event: 1
  • Watch event: 1
  • Issue comment event: 4
Last Year
  • Issues event: 1
  • Watch event: 1
  • Issue comment event: 4

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 614
  • Total Committers: 13
  • Avg Commits per committer: 47.231
  • Development Distribution Score (DDS): 0.572
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
CHRISTOPHER HEISER h****r@n****u 263
cmh553 c****3@n****u 115
nickmckay n****k@m****s 87
Nick McKay n****y 77
Gavin Simpson u****s@g****m 23
austinpatrick a****n@A****l 14
Nick McKay n****4@g****u 13
nickmckay n****y@n****u 10
austinpatrick a****n@s****u 4
Deborah Khider k****r@u****u 3
cody routson c****n@n****u 2
austinpatrick a****n@s****u 2
andrewdolman a****n@g****m 1

Issues and Pull Requests

Last synced: about 1 year ago

All Time
  • Total issues: 80
  • Total pull requests: 12
  • Average time to close issues: 2 months
  • Average time to close pull requests: 3 days
  • Total issue authors: 25
  • Total pull request authors: 6
  • Average comments per issue: 2.24
  • Average comments per pull request: 1.08
  • Merged pull requests: 9
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 4.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • chrismheiser (34)
  • khider (11)
  • nickmckay (7)
  • fzhu2e (3)
  • CommonClimate (2)
  • gavinsimpson (2)
  • elkezeller (2)
  • michaelerb (2)
  • andrewdolman (1)
  • yeshancqcq (1)
  • oliverbothe (1)
  • sofiakje (1)
  • LaurenNesbitt (1)
  • MichelineCampbell (1)
  • wtraylor (1)
Pull Request Authors
  • gavinsimpson (6)
  • nickmckay (2)
  • khider (1)
  • datapythonista (1)
  • andrewdolman (1)
  • Naz2020 (1)
Top Labels
Issue Labels
bug (22) enhancement (15) need more info (1) wontfix (1) question (1)
Pull Request Labels
enhancement (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 139 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 195
  • Total maintainers: 3
pypi.org: lipd

LiPD utilities to process, convert, and analyze data.

  • Versions: 195
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 139 Last month
Rankings
Downloads: 8.6%
Dependent packages count: 10.1%
Forks count: 11.4%
Stargazers count: 11.6%
Average: 12.7%
Dependent repos count: 21.6%
Maintainers (3)
Last synced: 10 months ago

Dependencies

R/deprecated/DESCRIPTION cran
  • R >= 3.1.0 depends
  • BBmisc * imports
  • RJSONIO * imports
  • Rcpp * imports
  • arsenal * imports
  • backports * imports
  • base * imports
  • checkmate * imports
  • chron * imports
  • data.table * imports
  • dplyr * imports
  • grid * imports
  • jsonlite * imports
  • knitr * imports
  • lattice * imports
  • markdown * imports
  • methods * imports
  • purrr * imports
  • readr * imports
  • rlang * imports
  • stats * imports
  • stringr * imports
  • tibble * imports
  • tidyr * imports
  • tools * imports
  • usethis * imports
  • utils * imports
  • testthat * suggests
Python/setup.py pypi
  • bagit *
  • demjson3 *
  • numpy *
  • pandas *
  • requests *
  • sip *
  • xlrd *