Методическое пособие язык программирования к ф. м н., доцент Мусин Наиль Минбариевич Новомосковск 2015 содержание mind Map 3 Начало работы 5
Скачать 2.89 Mb.
|
Списки. Функция 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: |