Файл: Методическое пособие язык программирования к ф. м н., доцент Мусин Наиль Минбариевич Новомосковск 2015 содержание mind Map 3 Начало работы 5.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 06.12.2023

Просмотров: 62

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Mind Map

Начало работы

Установка рабочей папки

CTRL+L

Числа и переменные. Функция c()

Округление

Функции пользователя

Векторы, их сложение и вычитание. Скалярное произведение

Отбор элементов вектора. Сортировка

Списки. Функция list()

Таблицы (фреймы). Функция frame()

Работа с файлами

Блокнот

Excel

for, while, векторизация

if switch r-файлы Последовательность совершенных действий можно сохранить в текстовый файл: расширение txt заменить на r (пусть файл назвали xxx.r), открыть файл в Блокноте и отредактировать, в частности, убрать значок ввода > Чтобы запустить этот файл, нужно ввести команду source(“xxx.r”) Эконометрика Однопараметрическая регрессия Проведём анализ связи между кредитами, предоставленными предприятиям, организациям, банкам и физическим лицам, млн руб., и основными фондами в экономике (по полной балансовой (учетной) стоимости; на конец 2001 года, по следующим данным:Социально-экономические показатели субъектов РФ на начало 2001 г. Регион Кредиты, предоставленные предприятиям, организациям, банкам и физическим лицам, млн руб. Основные фонды в экономике (по полной балансовой (учетной) стоимости; на конец года), млн руб. Белгородская область 342,5 145787 Брянская область 275,4 113415 Владимирская область 112,1 129272 Воронежская область 274,5 211898 Ивановская область 141,5 84550 Калужская область 129 105783 Костромская область 50,7 83716 Курская область 401,3 124453 Липецкая область 125,3 129114 Московская область 5814,2 659675 Орловская область 58 64366 Рязанская область 456,5 110379 Смоленская область 192,2 125247 Тамбовская область 82,3 111642 Тверская область 319,1 175833 Тульская область 638,3 156543 Ярославская область 727,9 185442 Москва 811856,3 1384509 Республика Карелия 41 90800 Республика Коми 654,1 201201 Архангельская область 103,3 198340 Вологодская область 2411,2 136362 Калининградская область 784,4 75707 Ленинградская область 244,7 223013 Мурманская область 490,7 144824 Новгородская область 221,8 65864 Псковская область 163,5 74695 Санкт–Петербург 41581 412221 Республика Адыгея 60,3 47056 Республика Дагестан 469,5 134133 Республика Ингушетия 10,5 5139 Кабардино-Балкарская Республика 81,7 48059 Республика Калмыкия 46,4 21677 Карачаево-черкесская Республика 96,4 32493 Республика Северная Осетия – Алания 356,5 43296 Краснодарский край 2463,5 479549 Ставропольский край 278,6 205580 Астраханская область 321,9 106980 Волгоградская область 782,9 206817 Ростовская область 19140 299151 Республика Башкортостан 14330,5 407013 Республика Марий Эл 52,2 95617 Республика Мордовия 304,8 70373 Республика Татарстан 9739,4 477390 Удмуртская Республика 934,9 180173 Чувашская Республика 137,9 113170 Кировская область 311 148026 Нижегородская область 4833,2 294133 Оренбургская область 502,8 234022 Пензенская область 383,5 123940 Пермская область 1300,9 302898 Самарская область 7051,4 482883 Саратовская область 1832,9 268971 Ульяновская область 1448 125943 Курганская область 75,5 93139 Свердловская область 10187,3 580302 Тюменская область 9666,7 1083475 Челябинская область 4805,5 404407 Республика Алтай 29,8 15278 Республика Бурятия 817,4 91700 Республика Тыва 14,8 14652 Республика Хакасия 158,8 61889 Алтайский край 405,2 191413 Красноярский край 1320,6 383673 Иркутская область 1053,6 339505 Кемеровская область 1435,1 313617 Новосибирская область 1682,8 302292 Омская область 1774,7 190292 Томская область 338 149647 Читинская область 57 105245 Республика Саха (Якутия) 408 220865 Приморский край 1439 166236 Хабаровский край 1933,3 248304 Амурская область 108,5 141651 Камчатская область 661,6 62198 Магаданская область 236,8 45747 Сахалинская область 247,9 97652 Источник данных: Регионы России. 2000. – М., 2001 г.Для удобства работы составим отдельную таблицу, в которой регионы будут перенумерованы: Белгородская область Ростовская область Брянская область Республика Башкортостан Владимирская область Республика Марий Эл Воронежская область Республика Мордовия Ивановская область Республика Татарстан Калужская область Удмуртская Республика Костромская область Чувашская Республика Курская область Кировская область Липецкая область Нижегородская область Московская область Оренбургская область Орловская область Пензенская область Рязанская область Пермская область Смоленская область Самарская область Тамбовская область Саратовская область Тверская область Ульяновская область Тульская область Курганская область Ярославская область Свердловская область Москва Тюменская область Республика Карелия Челябинская область Республика Коми Республика Алтай Архангельская область Республика Бурятия Вологодская область Республика Тыва Калининградская область Республика Хакасия Ленинградская область Алтайский край Мурманская область Красноярский край Новгородская область Иркутская область Псковская область Кемеровская область Санкт-Петербург Новосибирская область Республика Адыгея Омская область Республика Дагестан Томская область Республика Ингушетия Читинская область Кабардино-Балкарская Республика Республика Саха (Якутия) Республика Калмыкия Приморский край Карачаево-черкесская Республика Хабаровский край Республика Северная Осетия – Алания Амурская область Краснодарский край Камчатская область Ставропольский край Магаданская область Астраханская область Сахалинская область Волгоградская область Из исходной таблицы удалим столбец с названиями регионов, далее произведём над ней следующие преобразования.В таблицу с данными введём следующие обозначения переменных:x - кредиты, предоставленные предприятиям, организациям, банкам и физическим лицам, млн руб.y - основные фонды в экономике (по полной балансовой (учетной) стоимости; на конец года), млн руб.Получим следующую таблицу, которую сохраним в текстовом файле data.txt в рабочей папке среды R: x y 342,5 145787 275,4 113415 112,1 129272 274,5 211898 141,5 84550 129 105783 50,7 83716 401,3 124453 125,3 129114 5814,2 659675 58 64366 456,5 110379 192,2 125247 82,3 111642 319,1 175833 638,3 156543 727,9 185442 811856,3 1384509 41 90800 654,1 201201 103,3 198340 2411,2 136362 784,4 75707 244,7 223013 490,7 144824 221,8 65864 163,5 74695 41581 412221 60,3 47056 469,5 134133 10,5 5139 81,7 48059 46,4 21677 96,4 32493 356,5 43296 2463,5 479549 278,6 205580 321,9 106980 782,9 206817 19140 299151 14330,5 407013 52,2 95617 304,8 70373 9739,4 477390 934,9 180173 137,9 113170 311 148026 4833,2 294133 502,8 234022 383,5 123940 1300,9 302898 7051,4 482883 1832,9 268971 1448 125943 75,5 93139 10187,3 580302 9666,7 1083475 4805,5 404407 29,8 15278 817,4 91700 14,8 14652 158,8 61889 405,2 191413 1320,6 383673 1053,6 339505 1435,1 313617 1682,8 302292 1774,7 190292 338 149647 57 105245 408 220865 1439 166236 1933,3 248304 108,5 141651 661,6 62198 236,8 45747 247,9 97652 Считываем данные из файла data.txt:data= read.table("data.txt", head=TRUE)attach(data)Поле корреляции (коррелограмму, диаграмму рассеяния) строится автоматически с помощью команды plot(x,y): В правом верхнем углу мы видим точку, значительно отклоняющуюся от основной группы. Она соответствует данным по региону 18, то есть по Москве. Эту точку следует убрать. Получается следующее поле корреляции: Убираем ещё две точки (по Санкт-Петербургу и Тюменской области). Построенное поле корреляции с довольно отчётливой тенденцией: Ясно, что зависимость будет скорее квадратичной, но ни в коем случае не показательной и не гиперболической (эти зависимости являются либо строго возрастающими, либо строго убывающими). Ищем зависимость в виде lm(formula = y x + I(x^2))Residuals:Min 1Q Median 3Q Max -150565 -51166 -5482 32731 189131 Coefficients:Estimate Std. Error t value Pr(>|t|) (Intercept) 97020 10420 9.313 6.21e-14 ***x 89050 7.588 1.735 2e-16 ***I(x^2) -0.0043 0.00486 -8.778 6. 04e-13 ***Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 73050 on 71 degrees of freedomMultiple R-squared: 0.7165, Adjusted R-squared: 0.7085 F-statistic: 89.7 on 2 and 71 DF, p-value: < 2.2e-16Все коэффициенты a, b и c значимы по критерию Стьюдента на уровне p-value < 0.001; это показывают *** в столбце Coefficients) и сами значения p-value Pr(>|t|): для коэффициента a, для коэффициента b и для коэффициента с. Уравнение квадратичной регрессии Среднеквадратичное отклонение (Adjusted R-squared) для данной модели составляет , то есть качество модели достаточно высокое. Значимость среднеквадратичного отклонения подтверждает и высокое значение F-статистики Фишера, равное 89.7, и общий уровень значимости (определяемый по этой статистике): p-value: , что много меньше обычно достаточного на практике значения 0.001.Рассмотрим для сравнения остальные модели для нашей задачи.Линейная модель :> summary(lm(yx))Call:lm(formula = y x)Residuals:Min 1Q Median 3Q Max -345935 -66123 -16070 56229 368348 Coefficients:Estimate Std. Error t value Pr(>|t|) (Intercept) 1.370e+05 1.344e+04 10.194 1.30e-15 ***x 2.655e+01 3.763e+00 7.055 8.75e-10 ***Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 104800 on 72 degrees of freedomMultiple R-squared: 0.4087, Adjusted R-squared: 0.4005 F-statistic: 49.77 on 1 and 72 DF, p-value: 8.752e-10Среднеквадратичное отклонение (Adjusted R-squared) для линейной модели составляет , качество модели неудовлетворительное.Экспоненциальная модель > summary(lm(log(y)x))Call:lm(formula = log(y) x)Residuals:Min 1Q Median 3Q Max -3.0420 -0.2631 0.1443 0.5378 1.1769 Coefficients:Estimate Std. Error t value Pr(>|t|) (Intercept) 1.159e+01 9.841e-02 117.725 < 2e-16 ***x 1.293e-04 2.756e-05 4.691 1.26e-05 ***---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 0.7672 on 72 degrees of freedomMultiple R-squared: 0.2341, Adjusted R-squared: 0.2235 F-statistic: 22.01 on 1 and 72 DF, p-value: 1.259e-05Среднеквадратичное отклонение (Adjusted R-squared) для линейной модели составляет , качество модели неудовлетворительное.Степенная модель > summary(lm(log(y)log(x)))Call:lm(formula = log(y) log(x))Residuals:Min 1Q Median 3Q Max -1.65134 -0.29374 0.06559 0.39976 1.01151 Coefficients:Estimate Std. Error t value Pr(>|t|) (Intercept) 9.17748 0.23953 38.31 <2e-16 ***log(x) 0.43314 0.03853 11.24 <2e-16 ***---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 0.5281 on 72 degrees of freedomMultiple R-squared: 0.6371, Adjusted R-squared: 0.632 F-statistic: 126.4 on 1 and 72 DF, p-value: < 2.2e-16Среднеквадратичное отклонение (Adjusted R-squared) для линейной модели составляет , качество модели удовлетворительное, но хуже квадратичной модели.Гиперболическая модель > t=1/x> summary(lm(yt))Call:lm(formula = y t)Residuals:Min 1Q Median 3Q Max -151500 -76329 -42345 35332 454574 Coefficients:Estimate Std. Error t value Pr(>|t|) (Intercept) 205773.84 16239.52 12.671 < 2e-16 ***t -39.14 10.17 -3.848 0.000255 ***---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 124100 on 72 degrees of freedomMultiple R-squared: 0.1706, Adjusted R-squared: 0.159 F-statistic: 14.81 on 1 and 72 DF, p-value: 0.0002553Среднеквадратичное отклонение (Adjusted R-squared) для линейной модели составляет , качество модели очень плохое.1   2   3   4   5   6   7

