Приклади зчитування інформації з файлів даних та запису до файлів в R, списки, таблиці даних, блоки виразів, організація умовних переходів та циклів, створення функцій
Проблеми захисту лісу в Україні та шляхи вирішення
Робота з файлами даних в R, блоки виразів, цикли, функції
1. РОБОТА З ФАЙЛАМИ ДАНИХ В
R, БЛОКИ ВИРАЗІВ, ЦИКЛИ,
ФУНКЦІЇ
Бахрушин Володимир Євгенович,
професор, д.ф.-м.н.
Vladimir.Bakhrushin@gmail.com
2. Зчитування даних
> data<-read.table("Ім'я файлу", sep=";", dec=",",
header=TRUE, …)
першим з аргументів є посилання на файл формату *.csv,
що містить дані;
аргумент sep вказує, яким знаком розділені дані у рядку;
аргумент dec вказує роздільник цілої та дробової частин
числа;
аргумент header зазначає, чи містять перші комірки
кожного стовпчика назви стовпчиків;
аргумент row.names зазначає, чи містить один із
стовпчиків назви рядків;
аргумент nrows вказує кількість рядків, які потрібно
зчитати з таблиці.
4. Запис даних до файлу
write.table(x, file = "", append = FALSE, quote = TRUE, sep = "
", na = "NA", dec = ".", row.names = TRUE, col.names = TRUE,
qmethod = c("escape", "double"), …)
x – об’єкт, який треба записати до файлу; бажано, щоб це
була матриця або таблиця даних;
file – ім'я файлу, до якого здійснюється запис, або інше
з'єднання, відчинене до запису;
append – аргумент, що вказує на необхідність додавання
даних до існуючого файлу або необхідність створення
нового файлу з тим самим ім'ям;
quote – вказує на необхідність взяти у лапки позначки
рядків та стовпчиків;
na – набір символів, що використовується для відсутніх
значень.
5. Запис даних до файлу
write.table(a2, file = "a2.csv", sep =
" ", dec = ".")
6. Списки
Для зберігання різнорідних даних в одному об’єкті можна
використовувати списки (list). Наприклад:
> x1 = c("Milk", "Yogurt", "Sour cream", "Curd")
> x2 = c(1, 1, 14, 7)
> x3 = c(TRUE, FALSE)
> l1 = list(Text = x1, Number = x2, Logic = x3)
> l1
Для звертання до елементів списку використовують
конструкції вигляду:
l1$Text[3]; l1$Text;
l1[[1]][2]; l1[[2]].
10. Коментарі, блоки виразів
Будь-який коментар починається символом #. Тест, що
розташований у рядку після цього символу, не сприймається
як частина програми, яка підлягає виконанню.
Вирази можна об’єднувати у блоки за допомогою
фігурних дужок. Результатом виконання блоку виразів є
результат останнього з них.
> {
+ x = 9;
+ y = 4;
+ x + y;
+ }
[1] 13
11. Умовні переходи
Для виконання умовних переходів можна використовувати
команди “if” – “else”:
if (<умова>)
{<вираз_1>
}else{
<вираз_2>}
12. Цикли
Цикли із заздалегідь заданою кількістю ітерацій можна
організувати за допомогою функції for:
for (<змінна> in <вираз_1>)
<вираз_2>
Якщо потрібно здійснювати ітерації, доки не буде виконана
певна умова, використовують цикл:
while (<умова>) {
<вираз>
}
14. Цикли
Нескінченні цикли
«Repeat» використовують,
коли певну процедуру треба
виконувати, якщо не
виконується умова
переривання. Для
переривання циклу
використовують команду
«break», а для переривання
поточної ітерації й переходу
до наступної – команду
«next»
15. Функції
Функція в R є об’єктом, що за заданим набором аргументів
повертає певне значення. Зазвичай при об'явленні функції її
значення присвоюють деякій змінній.
<змінна> = function(<аргументи>)
{
<вираз>
}.
У подальшому можна викликати функцію за допомогою
конструкції:
<результат> = <змінна>(<аргументи>).
18. Література
1. The R Project for Statistical Computing.
2. Зарядов И.С. Введение в статистический пакет R / И.С.
Зарядов. – М.: Изд. РУДН, 2010 – 207 с.
3. Язык программирования R: Викиучебник.
4. R Tutorial: An R introduction to statistics.