mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21 6 160 110 3.9 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21 6 160 110 3.9 2.875 17.02 0 1 4 4
и его применение в биоинформатике
Лекция 2
Анастасия Жарикова
8 сентября 2023
Циклы в R медленные!
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21 6 160 110 3.9 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21 6 160 110 3.9 2.875 17.02 0 1 4 4
mpg cyl disp hp drat wt qsec vs am gear carb new
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4 1
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1 9
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1 16
Fertility Agriculture Examination Education Catholic
Courtelary 80.2 17.0 15 12 9.96
Delemont 83.1 45.1 6 9 84.84
Franches-Mnt 92.5 39.7 5 5 93.40
Moutier 85.8 36.5 12 7 33.77
Neuveville 76.9 43.5 17 15 5.16
Porrentruy 76.1 35.3 9 7 90.57
Infant.Mortality
Courtelary 22.2
Delemont 22.2
Franches-Mnt 20.2
Moutier 20.3
Neuveville 20.6
Porrentruy 26.6
Delemont X83.1 X45.1 X6 X9 X84.84 X22.2
1 Franches-Mnt 92.5 39.7 5 5 93.40 20.2
2 Moutier 85.8 36.5 12 7 33.77 20.3
3 Neuveville 76.9 43.5 17 15 5.16 20.6
4 Porrentruy 76.1 35.3 9 7 90.57 26.6
5 Broye 83.8 70.2 16 7 92.85 23.6
6 Glane 92.4 67.8 14 8 97.16 24.9
Забудьте все, чему вас учили…
CRAN
- https://cran.r-project.org/ - install.packages()
Bioconductor
- https://www.bioconductor.org/
Github
- https://github.com/
…
remove.packages("packagename")
- удалить пакет
update.packages()
- обновить все пакеты
library()
- список доступных пакетов
library("packagename")
- загрузить установленный пакет в текущую R сессию
vignette("packagename")
- посмотреть “красивый” мануал по пакету, есть не для всех пакетов
Установить пакет нужно один раз, но подгружать при каждом запуске рабочего сеанса
После утановки нужно только подгрузить пакет с помощью library("packagename")
install.packages("tidyverse")
library(tidyverse)
[1] "broom" "conflicted" "cli" "dbplyr"
[5] "dplyr" "dtplyr" "forcats" "ggplot2"
[9] "googledrive" "googlesheets4" "haven" "hms"
[13] "httr" "jsonlite" "lubridate" "magrittr"
[17] "modelr" "pillar" "purrr" "ragg"
[21] "readr" "readxl" "reprex" "rlang"
[25] "rstudioapi" "rvest" "stringr" "tibble"
[29] "tidyr" "xml2" "tidyverse"
Похоже на data.frame
Ведут себя более предсказуемо и удобно
При работе с данными с помощью коллекции пакетов tidyverse в большинстве случаев на выходе получается tibble
Не преобразует строки в факторы
Не изменяет имена переменных
Можно (но нужно ли?) использовать “недопустимые” имена столбцов
Выводит информацию о размере выводимого фрейма и типе данных в столбцах
Позволяет ссылаться на только что созданные переменные
Базовая таблица (data.frame)
# A tibble: 150 × 5
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
<dbl> <dbl> <dbl> <dbl> <fct>
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 5 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa
7 4.6 3.4 1.4 0.3 setosa
8 5 3.4 1.5 0.2 setosa
9 4.4 2.9 1.4 0.2 setosa
10 4.9 3.1 1.5 0.1 setosa
# ℹ 140 more rows
Выведет только 10 первых строк и помещающиеся столбцы, а не “простыню”
https://dplyr.tidyverse.org/reference/index.html
Очень много разных функций
У каждой функции очень много разных опций
Разберем только некоторые наиболее употребимые
Фильтрация строк по условию
# A tibble: 3 × 14
name height mass hair_color skin_color eye_color birth_year sex gender
<chr> <int> <dbl> <chr> <chr> <chr> <dbl> <chr> <chr>
1 Luke Sky… 172 77 blond fair blue 19 male mascu…
2 C-3PO 167 75 <NA> gold yellow 112 none mascu…
3 Darth Va… 202 136 none white yellow 41.9 male mascu…
# ℹ 5 more variables: homeworld <chr>, species <chr>, films <list>,
# vehicles <list>, starships <list>
Выбор столбцов по индексам
[1] "name" "height" "mass" "hair_color" "skin_color"
[6] "eye_color" "birth_year" "sex" "gender" "homeworld"
[11] "species" "films" "vehicles" "starships"
# A tibble: 87 × 3
name height mass
<chr> <int> <dbl>
1 Luke Skywalker 172 77
2 C-3PO 167 75
3 R2-D2 96 32
4 Darth Vader 202 136
5 Leia Organa 150 49
6 Owen Lars 178 120
7 Beru Whitesun lars 165 75
8 R5-D4 97 32
9 Biggs Darklighter 183 84
10 Obi-Wan Kenobi 182 77
# ℹ 77 more rows
Выбор столбцов по имени
# A tibble: 87 × 3
name hair_color eye_color
<chr> <chr> <chr>
1 Luke Skywalker blond blue
2 C-3PO <NA> yellow
3 R2-D2 <NA> red
4 Darth Vader none yellow
5 Leia Organa brown brown
6 Owen Lars brown, grey blue
7 Beru Whitesun lars brown blue
8 R5-D4 <NA> red
9 Biggs Darklighter black brown
10 Obi-Wan Kenobi auburn, white blue-gray
# ℹ 77 more rows