{"id":24797908,"url":"https://github.com/agricolamz/uvular_database","last_synced_at":"2025-03-24T21:22:04.025Z","repository":{"id":131293935,"uuid":"80499232","full_name":"agricolamz/uvular_database","owner":"agricolamz","description":"Uvular consonants in Languages of the Caucasus","archived":false,"fork":false,"pushed_at":"2017-02-01T09:44:29.000Z","size":4869,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-30T01:32:09.887Z","etag":null,"topics":["database","linguistics","phonology","r-markdown"],"latest_commit_sha":null,"homepage":"https://agricolamz.github.io/uvular_database/","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/agricolamz.png","metadata":{"files":{"readme":"README.Rmd","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-01-31T07:14:55.000Z","updated_at":"2018-12-18T07:44:52.000Z","dependencies_parsed_at":"2023-04-16T14:32:52.924Z","dependency_job_id":null,"html_url":"https://github.com/agricolamz/uvular_database","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agricolamz%2Fuvular_database","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agricolamz%2Fuvular_database/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agricolamz%2Fuvular_database/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agricolamz%2Fuvular_database/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/agricolamz","download_url":"https://codeload.github.com/agricolamz/uvular_database/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245352346,"owners_count":20601133,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database","linguistics","phonology","r-markdown"],"created_at":"2025-01-30T01:31:53.761Z","updated_at":"2025-03-24T21:22:03.999Z","avatar_url":"https://github.com/agricolamz.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"---\nauthor: \"G. Moroz, S. Martynova\"\noutput: html_document\n---\n\n```{r setup, include=FALSE}\nknitr::opts_chunk$set(echo = FALSE, message = FALSE)\n```\n\n###  On Uvular Consonants in Languages of the Caucasus {.tabset .tabset-fade .tabset-pills}\nAuthors: S. Martynova, G. Moroz\n\nHere is an [abstract](https://www.overleaf.com/7958421gcxnsztnxdqn). Download database: [.csv](https://raw.githubusercontent.com/agricolamz/uvular_database/master/uvular_database.csv)\n\n#### about database\nHere is a map of the languages from database:\n```{r}\nlibrary(tidyverse)\nsetwd(\"/home/agricolamz/_DATA/OneDrive1/_Work/Abstracts/2017 I 17.04.15-19 Uvulars Paris\")\nuvular \u003c- read.csv(\"uvular_database.csv\", stringsAsFactors = F, quote = \"\\\"\")\n# install.packages(\"devtools\"); devtools::install_github(\"agricolamz/lingtypology\", dependencies = TRUE)\nuvular$popup \u003c- sapply(uvular$language, function(x){\n  paste(uvular[uvular$language == x, 2], collapse = \", \")\n})\nuvular$uvular_number \u003c- factor(sapply(uvular$language, function(x){\n  length(uvular[uvular$language == x, 2])\n}))\n\nuvular$type \u003c- \"small (\u003c4)\"\nuvular[as.integer(uvular$uvular_number) \u003e 7, 8] \u003c- \"large (\u003e7)\"\nuvular[as.integer(uvular$uvular_number) \u003c 8 \u0026 as.integer(uvular$uvular_number) \u003e 3, 8] \u003c- \"average\"\nuvular$type \u003c- factor(uvular$type, levels = c(\"small (\u003c4)\", \"average\", \"large (\u003e7)\"))\n\n\nlibrary(lingtypology)\nmap.feature(unique(uvular[,-2])$language, control = F, tile = \"CartoDB.Positron\", popup = unique(uvular[,-2])$popup, features = unique(uvular[,-2])$type)\n```\n\n#### search\n```{r}\nlibrary(DT)\ndatatable(uvular[,-c(3, 4, 5, 6)], filter = 'top', rownames = FALSE, options = list(pageLength = 30, dom = 'tip'), escape = FALSE)\n```\n\n#### summary\n```{r}\nlibrary(DT)\ndatatable(unique(uvular[,-c(2, 4, 5, 6)]), filter = 'top', rownames = FALSE, options = list(pageLength = 30, dom = 'tip'), escape = FALSE)\n```\n\n#### graphs\n```{r}\nlibrary(tidyverse)\nmy.data \u003c- unique(uvular[,c(1, 5, 7)])\nmy.data2 \u003c- unique(uvular[,c(1, 7)])\nmy.data %\u003e%\n  ggplot(aes(uvular_number, fill = family))+\n  geom_bar(data = my.data2, fill = \"lightgrey\")+\n  geom_bar()+\n  xlab(\"number of uvulars\")+\n  ylab(\"number of languages\")+\n  scale_y_continuous(breaks = 1:5*2) +\n  theme_bw()+\n  facet_wrap(~family, scales = \"free\")+\n  guides(fill=FALSE)+\n  labs(title = \"Number of uvulars by branch\",\n       subtitle = \"All together shadow is colored in grey\")\n  \n```\n```{r}\nsort(table(uvular$uvular), decreasing = T)\n```\n\n#### coocure\n```{r, message=FALSE, warning=FALSE}\n# create all possible сombinations\nall.combination \u003c- expand.grid(uvular$uvular, uvular$uvular, stringsAsFactors = F)\n# delete duplicates\nall.combination \u003c- all.combination[all.combination[,1] != all.combination[,2],]\n\nall.combination$combo \u003c- mapply(function(pattern_1, pattern_2){\n  paste0(sort(c(pattern_1, pattern_2)), collapse = \"\")},\n  all.combination[,1], all.combination[,2])\n\nall.combination \u003c- all.combination[!duplicated(all.combination$combo),]\nall.combination \u003c- all.combination[,-3]\n\npattern_and_pattern \u003c- function(pattern_1, pattern_2){\n    grepl(pattern_1, uvular[uvular$language == langs,6][1])\u0026\n          grepl(pattern_2, uvular[uvular$language == langs,6][1])}\n\nall.combination.copy \u003c- all.combination\nsapply(1:39, function(x){\n  langs \u003c\u003c- unique(uvular$language)[x]\n  mapply(function(pattern_1, pattern_2){\n    pattern_and_pattern(pattern_1, pattern_2)},\n    all.combination[,1], all.combination[,2]) -\u003e\u003e all.combination.copy[,2+x]}) -\u003e df\n\nall.combination$sum \u003c-  apply(all.combination.copy[,c(3:41)], 1, sum)\nnames(all.combination) \u003c- c(\"segment 1\", \"segment 2\", \"number of languages\")\n\ncombination \u003c- all.combination[complete.cases(all.combination$`number of languages`),]\n\ncombination \u003c- combination[as.integer(combination$`number of languages`) \u003e 0,]\n\nlibrary(DT)\ndatatable(combination, filter = 'top', rownames = FALSE, options = list(pageLength = 30, dom = 'tip'), escape = FALSE)\n\n# combination %\u003e% \n#   arrange(desc(`number of languages`)) %\u003e% \n#   spread(`segment 2`, `number of languages`) -\u003e\n#   combination\n# \n# write.csv(combination, \"combinations.csv\", row.names = F)\n\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagricolamz%2Fuvular_database","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fagricolamz%2Fuvular_database","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagricolamz%2Fuvular_database/lists"}