Множественная регрессия Проведём анализ экономических результатах деятельности российских банков по следующим данным: Банк Собственный капитал, % Средства частных лиц, % Кредиты предприятиям и организациям, млн руб. Сбербанк 10 60 1073255 Внешторгбанк 16 13 189842 Газпромбанк 8 9 207118 Альфа-банк 13 15 138518 Банк Москвы 11 30 90757 Росбанк 8 19 62388 Ханты-Мансийский банк 3 5 4142 МДМ-банк 12 9 51731 ММБ 8 10 48400 Райффайзенбанк 8 22 46393 Промстройбанк 10 24 45580 Ситибанк 11 12 33339 Уралсиб 16 22 43073 Межпромбанк 36 1 60154 Промсвязьбанк 9 11 32761 Петрокоммерц 15 26 23053 Номос-банк 11 6 28511 Зенит 14 10 25412 Русский стандарт 19 7 3599 Транскредитбанк 9 8 18506 Ак Барс 23 19 23841 Глобэкс 26 16 29420 Еврофинанс-Моснарбанк 15 5 18114 Никойл 23 11 13117 Автобанк-Никойл 19 34 19135 Импэксбанк 13 37 15047 Союз 13 8 15507 БИН-банк 12 20 24980 Возрождение 9 49 20665 Гута-банк 10 13 11556 Менатеп СПб 11 16 7593 Коммерцбанк 14 0 18158 ХКФБ 11 6 28 Дойче банк 13 7 2014 АБН Амро банк 11 17 11044 ПЧРБ 15 4 5415 МБРР 12 8 14216 НРБ 30 4 10408 Россельхозбанк 21 14 13953 Сургутнефтегазбанк 9 47 3254 Кредит Свисс 16 0 8 Собинбанк 25 15 15405 Траст 25 3 2584 Запсибкомбанк 12 26 8586 Судостроительный банк 16 2 6811 Банк Санкт-Петербург 10 28 11911 ИНГ банк 16 6 11672 Балтийский банк 12 50 11422 МИнБ 11 37 11788 ВестЛБ Восток 7 0 1169 Авангард 19 12 11839 Российский кредит 30 0 1406 Кредитагропромбанк 9 14 5334 Инвестсбербанк 17 26 6249 Сосьете Женераль Восток 9 16 9128 Русь-банк 17 3 9710 Пробизнесбанк 12 9 6913 Национальный стандарт 13 0 2233 ВБРР 10 4 5881 Татфондбанк 22 20 9897 МБСП 13 13 5404 Абсолют банк 12 10 7872 Визави 39 1 7208 Центрокредит 29 5 5097 Связь-банк 18 8 3692 Россия 12 15 5893 БНП Париба 21 0 6638 МКБ 18 13 6739 Газэнергопромбанк 8 20 6295 Росевробанк 15 13 5372 Северная казна 9 46 4915 МДМ-банк СПб 9 45 1222 РБР 13 42 5031 Вэб-инвестбанк 22 0 3784 Транскапиталбанк 12 17 5660 Кредит Урал банк 20 32 4621 Российский капитал 30 21 6971 Пересвет 11 12 5950 Сибакадембанк 12 60 2878 Липецккомбанк 7 25 3263 Калион Русбанк 15 1 7142 Металлинвестбанк 22 8 6631 Стройкредит 12 14 1856 Оргрэсбанк 22 4 4608 Югбанк 9 42 6695 Славинвестбанк 19 3 3105 Промторгбанк 20 11 6954 Мастер-банк 30 16 6036 Новикомбанк 14 10 3950 УБРР 10 59 6154 КМБ-банк 11 19 2535 Центр-инвест 13 38 5679 Челиндбанк 13 45 3476 Конверсбанк 21 2 3385 Таврический 14 20 5920 Меткомбанк (Череповец) 12 3 2153 Уралвнешторгбанк 8 46 2490 Лефко-банк 33 13 2836 Газбанк 11 41 3708 Электроника 27 9 3971 Девон-кредит 20 47 4724 РосБР 78 0 3949 МИБ 34 5 5893 Экспобанк 22 34 2708 Русский международный 7 44 3910 Далькомбанк 8 55 4432 Солидарность 12 19 4442 Севергазбанк 10 45 3009 Юниаструм банк 18 38 2681 Нижегородский ПСБ 21 37 4451 Локо-банк 24 14 3181 Омский ПСБ 11 66 3104 Финпромбанк 11 4 3204 Алеф-банк 18 2 739 Москоммерцбанк 16 1 3866 Алмазэргиэнбанк 2 4 244 Нефтяной 28 10 4874 Челябинвестбанк 15 38 2822 Фондсервисбанк 14 11 4157 Академхимбанк 14 6 3133 Банк Натексис 8 0 2593 Русьуниверсалбанк 41 2 3356 Инкасбанк 19 14 3356 Инвестторгбанк 17 26 2994 Межтопэнергобанк 34 8 4662 СДМ-банк 8 24 3490 СМП 20 0 4114 АБД 23 15 2477 Кедр 11 49 2329 Евротраст 20 6 2167 СКБ-банк 19 40 2562 Интерпромбанк 15 10 3185 Юникор 14 17 2615 Солидарность (Москва) 10 12 1831 Уралтрансбанк 14 43 2863 Автовазбанк 13 63 1487 Роспромбанк 17 9 2795 Национальный космический 20 7 1762 БПФ 23 7 950 Петро-аэро-банк 11 24 2493 Акибанк 18 23 2974 Тюменьэнергобанк 12 50 2230 БВТ 21 7 2620 Тольяттихимбанк 15 18 3640 Приморье 9 23 2792 Меткомбанк 9 30 1875 Нацторгбанк 9 32 3281 Финансбанк 9 16 2411 Ухтабанк 14 50 1405 Московский капитал 16 23 2625 ВИП банк 15 4 698 Спурт 29 11 3225 Саровбизнесбанк 29 32 1414 Социнвестбанк 20 31 3308 Фиа-банк 9 42 2080 Югра 10 56 1620 Центркомбанк 23 0 3667 ФПБ 15 5 2736 Казанский 27 30 2537 Экспресс-Волга 8 60 1365 Балтинвестбанк 20 12 1611 Евразия-Центр 26 13 2561 Трансинвестбанк 28 20 672 Москомприватбанк 10 28 731 Кузбассугольбанк 16 49 702 Оптбанк 32 5 2498 Красбанк 32 9 1105 Стандарт банк 22 0 894 Новосибирский ВТБ 14 51 1128 Сибнефтебанк 9 25 698 Дальневосточный банк 11 31 1632 Ланта-банк 16 27 830 Углеметбанк 6 29 886 ДельтаКредит 27 2 316 Гаранти банк-Москва 30 9 1258 МАБ 16 1 1549 НФК Уралсиб-Никойл 23 0 2743 Капитал 21 1 388 Русский банкирский дом 20 26 2083 Уралпромстройбанк 20 41 2272 Сибирьгазбанк 9 65 794 Огни Москвы 11 17 931 Пермкредит 12 17 1842 Фора-банк 8 17 1941 Славянский банк 28 28 942 Региобанк 11 49 1663 Евразбанк 67 6 1367 НБР 22 8 1052 БКФ 14 5 476 Мак-банк 10 48 902 Драгоценности Урала 11 65 674 Русславбанк 10 17 958 Росэксимбанк 57 1 1338 МБР 32 14 1938 МИА 29 0 1924 Промэк-банк 14 48 154 Альта-банк 19 23 1381 ГКБ 19 0 788 СГБ 19 13 2324 Самарский кредит 9 16 2146 Расчетно-кредитный банк 12 10 295 Свердлсоцбанк 12 42 2065 Интрастбанк 26 14 2465 ПРБ 31 12 1464 Ист бридж банк 35 12 771 Эмпилс-банк 14 3 978 Удалим из таблицы ненужные столбцы, пронумеруем банки и сохраним пронумерованный список банков в файл Номера банков.docВведем переменные:x - Собственный капитал, %y - Средства частных лиц, %z - Кредиты предприятиям и организациям, млн руб.Данные сохраним в файл data.txtПусть y и z – факторы, а z – признак.Считываем данные из файла data.txt:data= read.table("data.txt", head=TRUE)attach(data)Определим коэффициенты парной корреляции:cor(data)z x yz 1.000 x -0.350 1.000 y -0.082 0.134 1.000Они очень малы. Линейная зависимость признака от факторов практически отсутствует.Определим частные корреляции:>library(ggm)> alpha=cor(data)> parcor(alpha)z x yz 1.000 x -0.343 1.000 y -0.037 0.113 1.000Построим модель множественной линейной регрессии признака z на факторы x и y в виде > summary(lm(zx+y))Call:lm(formula = z x + y)Residuals:Min 1Q Median 3Q Max -18.266 -5.809 -1.157 3.873 56.966 Coefficients:Estimate Std. Error t value Pr(>|t|) (Intercept) 21.05 0.9704 21.694 < 2e-16 ***x -0.1961 0.003763 -5.211 4.61e-07 ***y -4.379∙10-6 8.237∙10-6 -0.532 0.596 ---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 9.103 on 203 degrees of freedomMultiple R-squared: 0.1238, Adjusted R-squared: 0.1152 F-statistic: 14.35 on 2 and 203 DF, p-value: 1.487∙10-6 Коэффициенты a = -0.196, b =-4.379∙10-6, c = 21.05.Коэффициент b практически равен нулю. Согласно критерию Стьюдента он незначим, так как уровень значимости p-value = 0.596, что значительно превышает приемлемый уровень 0.001. Коэффициенты a и c значимы. Коэффициент множественной корреляции (Multiple R-squared) для данной модели составляет , то есть качество данной модели неудовлетворительное.Значимость среднеквадратичного отклонения, равного 14.35, подтверждает и F-критерий Фишера, согласно которому общий уровень значимости (определяемый по этой статистике): p-value: .487∙10-6, что намного меньше обычно достаточного на практике значения 0.001.Так как признак z от фактора y практически не зависит, построим модель однофакторной линейной регрессии признака z на факторы x в виде > summary(lm(zx))Call:lm(formula = z x)Residuals:Min 1Q Median 3Q Max -18.244 -5.800 -1.076 3.289 56.961 Coefficients:Estimate Std. Error t value Pr(>|t|) (Intercept) 21.03883 0.96839 21.73 < 2e-16 ***x -0.19877 0.03723 -5.34 2.47 ∙10-7 ***---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1Residual standard error: 9.087 on 204 degrees of freedomMultiple R-squared: 0.1226, Adjusted R-squared: 0.1183 F-statistic: 28.51 on 1 and 204 DF, p-value: 2.474∙10-7 Уравнение регрессии имеет вид z = -0.19877x + 21.03883. Оба коэффициенты значимы, однако среднеквадратичное отклонение (Adjusted R-squared) для данной модели составляет , то есть качество данной модели неудовлетворительное.1   2   3   4   5   6   7

