【R】tidytable
2021年5月25日
1. はじめに
tidytableは、tidyverseのような文法で、data.tableなみの速度で動かせるtableを扱えるパッケージです。
2. インストール
CRANからインストールできます。
install.packages("tidytable")
3. つかってみる
例にあるものを、そのまま実行してみます。
library(tidytable)
test_df <- data.table(x = 1:3, y = 4:6, z = c("a","a","b"))
test_df %>%
select.(x, y, z) %>%
filter.(x < 4, y > 1) %>%
arrange.(x, y) %>%
mutate.(double_x = x * 2,
x_plus_y = x + y)
# A tidytable: 3 x 5
x y z double_x x_plus_y
<int> <int> <chr> <dbl> <int>
1 1 4 a 2 5
2 2 5 a 4 7
3 3 6 b 6 9
group_by()やseelct()も使えます。
test_df <- data.table(
a = 1:10,
c = c(rep("a",5), rep("b", 5))
)
test_df %>%
mutate.(b_2a = a * 2, b_3a = a * 3) %>%
group_by(c) %>%
slice(2:7) %>%
select.(a, starts_with("b"))%>%
mutate(group_row_num = row_number()) %>%
ungroup()
# A tidytable: 8 x 4
a b_2a b_3a group_row_num
<int> <dbl> <dbl> <int>
1 2 4 6 1
2 3 6 9 2
3 4 8 12 3
4 5 10 15 4
5 7 14 21 5
6 8 16 24 6
7 9 18 27 7
8 10 20 30 8
4. さいごに
プログラミングでtidyな表を扱えていいですね。