Тема 1: Основы R. 2 Содержание Преимущества R Список литературы Обзор возможностей R Интерфейс R Рабочая среда R Помощь R Пакеты R Сохранение результатов.

Презентация:



Advertisements
Похожие презентации
1. Определить последовательность проезда перекрестка
Advertisements

Таблица умножения на 8. Разработан: Бычкуновой О.В. г.Красноярск год.
1 Знаток математики Тренажер Таблица умножения 2 класс Школа 21 века ®м®м.

Фрагмент карты градостроительного зонирования территории города Новосибирска Масштаб 1 : 6000 Приложение 7 к решению Совета депутатов города Новосибирска.
1 Знаток математики Тренажер Таблица умножения 3 класс Школа России Масько Любовь Георгиевна Муниципальное общеобразовательное учреждение средняя общеобразовательная.
Строки символов Строка в Паскале – упорядоченная последовательность символов. Количество символов в строке называется ее длиной. Длина строки в Паскале.
Урок повторения по теме: «Сила». Задание 1 Задание 2.
Фрагмент карты градостроительного зонирования территории города Новосибирска Масштаб 1 : 6000 Приложение 7 к решению Совета депутатов города Новосибирска.
Применение генетических алгоритмов для генерации числовых последовательностей, описывающих движение, на примере шага вперед человекоподобного робота Ю.К.
Массивы Материалы к урокам по программированию. МАССИВ это УПОРЯДОЧЕННАЯ последовательность данных ОДНОГО ТИПА. Массивы относятся к структурированным.
ОДНОМЕРНЫЕ МАССИВЫ. РАБОТА С ЭЛЕМЕНТАМИ СТРУКТУРИРОВАННЫЕ ТИПЫ ДАННЫХ.
Лекция 1 Раздел 1 Windows Phone Темы раздела 3 Windows Phone Устройство на платформе Windows Phone 4.
Лекция 2 Раздел 2.1 Windows Phone Темы раздела 3.
Развивающая викторина для детей "Самый-самый " Муниципальное общеобразовательное учреждение средняя общеобразовательная школа 7 ст. Беломечётской.
Набор игр Создание игровых ситуаций на уроках математики повышает интерес к математике, вносит разнообразие и эмоциональную окраску в учебную работу, снимает.
Прототип задания В3 Площади фигур. Задание 1 Задание 2.
Урок-обобщение (7 класс – алгебра) МОУ "СОШ 45 г. Чебоксары" Кабуркина М. Н.1.
П РОТОТИП ЗАДАНИЯ В3 В МАТЕРИАЛАХ ЕГЭ Площади фигур.
3 Законы Кирхгофа справедливы для линейных и нелинейных цепей при постоянных и переменных напряжениях и токах.
Транксрипт:

Тема 1: Основы R

2 Содержание Преимущества R Список литературы Обзор возможностей R Интерфейс R Рабочая среда R Помощь R Пакеты R Сохранение результатов Использование результатов Основы программирования на языке R

3 Преимущества R - Бесплатное программное обеспечение - Доступно на Windows, Unix, Mac OS - Широкие возможности проведения статистического анализа (в т.ч. методы, недоступные в других пакетах) - Интуитивно понятный объектно- ориентированный язык высокого уровня - Широкие возможности графической визуализации результатов анализа Основы программирования на языке R

4 Список литературы Each of the following tutorials are in PDF format. P. Kuhnert & B. Venables, An Introduction to R: Software for Statistical Modeling & ComputingAn Introduction to R: Software for Statistical Modeling & Computing J.H. Maindonald, Using R for Data Analysis and GraphicsUsing R for Data Analysis and Graphics B. Muenchen, R for SAS and SPSS UsersR for SAS and SPSS Users W.J. Owen, The R GuideThe R Guide D. Rossiter, Introduction to the R Project for Statistical Computing for Use at the ITCIntroduction to the R Project for Statistical Computing for Use at the ITC W.N. Venebles & D. M. Smith, An Introduction to RAn Introduction to R Основы программирования на языке R

5 Paul Geissler's excellent R tutorialexcellent R tutorial Excellent Tutorials by David Rossitier Excellent tutorial an nearly every aspect of R (c/o Rob Kabacoff) Excellent tutorial an nearly every aspect of R Introduction to R by Vincent Zoonekynd R Cookbook The Art of R Основы программирования на языке R Список литературы

6 R Concepts and Data Types presentation by Deepayan Sarkar R Concepts and Data Types The R Wiki An Introduction to R A Handbook of Statistical Analyses Using R(Brian S. Everitt and Torsten Hothorn) A Handbook of Statistical Analyses Using R Основы программирования на языке R Список литературы