Функции пользователя


Пример таких функций:



Векторы, их сложение и вычитание. Скалярное произведение




Отбор элементов вектора. Сортировка



Пример: пусть в вектор занесены возрасты сотрудников по мере их поступления на работу. Требуется сделать выборку сотрудников возраста от 30 до 35 лет:



Очевидно, что можно формировать сложные запросы с помощью логических операторов:

"Равно" ==

"Больше либо равно" >=

"Не равно" !=

"Логическое И" &

"Меньше" <

"Логическое ИЛИ" |

"Больше" >

"Логическое НЕ" !

"Меньше либо равно" <=




Сортировать элементы вектора можно следующим образом:


Матрицы



Матрицы создаются из векторов следующим образом:



Как видим, элементы вектора выписываются сверху вниз по столбцам. Чтобы элементы выписывались слева направо по строкам, следует это указать следующим образом:







Отсортированную матрицу можно сохранить на жёсткий диск:


Сложение. Умножение











Действия над строками и столбцами




Соединяем вместе строки и столбцы матриц М и В в одну матрицу:


Определитель




Обратная матрица




СЛАУ



Не знающий, что такое СЛАУ – да не читает этот пункт.






Проверим полученное решение:





Списки. Функция list()



Векторы можно объединить в так называемые списки с помощью функции list(), при этом векторы могут быть разных типов и разной длины.


