commit | f1ccdf89609bbdc6a950430803c9e5b0273d4da2 | [log] [tgz] |
---|---|---|
author | Marc Kupietz <kupietz@ids-mannheim.de> | Wed Jun 29 20:14:33 2022 +0200 |
committer | Marc Kupietz <kupietz@ids-mannheim.de> | Wed Jun 29 20:21:11 2022 +0200 |
tree | 0a840e40c685d097e4910d550e5294ec2618da80 | |
parent | 743bd06633e0c8b16170f1f64e4316cd693b8d81 [diff] |
Fix collocation scores for lemmatized node or collocate queries Use the lemmatized versions also for calculating O1 and O2. Resolves #8 Change-Id: I6644d80d84bba6b5c467618d6ab9a06e22d9915b
R client package to access the web service API of the KorAP Corpus Analysis Platform developed at IDS Mannheim
library(RKorAPClient) new("KorAPConnection", verbose=TRUE) %>% corpusQuery("Hello world") %>% fetchAll()
library(RKorAPClient) library(ggplot2) kco <- new("KorAPConnection", verbose=TRUE) expand_grid(condition = c("textDomain = /Wirtschaft.*/", "textDomain != /Wirtschaft.*/"), year = (2002:2018)) %>% cbind(frequencyQuery(kco, "[tt/l=Heuschrecke]", paste0(.$condition," & pubDate in ", .$year))) %>% ipm() %>% ggplot(aes(x = year, y = ipm, fill = condition, colour = condition)) + geom_freq_by_year_ci()
See the Highcharts license notes below.
library(RKorAPClient) query = c("macht []{0,3} Sinn", "ergibt []{0,3} Sinn") years = c(1980:2010) as.alternatives = TRUE vc = "textType = /Zeit.*/ & pubDate in" new("KorAPConnection", verbose=T) %>% frequencyQuery(query, paste(vc, years), as.alternatives = as.alternatives) %>% hc_freq_by_year_ci(as.alternatives)
collocationAnalysis
functionlibrary(RKorAPClient) library(knitr) new("KorAPConnection", verbose = TRUE) %>% collocationAnalysis( "focus(in [tt/p=NN] {[tt/l=setzen]})", leftContextSize = 1, rightContextSize = 0, exactFrequencies = FALSE, searchHitsSampleLimit = 1000, topCollocatesLimit = 20 ) %>% mutate(LVC = sprintf("[in %s setzen](%s)", collocate, webUIRequestUrl)) %>% select(LVC, logDice, pmi, ll) %>% head(10) %>% kable(format="pipe", digits=2)
LVC | logDice | pmi | ll |
---|---|---|---|
in Szene setzen | 9.66 | 10.86 | 465467.52 |
in Gang setzen | 9.21 | 10.57 | 256146.92 |
in Verbindung setzen | 8.46 | 9.62 | 189682.19 |
in Kenntnis setzen | 8.28 | 9.81 | 101112.02 |
in Bewegung setzen | 8.11 | 9.24 | 149397.91 |
in Brand setzen | 8.10 | 9.33 | 122427.05 |
in Anführungszeichen setzen | 7.50 | 11.96 | 33959.99 |
in Kraft setzen | 6.88 | 7.88 | 77796.85 |
in Marsch setzen | 6.87 | 9.27 | 22041.63 |
in Klammern setzen | 6.55 | 10.08 | 15643.27 |
In order to perform the collocation analysis and other textual queries also on corpus parts where KWIC access requires a login, you need to authorize your application via an access token.
In the case of DeReKo, you cat get an access token from KorAP OAuth settings here. There login, register a new client application, create a new token, copy it and in R use it via the accessToken
parameter:
kco <- new("KorAPConnection", accessToken="<access token>")
You can also persist the access token for subsequent sessions with the persistAccessToken
function:
persistAccessToken(kco)
The whole process is shown in this video:
In order to use the access token for plain corpus queries, i.e. to make corpusQuery
return KWIC snippets, the metadataOnly
parameter must be set to FALSE
, for instance:
new("KorAPConnection") %>% corpusQuery("Ameisenplage", metadataOnly = FALSE) %>% fetchAll()
More elaborate R scripts demonstrating the use of the package can be found in the demo folder.
# Debian, Ubuntu, ... sudo apt -f install # install possibly missing RStudio dependencies sudo apt install r-base-dev libcurl4-gnutls-dev libxml2-dev libsodium-dev libsecret-1-dev libfontconfig1-dev libssl-dev # Fedora, CentOS, RHEL (for older versions use `yum` instead of `dnf`) sudo dnf install R-devel libcurl-devel openssl-devel libxml2-devel libsodium-devel libsecret-devel fontconfig-devel # Arch Linux pacman -S base-devel gcc-fortran libsodium curl
Start RStudio and click on Install Packages… in the Tools menu. Enter RKorAPClient in the Packages input field and click on the Install button (keeping Install Dependencies checked).
If the installation fails for some reason, you might need to update your installed R packages first (Tools -> Check for Package Updates, Select All, Install Updates).
Start R, then install RKorAPClient from CRAN (or development version from GitHub or KorAP's gerrit server).
install.packages("RKorAPClient")
devtools::install_github("KorAP/RKorAPClient") remotes::install_github("KorAP/RKorAPClient") devtools::install_git("https://korap.ids-mannheim.de/gerrit/KorAP/RKorAPClient") remotes::install_git("https://korap.ids-mannheim.de/gerrit/KorAP/RKorAPClient")
Authors: Marc Kupietz, Nils Diewald
Copyright (c) 2021, Leibniz Institute for the German Language, Mannheim, Germany
This package is developed as part of the KorAP Corpus Analysis Platform at the Leibniz Institute for German Language (IDS).
It is published under the BSD-2 License.
The KorAP logo was designed by Norbert Cußler-Volz and is released under the terms of the Creative Commons License BY-NC-ND 4.0.
RKorAPClient imports parts of the highcharter package which has a dependency on Highcharts, a commercial JavaScript charting library. Highcharts offers both a commercial license as well as a free non-commercial license. Please review the licensing options and terms before using the highcharter plot options, as the RKorAPClient
license neither provides nor implies a license for Highcharts.
Highcharts is a Highsoft product which is not free for commercial and governmental use.
By using RKorAPClient you agree to the respective terms of use of the accessed KorAP API services which will be printed upon opening a connection (new("KorAPConnection", ...
).
Contributions are very welcome!
Your contributions should ideally be committed via our Gerrit server to facilitate reviewing (see Gerrit Code Review - A Quick Introduction if you are not familiar with Gerrit). However, we are also happy to accept comments and pull requests via GitHub.
Please note that unless you explicitly state otherwise any contribution intentionally submitted for inclusion into this software shall – as this software itself – be under the BSD-2 License.
Kupietz, Marc / Margaretha, Eliza / Diewald, Nils / Lüngen, Harald / Fankhauser, Peter (2019): What’s New in EuReCo? Interoperability, Comparable Corpora, Licensing. In: Bański, Piotr/Barbaresi, Adrien/Biber, Hanno/Breiteneder, Evelyn/Clematide, Simon/Kupietz, Marc/Lüngen, Harald/Iliadi, Caroline (eds.): Proceedings of the International Corpus Linguistics Conference 2019 Workshop "Challenges in the Management of Large Corpora (CMLC-7)", 22nd of July Mannheim: Leibniz-Institut für Deutsche Sprache, 33-39.
Kupietz, Marc / Diewald, Nils / Margaretha, Eliza (2020): RKorAPClient: An R package for accessing the German Reference Corpus DeReKo via KorAP. In: Calzolari, Nicoletta, Frédéric Béchet, Philippe Blache, Khalid Choukri, Christopher Cieri, Thierry Declerck, Sara Goggi, Hitoshi Isahara, Bente Maegaard, Joseph Mariani, Hélène Mazo, Asuncion Moreno, Jan Odijk, Stelios Piperidis (eds.): Proceedings of The 12th Language Resources and Evaluation Conference (LREC 2020). Marseille: European Language Resources Association (ELRA), 7017-7023.