Основы программирования на языке R7 Можно вводить команды одну за другой в командной строке (>) или запустить последовательность команд из файла- источника Язык R содержит огромное количество различных типов данных, включая векторы (числовые, строковые, логические), матрицы, блоки данных и списки (vector, matrix, data.frame, list) Для выхода из R достаточно ввести команду >q() Обзор возможностей R

8 Гибкость языка R обеспечивается посредством встроенных и пользовательских функций. Во время работы с R все пользовательские данные хранятся в памяти программы Базовые функции доступны по умолчанию. Другие функции содержатся в особых статистических пакетах и могут быть загружены во время работы Основы программирования на языке R Обзор возможностей R

9 Основным навыком программирования в R является умение использовать встроенную справочную систему. Фундаментальным свойством языка R является тот факт, что выходные данные одного объекта могут использоваться в качестве входных данных для другого. Обзор возможностей R Основы программирования на языке R

10 Интерфейс R Основы программирования на языке R

11 Введение в R Результаты вычислений могут храниться в различных объектах с использованием операторов присвоения: Стрелка (

12 Объекты R могут использоваться в последовательных расчетах. Для того, чтобы обратиться к объекту, необходимо напечатать в рабочей области имя объекта Требования к имени объекта Имя объекта не может содержать символы !, +, -, # Точка (.) и подстрочное подчеркивание (_) разрешены Имя объекта может содержать число, но не может начинаться с числа Язык R чувствителен к регистру Введение в R Основы программирования на языке R

13 Пример > # An example > x x[(x>8) | (x # yields > # How it works > x X > > x > 8 > F F F F F F F F T T > x < 5 > T T T T F F F F F F > x > 8 | x < 5 > T T T T F F F F T T > x[c(T,T,T,T,F,F,F,F,T,T)] > Основы программирования на языке R

14 Введение в R Для выведения списка всех объектов, доступных в текущей сессии R, используется функция lsT > ls() [1] "x" "y" Для того, чтобы обратиться к коду функции, достаточно ввести ее имя в командной строке Каждая из функций имеет аргументы, которые могут быть просмотрены при помощи клавиши tab > ls(pattern="x") [1] "x" "x2" Основы программирования на языке R

15 Если переменной присвоить некоторое значение, то ее предыдущее значение (в случае наличия такового) будет стерто без каких-либо уведомлений Для удаления объектов из рабочей среды используется функция rm rm(x, x2) Удалить все объекты можно при помощи команды rm(list=ls()) Основная функция, отвечающая за построение графиков – plot z2

16 R чувствителен к регистру MODEL, Model, model – различные объекты Введение в R Основы программирования на языке R

17 > x = sin(9)/75 > y = log(x) + x^2 > x [1] > y [1] > m m > [,1] [,2] [1,] 1 4 [2,] 2 1 > solve(m) [,1] [,2] [1,] [2,] Введение в R Основы программирования на языке R

18 Рабочая среда R Объекты, создаваемые в R, содержатся в памяти программы (рабочая среда). Объекты рабочей среды НЕ сохраняются после закрытия программы автоматически! Требуется ручное сохранение Основы программирования на языке R

19 При работе в R можно изменить имя рабочей папки. ## just checking what the current working directory is getwd() ## setwd("C:/Users/Desktop/VaR/Gmail") Рабочая среда R Основы программирования на языке R

20 Рабочая среда R Команды можно ввозить в интерактивном режиме в командной строке. Стрелки вверх и вниз позволяют перемещаться по истории команд Различные проекты R необходимо хранить в различных физических папках Основы программирования на языке R

21 #Просмотр и установка параметров рабочей сессии help(options) # options() # просмотреть текущие параметры options(digits=3) # количество знаков после запятой # Работа с предыдущими командами history() # вывести последние 25 команд history(max.show=Inf) #вывести все команды Рабочая среда R Основы программирования на языке R

22 # Сохранить историю команд savehistory(file="myfile") # default is ".Rhistory" # Загрузить историю команд loadhistory(file="myfile") # default is ".Rhistory Рабочая среда R Основы программирования на языке R

23 Помощь R В языке программирования R имеется встроенная система справки R help.start() # Общая справка help(F) # Справка по функции F ?F # То же example(F) # Пример использования функции F Основы программирования на языке R

24 Встроенные базы R R содержит встроенные базы данных, которые можно использовать для обучения > data( ) # Загрузка всех доступных пакетов > help(datasetname) Основы программирования на языке R

25 Пакеты R Одним из преимуществ R является легкость расширения дистрибутива. Система позволяет создавать новые процедуры и функции, а также подгружать новые пакеты (R Package или R library) Примеры доступных пакетов: Оптимизация портфеля ценных бумаг Анализ временных рядов Нейронные сети GARCH-модели Основы программирования на языке R

26 Сохранение изображений Для сохранения изображений R имеет особые функции. Для сохранения графика в терминале используется dev.off( ) FunctionOutput to pdf("mygraph.pdf")pdf file win.metafile("mygraph.wmf")windows metafile png("mygraph.png")png file jpeg("mygraph.jpg")jpeg file bmp("mygraph.bmp")bmp file postscript("mygraph.ps")postscript file Основы программирования на языке R

27 # example - output graph to jpeg file jpeg("c:/mygraphs/myplot.jpg") plot(x) dev.off() Сохранение изображений Основы программирования на языке R

28 Использование результатов модели Язык программирования R позволяет сохранять результаты анализа и использовать их как входной параметр для дальнейшего исследования # Пример lm(mpg~wt, data=mtcars) Пример рассчитывает параметры линейной регрессии для переменных mpg и wt. Результаты отображены на экране Основы программирования на языке R

29 # Пример fit

30 # график остатков и прогнозных значений) plot(fit$residuals, fit$fitted.values) Для просмотра выходных данных достаточно открыть по ней справку: help(lm). Многие функции допускают применение функции plot ко всему объекту: # produce diagnostic plots plot(fit) Основы программирования на языке R Использование результатов модели

Тема 2:Входные данные

32 Содержание Типы данных Импорт данных Ввод с клавиатуры Ввод баз данных в программную среду Просмотр данных Пропущенные значения Дата и время Основы программирования на языке R

33 Типы данных Данные в R могут быть представлены в виде большого числа типов данных (скаляры, векторы, матрицы, базы данных, списки). Основы программирования на языке R

34 Векторы a

35 Матрицы Все колонки матрицы должны быть одного типа и одной и той же длины Общая форма: mymatrix

36 Матрицы # создание числовой матрицы 5 x 4 y

37 Массивы Массивы имеют структуру, схожую с матрицами, но могут иметь более 2 измерений help(array) Основы программирования на языке R

38 Таблицы данных Таблица данных по структуре напоминает расширенную матрицу, однако данные в разных колонках могут быть различного типа. d

39 Таблицы данных Существует множество способов идентификации элементов таблицы данных myframe[3:5] # колонки 3,4,5 myframe[c("ID","Age")] # колонки ID и Age myframe$X1 # переменная x1 Основы программирования на языке R

40 Списки Список – нумерованная последовательность объектов (компонентов списка). Список позволяет собрать множество различных объектов (не обязательно одного и того же класса) # Пример списка из 4 компонентов w

41 Списки Компоненты списка определяются с использованием следующих знаков: [[]] mylist[[2]] # 2-ой элемент списка Основы программирования на языке R

42 Факторы Переменную, принимающую конечное число значений, можно преобразовать в фактор. Объект типа «Фактор» хранит возможные значения переменной в виде вектора. # variable gender with 20 "male" entries and # 30 "female" entries gender

43 Полезные функции length(object) # Число элементов в объекте str(object) # Структура объекта class(object) # Класс объекта names(object) # Имена элементов объекта c(object,object,...) # соединить объекты в вектор cbind(object, object,...) # объединить объекты как столбцы rbind(object, object,...) # объединить объекты как строки ls() # Показать список текущих объектов rm(object) # Удалить объект Основы программирования на языке R

44 Импорт данных (.csv) # Первая строка должна содержать имена переменных mydata

45 Ввод данных с клавиатуры Для создания данных в интерактивном режиме используются следующие функции age

46 Ввод данных с клавиатуры # Ввод данных в режиме редактора mydata

47 Просмотр данных Существуют различные способы просмотра имеющихся данных # Просмотр объектов в рабочей среде ls() # Просмотр переменных объекта names(mydata) # Просмотр структуры объекта str(mydata) # Размерность объекта dim(object) Основы программирования на языке R

48 Просмотр данных Существуют различные способы просмотра имеющихся данных # Просмотр класса объекта class(object) # Вывод на экран объекта mydata # Вывод первые 10 строк объекта head(mydata, n=10) # Вывод первых 10 строк объекта tail(mydata, n=5) Основы программирования на языке R

49 Пропущенные значения В R пропущенные значения обозначаются символом NA. Невозможные значения переменных (например, в результате деления на ноль) обозначаются символом NaN (not a number). Тестирование переменной на пропущенные значения is.na(x) # Возвращает TRUE, если x – пропущенное значение y

50 Пропущенные значения Замена значений переменной на пропущенные # замена числа 99 на пропущенные значения в строке v1 mydata[mydata$v1==99,"v1"]

51 Пропущенные значения Функция complete.cases возвращает логический вектор, характеризующий заполненные наблюдения # список строк, которые содержат пропущенные значения mydata[!complete.cases(mydata),] Функция na.omit() возвращает объект с поэелементным удалением пропущенных значений # Создание таблицы данных без пропущенных значений newdata

52 Дата и время Даты представлены в R как число дней, прошедших с (в случае обратного отсчета используются отрицательные значения) # функция as.Date( ) для преобразования формата к дате mydates

53 Дата и время Следующие символы могут использоваться для форматирования даты: SymbolMeaningExample %dday as a number (0-31)01-31 %a %A abbreviated weekday unabbreviated weekday Mon Monday %mmonth (00-12)00-12 %b %B abbreviated month unabbreviated month Jan January %y %Y 2-digit year 4-digit year Основы программирования на языке R

54 Дата и время # print today's date today

Тема 3: Манипулирование данными

56 Содержание Создание новой переменной Операторы Встроенные функции Функции контроля / циклы Пользовательские функции Сортировка Объединение Преобразования типов Основы программирования на языке R

57 Создание переменных Для создания новых переменных используется оператор

58 Создание категорий # Создание новых категорий mydata$agecat 70, c("older"), c("younger")) # Создание трех возрастных категорий attach(mydata) mydata$agecat[age > 75] 45 & age

59 Арифметические операции Оператор Описание +суммирование -разность *умножение /деление ^ or **возведение в степень x % yостаток от деления (5%2 =1) x %/% yцелочисленное деление (5%/%2=2) Основы программирования на языке R

60 Логические операторы Оператор Описание =больше или равно ==в точности равно !=не равно !xне x x | yx OR y x & yx AND y isTRUE(x)тестирование x (ИСТИНА/ЛОЖЬ) Основы программирования на языке R

61 Структуры контроля/циклы В R реализованы стандартные циклы, которые должны быть заключены в скобки {} С точки зрения производительности лучше использовать встроенные функции, нежели циклы, когда это возможно Основы программирования на языке R

62 Контрольные структуры if-else if (cond) expr if (cond) expr1 else expr2 for for (var in seq) expr while while (cond) expr switch switch(expr,...) ifelse ifelse(test,yes,no)

63 Контрольные структуры # Транспонирование матрицы # Альтернативы встроенной функции t() mytrans

64 Контрольные структуры # Пример z

65 Встроенные функции R Практически любая операция в R связана с применением функций. Функции могут быть применены к ЛЮБЫМ объектам (в т. ч. список определенного типа, вектор, матрица, пр.) Основы программирования на языке R

66 Числовые функции Функция Описание abs(x)модуль числа sqrt(x)квадратный корень ceiling(x)округление вверх ceiling(3.475)=4 floor(x)округление вниз floor(3.475)=3 trunc(x)целая часть числа trunc(5.99)=5 round(x, digits=n)округление round(3.475, digits=2)=3.48 cos(x), sin(x), tan(x)также acos(x), cosh(x), acosh(x), log(x)натуральный логарифм log10(x)десятичный логарифм exp(x)e^x Основы программирования на языке R

Applied Statistical Computing and Graphics67 Функция Описание dnorm(x)Normal distribution density (by default m=0 sd=1) # plot standard normal curve x

68 FunctionDescription mean(x, trim=0, na.rm=FALSE) mean of object x # trimmed mean, removing any missing values and # 5 percent of highest and lowest scores mx

69 Другие полезные функции Функция Описание seq(from, to, by)Создание последовательности чисел indices

70 Сортировка Сортировка данных производится при помощи функции order( ) function. По умолчанию сортировка проводится по возрастанию (ASCENDING). # Пример сортировки data(mtcars) # sort by mpg newdata = mtcars[order(mtcars$mpg),] # sort by mpg and cyl newdata

71 Объединение Для объединения двух таблиц данных используется функция merge. В большинстве случае можно объединить две таблицы данных по одному или нескольким ключам (inner join). # Объединение таблиц данных по ID total

72 Объединение Добавление строк Для добавление строк к таблице данных используется функция rbind. Таблицы данных должны иметь одинаковые переменные, но не обязательно одинаковую размерность total

73 Преобразования данных Полезные функции: is.numeric(), is.character(), is.vector(), is.matrix(), is.data.frame() as.numeric(), as.character(), as.vector(), as.matrix(), as.data.frame) Основы программирования на языке R