Таблицы (фреймы). Функция frame()



Таблица в R аналогична таблицам программы Excel и ей подобных табличных процессоров: столбцы, то есть векторы, могут состоять из ячеек различных форматов (типов), но должны состоять из одинакового количества элементов. Таблица в R – частный случай списка.


Работа с файлами



До сих пор данные в R вводились с клавиатуры. Однако данные можно набирать сначала в текстовом редакторе Блокнот , а потом считывать данные из соответствующего файла. Эта возможность есть во всех языках программирования, но в R этот процесс реализован намного проще, красивее и изящнее - скорее всего потому, что язык R работает на текстовом коде, и нет здесь никаких fopen, fclose.

Блокнот



Допустим, наши данные располагаются в трёх столбцах x, y и z.

Заходим в рабочую папку среды R и в Блокноте набираем через пробел имена столбцов, например, январь, февраль, март. Они составляют заголовок (head).

Во второй и последующих строках набираем данные, отделяя их пробелом. Пусть получилось следующее:

январь февраль март

0.2 189 198.7

0.6 102 106.9

1.0 84 57.5

1.4 37 30.9

1.8 9 16.6

2.2 2 9.0

2.6 3 4.8

3.0 1 2.6

3.4 2 1.4

3.8 0 0.7
Сохраним данные в файле data.txt.

