inbolims
R functions, SQL queries, ... called by the Labware LW7 LIMS system on INBO
Science Score: 44.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
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.2%) to scientific vocabulary
Keywords
Repository
R functions, SQL queries, ... called by the Labware LW7 LIMS system on INBO
Basic Info
- Host: GitHub
- Owner: inbo
- License: gpl-3.0
- Language: R
- Default Branch: main
- Homepage: https://inbo.github.io/inbolims/
- Size: 895 KB
Statistics
- Stars: 0
- Watchers: 7
- Forks: 0
- Open Issues: 0
- Releases: 2
Topics
Metadata Files
README.md
output: github_document
{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = file.path("man", "figures", "README-"),
out.width = "100%"
)
Beschrijving
R scripts om de in LIMS bewaarde gegevens van het INBO op te halen. Dit werkt enkel binnen het netwerk van het instituut of indien verbonden via vpn met het netwerk.
Voorlopig zijn er 3 hoofdbrokken in dit pakket:
- Inlezen van rapportagegegevens van het labo uit het LIMS datawarehouse
- parsen textuurmetingen uit de output van het laserdiffractietoestel
- Kwaliteitskenmerken digital droplet PCR voor het genetisch labo
Daarnaast zijn er ook nog enkele andere voorzieningen toegevoegd zoals inlezen van textuurdata en verwerken van gegevens.
Gegevens uit het LIMS Datawarehouse halen
Eerste gebruik
Zorg dat het pakket remotes of een equivalent pakket geïnstalleerd is
```` install.packages("remotes")
````
Indien dit in orde is kan je de bibliotheek installeren met volgend commando
```` remotes::install_github("inbo/inbolims")
````
Iedere keer R opnieuw opgestart wordt zal je de inbolims library moeten laden
```` library(inbolims)
````
De belangrijkste functionaliteit in het script is de connectie met de databank en het ophalen van gegevens van een project. Dit doe je als volgt:
````
library(tidyverse) library(inbolims)
maak connectie met databank
connection <- lims_connect()
````
Je kan op voorhand al de staalinformatie ophalen via limssampleinformation. Je kan je project selecteren. Dit mogen er ook meerdere zijn en eventueel joker karakters mogen ook gebruikt worden.
Standaard worden defaultvelden getoond, maar je kan zelf ook kiezen welke velden je wil zien eventueel gecombineerd met een template, met de variabele fields.
Via de functie sample_fields_from_template kan je te weten komen welke templates beschikbaar zijn en welke velden onderdeem uitmaken in elk van de templates. Met de functie lims_table_fields kan je voor elke tabel zien welke velden het datawarehouse in aanbieding heeft.
````
illustratieve stap: krijg de staalinformatie (optioneel)
staalinfo <- limssample_information(connection, project = c("I-19W001-02"))
````
Als je wil een overzicht hebben over alle testen en componenten die in de betrokken projecten gebruikt (gerapporteerd en niet-gerapporteerd) zijn kan je onderstaande functie gebruiken.
Als je in je rapport enkele niet-gerapporteerde testen wil meerapporteren kan je dit op basis van deze output, waarbij je de LimsAnalysisName en Component aan elkaar plakt met een dubbele underscore
````
illustratieve stap: krijg de testinformatie (optioneel)
testinfo <- limstest_information(connection, project = c("I-19W001-02"))
````
De belangrijkste functie is het inlezen van alle rapportdata. In de toekomst zal die functie ook verbeterd worden zodat ook gemakkelijk kan achterhaald worden wat er historisch allemaal bestond van analyse- en componentnamen.
````
haal de rapportgegevens binnen uit de databank
rapportdata <- readlimsdata(connection = connection, project = c("I-19W001-02"), sqltemplate = "default", show_query = FALSE)
```` Bovenstaande code haalt de data op voor het project I-19W001-02 (project = "I-19W001-02") volgens de standaardtemplate (template = "default") en de query die gebruikt is om het datawarehouse te bevragen wordt getoond (show_query = TRUE). Als eerste variabele moet de databank connectie opgegeven worden, zodat de routine weet waar de gegevens uit gehaald moeten worden.
Je kan ook alle of enkele niet-gerapporteerde componenten ophalen op basis van de informatie die je kan halen uit lims_test_information
```` includenonrep <- c("ICKATIONENVerdunning", "IC_ANIONENVerdunning") rapportdata <- readlimsdata(connection = connection, project = c("I-19W001-02"), includenonreportable = includenonrep)
````
Afgeleide routines (work in progress)
Staaloverzicht
Om een overzicht van de stalen te hebben van de ingelezen rapport_data.
```` staaloverzicht <- limsreportsamples(rapport_data) view(staaloverzicht)
```
Op dit moment vereist bovenstaande routine nog heel wat velden, daarom dat dit enkel gegarandeerd is te werken met de *default*sql_template`.
Kruistabel
Het formaat van rapport_data is in een lang dataformaat, waarbij ieder resultaat op een andere regel staat. Vaak is eerder gewenst de resultaten van een staal naast elkaar te zien:
```` kruistabel <- limsreportxtab(rapport_data) View(kruistabel)
````
Exporteren
Bovenstaande kruistabel kan je gemakkelijk naar een door excel leesbaar csv bestand converteren:
```` limsreportexport(kruistabel, path = "testxtab.csv") limsreportexport(rapportdata, path = "test.csv")
```
Ook hier op dit moment enkel gegarandeerd voor de "default"sqltemplategebruikt bijreadlims_data`.
Textuur
De export van de textuur voor 30 stalen van het laserdiffractietoestel kan via dit pakket omgezet worden naar allemaal losse bestanden met de correcte naam en een bruikbare inhoud.
```` getwd() #gewoon om te tonen in welke werkdirectory je zit
library(tidyverse) #package met veel datafunctionaliteit library(inbolims) #package die de verwerking van de tekstuurfiles regelt library(DBI) #package voor DB communicatie
definieer het path naar de resultatenfile
filename <- system.file("extdata", "textuurexportvoorbeeld.txt", package = "inbolims")
definieer de directory voor de geparste bestandjes
targetdir <- "tijdelijk" system2("mkdir", targetdir)
parse de file naar een geldige R dataset
textuurparsed <- parsetexture_content(filename, delim = "\t")
interpreteer de dataset tot een inhoudelijk bruikbaar formaat
textuurinterpreted <- interprettexturecontent(textuurparsed)
maak een connectie met het LIMS datawarehouse
conn <- limsconnect() #connect to dwh textuurlinked <- linklaboid(conn, textuur_interpreted)
schrijf de files weg
writetexturefiles(targetdir, textuurlinked)
````
digital droplet PCR
Zal aangevuld worden eens er vraag naar is vanuit het genetisch labo.
Owner
- Name: Research Institute for Nature and Forest (INBO)
- Login: inbo
- Kind: organization
- Location: Belgium
- Website: http://www.inbo.be/en
- Repositories: 125
- Profile: https://github.com/inbo
Open source, data and science initiatives of the Research Institute for Nature and Forest (INBO)
Citation (CITATION.cff)
cff-version: 1.2.0 message: If you use this software, please cite it using these metadata. title: "inbolims: Utilities to query the INBO lab analysis datawarehouse" authors: - given-names: Pieter family-names: Verschelde affiliation: Research Institute for Nature and Forest (INBO) orcid: 0000-0002-9199-421X keywords: - lims - lab results - COA - Certificate of Analysis contact: - given-names: Pieter family-names: Verschelde affiliation: Research Institute for Nature and Forest (INBO) orcid: 0000-0002-9199-421X doi: ~ license: GPL-3.0 repository-code: https://github.com/inbo/inbolims/ type: software abstract: "Some utilities that expand the Lims program in INBO. It mainly focuses on post-processing in connection with Quality Assurance." identifiers: - type: url value: https://inbo.github.io/inbolims/ version: 0.3.1
GitHub Events
Total
- Release event: 1
- Push event: 18
- Pull request event: 5
- Create event: 4
Last Year
- Release event: 1
- Push event: 18
- Pull request event: 5
- Create event: 4
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 0
- Total pull requests: 20
- Average time to close issues: N/A
- Average time to close pull requests: about 2 hours
- Total issue authors: 0
- Total pull request authors: 2
- Average comments per issue: 0
- Average comments per pull request: 0.1
- Merged pull requests: 18
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 3
- Average time to close issues: N/A
- Average time to close pull requests: 6 minutes
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 2
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
- pietervsd (19)
- hansvancalster (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- inbo/actions/check_pkg main composite
- actions/checkout v3 composite
- r-lib/actions/check-r-package v2 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
- inbo/actions/check_pkg main composite
- JamesIves/github-pages-deploy-action v4.4.1 composite
- actions/checkout v3 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
- actions/checkout v3 composite
- ncipollo/release-action v1 composite
- R >= 3.5.0 depends
- DBI * imports
- RODBC * imports
- dplyr * imports
- ggplot2 * imports
- magrittr * imports
- odbc * imports
- purrr * imports
- readr * imports
- stats * imports
- tidyr * imports
- knitr * suggests
- rmarkdown * suggests
- testthat >= 2.1.0 suggests