R
Краткое описание языка | R — язык программирования для статистической обработки данных и работы с графикой, а также свободная программная среда вычислений с открытым исходным кодом в рамках проекта GNU. Используется для обработки, анализа и визуализации данных |
---|---|
Компетенции в каких сферах формирует | Knowledge Constructor, Computational Thinker, Creative Communicator |
Парадигмы программирования | Функциональное программирование |
Возрастная категория | 16 |
Назначение языка (Общее / Учебное) | Специальный прикладной язык |
Visual_Text_Blocks | Текст |
Измерение (2D/3D/Tangible) | 2D |
Область знаний | |
Открытость продукта | Открытый |
Address | https://www.r-project.org/ |
Предки (Ancestors) | Scheme, S |
Потомки (Descendants) | Julia |
Активность в данный момент | Project is active |
Доступны ремиксы? | Да |
Год создания | 1993 |
Создатели | Айхэка |
Поясняющее видео | |
Используется для создания мобильных приложений? | Нет |
- R упоминается в свойствах следующих страниц
- APIs for social scientists: A collaborative review, CSV, Complex network analysis, Data in Education Seminar/28 02 2024, Egorovsn051, Individual-Based Models of Cultural Evolution: A Step-by-Step Guide Using R, Interactive web-based data visualization with R, plotly, and shiny, Learn ggplot2 using Shiny App, MariaMyshkina, Mastering Shiny: Build Interactive Apps, Reports, and Dashboards Powered by R, Modeling Social Behavior: Mathematical and Agent-Based Models of Social Dynamics and Cultural Evolution, Outstanding User Interfaces with Shiny, Patarakin, R for Data Science, Smaldino, Tidy Modeling with R, VOMAS, Virus on a Network, Wickham, Алгоритмы и структуры данных (syllabus), Анализ данных, Анализ социальных сетей/Ключевые понятия, Аналитика, Аналитика мультимодальная, Аналитика учебная, Библиографический анализ области знаний, Библиометрические исследования, Биграф, Биология, Большие данные, Вектор, Воспроизводимость, Временная сложность алгоритма, Вычислительное мышление, Генетика, Гигантская компонента, Гистограмма, Граф, Датасет, Исследовательский анализ данных, Как собрать своё первое приложение Shinу, Классификация, регрессия и другие алгоритмы Data Mining с использованием R, Кластеризация, Клика, Коэффициент кластеризации, Массив, Машинное обучение, Многоагентное моделирование в изучении группового поведения (Syllabus), Множественная регрессия, Модель Лотки — Вольтерры… следующие результаты
- Книги про R
Inventor | Description | |
---|---|---|
APIs for social scientists: A collaborative review | В книге представлено множество API социальных сетей и основы их использования. В статье по этой книге собраны примеры API и особенности работы с ними. Код а книге - R | |
Individual-Based Models of Cultural Evolution: A Step-by-Step Guide Using R | Acerbi | Книга показывает как создавать агентно-ориентированные модели или ABM культурной эволюции. В тексте книги используется код на языке программирования R. От очень простых моделей основных процессов культурной эволюции, таких как предвзятая передача и культурная мутация, к более сложным темам, таким как эволюция социального обучения, демографические эффекты и анализ социальных сетей. |
Interactive web-based data visualization with R, plotly, and shiny | Sievert | Книга по разработке приложений в веб среде на основе языка R + Plotly + Shiny It makes heavy use of plotly for rendering graphics, but you’ll also learn about other R packages that augment a data science workflow, such as the tidyverse and shiny |
Learn ggplot2 using Shiny App | Сетевая книга по освоению приемов работы с пакетом ggplot2 языка R в среде Shiny | |
Mastering Shiny: Build Interactive Apps, Reports, and Dashboards Powered by R | Wickham | Книга о создании аналитических веб-приложений на языке R в среде Shiny |
Modeling Social Behavior: Mathematical and Agent-Based Models of Social Dynamics and Cultural Evolution | Smaldino | Социальные, поведенческие и когнитивные науки исторически полагались на силу слова. Слова имеют силу. Богатые аналогии могут найти отклик в умах читателей и пролить свет на тайны природы. Я говорю о вербальных теориях, описательных объяснениях сложных явлений. Большинство теорий, вероятно, более точны, чем поэтичны, но они, как правило, опираются на свойство большинства языков, согласно которому фраз могут нести в себе несколько возможных импликатур — рассмотрим, например, такие слова, как «восприятие», «категория», «идентичность», «тождественность» обучение» и даже «реакция» достаточно двусмысленны, чтобы допускать множество интерпретаций. То есть язык по своей сути (и адаптивно) расплывчат и двусмыслен. В конечном счете, это проблема для ученых, потому что нам нужно предельно четко понимать, о чем мы говорим, чтобы выдвинуть полезные теории Вселенной. |
Outstanding User Interfaces with Shiny | Granjon | A book about deeply customizing Shiny app for production. |
R for Data Science | Wickham | Подробное руководство по использованию языка R для обработки, модификации, визуализации и программировании данных |
Tidy Modeling with R | Sigle | Руководство по созданию и использованию моделей при помощи пакетов из пространства tidyverse: recipes, parsnip, workflows, yardstick, and others. |
Классификация, регрессия и другие алгоритмы Data Mining с использованием R | Шитиков, Мастицкий | Описана широкая совокупность методов построения статистических моделей классификации и регрессии для откликов, измеренных в альтернативной, категориальной и метрической шкалах. Подробно рассматриваются деревья решений, машины опорных векторов с различными разделяющими поверхностями, нелинейные формы дискриминантного анализа, искусственные нейронные сети и т.д. |
Незримый колледж МЭШ | Patarakin | Статья, в которой понятие незримого колледжа применяется к сообществу учителей, сотрудничающих внутри репозитория московской электронной школы. |
R — язык программирования для статистической обработки данных и работы с графикой. Высокоуровневый язык, ориентированный на решение задач по манипуляции с данными и обладающий широким набором проверенных библиотек (пакетов). R — интерпретируемый язык программирования, основным способом работы с которым является командный интерпретатор. Язык является регистрозависимым, в плане синтаксиса он похож, с одной стороны, на функциональные языки типа Scheme, с другой — на типичные современные сценарные языки, с простым синтаксисом и небольшим набором основных конструкций. Язык объектный: любой программный объект в нём имеет набор атрибутов — именованный список значений, определяющих его.
Используется для анализа данных наряду с NetLogo, graphviz, VUE, Gephi, VOSviewer
https://www.youtube.com/watch?v=uhCVcZ0p0b8
Базовые возможности
Язык поддерживает минимальный набор примитивных типов данных: символьный (character), числовой (numeric), логический (logical) и комплексный (complex). Числовые переменные, помимо обычных чисел, могут принимать специальные значения NaN (Not a Number — «не число») и Inf (Infinity — «бесконечность»).
Типы данных
Значения примитивных типов могут объединяться в векторы (vector), списки (list), матрицы или массивы (matrix), в том числе многомерные; эти комбинированные типы хранят наборы данных одного и того же примитивного типа. Помимо этого язык содержит понятие факторов (factor) — наборов категориальных или шкальных данных, принимающих строго определённый набор значений. Наконец, могут создаваться таблицы (data frame) — структуры данных, которые для каждой строки (индивида) хранят набор различных (и имеющих разные типы) параметров (признаков). Особенностью R является то, что операции с векторами и матрицами поддерживаются на уровне самого языка, как, например, в APL.
Векторы
Векторы (vector) – это одномерные массивы данных, которые могут содержать числовые, текстовые или логические значения. Для создания вектора применяется функция объединения c(). Вот примеры векторов каждого типа:
a <- c(1, 2, 5, 3, 6, -2, 4)
b <- c(“one”, “two”, “three”)
c <- c(TRUE, TRUE, TRUE, FALSE)
Матрицы
Матрица (matrix) – это двумерный массив данных, в котором каждый элемент имеет одинаковый тип (числовой, текстовый или логический). Вы можете обозначать строки, столбцы и элементы матрицы при помощи индексов и квадратных скобок. Например, X[i,] обозначает i-ую строку матрицы X, X[,j] – обозначает ее j-ый столбец, а X[i, j] соответствует элементу этой матрицы, расположенному на пересечении этой строки и этого столбца.
Массивы
Массивы данных (array) сходны с матрицами, но могут иметь больше двух измерений.
Таблицы
Таблица данных (data frame) – это более широко используемый по сравнению с матрицей объект, поскольку разные столбцы могут содержать разные типы данных (числовой, текстовый и т. д.). Таблица данных – это самая часто используемая структура данных в R.
Факторы
Категориальные (номинальные и порядковые) данные называются в R факторами.
Например, есть вектор diabetes <- c(“Type1”, “Type2”, “Type1”, “Type1”).
Команда diabetes <- factor(diabetes) преобразует этот вектор в (1, 2, 1, 1) и устанавливает внутреннее соответствие 1=Type1 и 2=Type2 (присвоение числовых значений происходит в алфавитном порядке).
Установку по умолчанию можно изменить при помощи параметра levels. Например,
status <- factor(status, order=TRUE, levels=c(“Poor”, “Improved”, “Excellent”))
Списки
Списки – это самый сложный тип данных в R. Фактически список – это упорядоченный набор объектов (компонентов).
Как загружать (импортировать данные в R)
- data <- read.table(file.choose(),header=TRUE, sep=";", encoding="UTF-8")
- x <- read.csv(file.choose(),header=TRUE, sep=";", encoding="UTF-8")
mydata <- read.csv(file.choose(),header=TRUE)
mydata <- read.csv(file.choose(),sep=";", as.is=T, header=TRUE)
library(tidyverse)
- dt1 <- read_csv2("0303.csv") - считать таблицу
Как экспортировать данные из R ?
write.csv(x, file="filename", row.names=FALSE)
library(tidyverse)
- write_csv (object "filename.csv")
Как обработать данные в R ?
Удалить ненужные столбцы, выбрать нужные значение по датам и т.д.
Выбрать только нужные столбцы newLD <- subset(letdata, select = c( -rev_user_text, -page_title))
- newLD <- subset(letdata, select = c( rev_user_text, page_title)) - если именно их хотим оставить
LT2 <- data.frame(User = letdata[,4], Page = letdata[,3])
Отсортировать по времени
- sort1.let <- newLD[order(NewLD$rev_timestamp), ]
- Например, сортируем историю летописи lhist2 <- lhist[order(lhist$rev_timestamp),]
Выбрать уникальные значения ubi2 <- data.frame(User = ubi[,2], Page = ubi[,3])
- users <- unique(ubi2[,1])
- pages <- unique(ubi2[,2])
- users2006 <- unique(lhist.sub2006[,2]) ;
А теперь посчитать сколько в списке участников
- Выбрать только тех, у кого есть все значения
- newdata <- na.omit(lhist )
Как выбрать тех, у кого значение соответствует указанному - Например, 2006
grep(pattern = "2006", lethist, value = TRUE)
subset(x, ...) — возвращает подмножество элемента, которое соответствует заданному условию
Диаграммы
dev.new() plot()
Специальные пакеты
igraph
Пакет для работы с графами - создание и визуализация графов
tidyverse
Пакет упрощающий работу с данными.
tidygraph
Пакет для обработки решеток Келли - OpenRepGrid
R + NetLogo
R + Gephi
Shiny