Запускаем среду R и в рабочем окне набираем команду

данные = read.table(“data.txt”, head = TRUE) :



Как видим, заголовок надо включать опцией head = TRUE.

Для того, чтобы со столбцами можно было обращаться как с отдельными объектами, следует их имена включить в пространство имён командой attach(данные). Тогда можно будет, например, покомпонентно сложить все три столбца:



Мы также можем просуммировать числа отдельно по столбцам, а можно и все числа в таблице:




Можно подсчитать средние значения:


Excel



Часто данные бывают сохранены в формате Excel. Например:



Следует сохранить его в формате .txt, но таких форматов Excel предлагает несколько. Следует выбрать Текст Юникод (*.txt) и сохранить, например, в файл по имени data.txt:



Открыв в Блокноте файл data.txt, видим:


В Excel употребляется десятичная ЗАПЯТАЯ, в то время как в R употребляется десятичная ТОЧКА, поэтому следует произвести соответствующую замену:





Полученный файл data.txt следует переместить в рабочую папку среды R.

Программирование

for, while, векторизация



Про циклы for, while далее не будет ни слова (справку можно легко получить в среде R), ибо без них в R можно вообще обойтись за счёт так называемой векторизации вычислений. Это означает, что можно выполнить некоторые операции сразу над всеми элементами вектора, матрицы:



Более сложный пример:



На практике этого бывает достаточно.

Вот типичный пример решения задач с применением for:
Задача.  Вычислить  
Вот решение в Паскале:
Var S, X, Pr : Real; N, I : Integer;

Begin

Write('Введите число слагаемых и x: '); ReadLn(N, X);

Pr := 1;

S := 0;

For I := 1 To N Do

Begin

Pr := Pr * Sin(X);
S := S + Pr

End;

WriteLn('Сумма равна ', S : 7 : 4)

End.

А вот решение в R: