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
APIs for social scientists: A collaborative review, 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, 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, R for Data Science, Tidy Modeling with R, Классификация, регрессия и другие алгоритмы Data Mining с использованием R, Незримый колледж МЭШ
R — язык программирования для статистической обработки данных и работы с графикой. Высокоуровневый язык, ориентированный на решение задач по манипуляции с данными и обладающий широким набором проверенных библиотек (пакетов). R — интерпретируемый язык программирования, основным способом работы с которым является командный интерпретатор. Язык является регистрозависимым, в плане синтаксиса он похож, с одной стороны, на функциональные языки типа Scheme, с другой — на типичные современные сценарные языки, с простым синтаксисом и небольшим набором основных конструкций. Язык объектный: любой программный объект в нём имеет набор атрибутов — именованный список значений, определяющих его.
Используется для анализа данных наряду с NetLogo, graphviz, VUE, Gephi, VOSviewer
Базовые возможности
Язык поддерживает минимальный набор примитивных типов данных: символьный (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
Пакет упрощающий работу с данными.
Книги по Tidyverse
- Hadley Wickham and Garrett Grolemund - R for Data Science Import, Tidy, Transform, Visualize, and Model Data 2017
tidygraph
Пакет для обработки решеток Келли - OpenRepGrid