Select 使用列名向量列表的列表中数据框的列
Select columns from data frames in a list using a column names vectors list
我有一个数据框列表:
all_trials <- list(data1 = data.frame(trial1 = 1:5,
trial2 = 6:10,
trial3 = 11:15,
trial4 = 16:20),
data2 = data.frame(trial2 = 1:4,
trial3 = 5:8,
trial5 = 9:12))
以及我想从每个数据框中 select 的变量列表,最好是 purrr
。
trials_to_select <- list(data1 = c("trial1", "trial3", "trial4"),
data2 = c("trial2", "trial5"))
期望的输出:
selected_trials <- list(data1 = data.frame(trial1 = 1:5,
trial3 = 11:15,
trial4 = 16:20),
data2 = data.frame(trial2 = 1:4,
trial5 = 9:12))
$data1
trial1 trial3 trial4
1 1 11 16
2 2 12 17
3 3 13 18
4 4 14 19
5 5 15 20
$data2
trial2 trial5
1 1 9
2 2 10
3 3 11
4 4 12
我找到了如何 ,但我需要 select 每个数据框中的不同列。
Map(`[`, all_trials, trials_to_select)
$data1
trial1 trial3 trial4
1 1 11 16
2 2 12 17
3 3 13 18
4 4 14 19
5 5 15 20
$data2
trial2 trial5
1 1 9
2 2 10
3 3 11
4 4 12
发出呼噜声:
purrr::map2(all_trials, trials_to_select, dplyr::select)
$data1
trial1 trial3 trial4
1 1 11 16
2 2 12 17
3 3 13 18
4 4 14 19
5 5 15 20
$data2
trial2 trial5
1 1 9
2 2 10
3 3 11
4 4 12
我有一个数据框列表:
all_trials <- list(data1 = data.frame(trial1 = 1:5,
trial2 = 6:10,
trial3 = 11:15,
trial4 = 16:20),
data2 = data.frame(trial2 = 1:4,
trial3 = 5:8,
trial5 = 9:12))
以及我想从每个数据框中 select 的变量列表,最好是 purrr
。
trials_to_select <- list(data1 = c("trial1", "trial3", "trial4"),
data2 = c("trial2", "trial5"))
期望的输出:
selected_trials <- list(data1 = data.frame(trial1 = 1:5,
trial3 = 11:15,
trial4 = 16:20),
data2 = data.frame(trial2 = 1:4,
trial5 = 9:12))
$data1
trial1 trial3 trial4
1 1 11 16
2 2 12 17
3 3 13 18
4 4 14 19
5 5 15 20
$data2
trial2 trial5
1 1 9
2 2 10
3 3 11
4 4 12
我找到了如何
Map(`[`, all_trials, trials_to_select)
$data1
trial1 trial3 trial4
1 1 11 16
2 2 12 17
3 3 13 18
4 4 14 19
5 5 15 20
$data2
trial2 trial5
1 1 9
2 2 10
3 3 11
4 4 12
发出呼噜声:
purrr::map2(all_trials, trials_to_select, dplyr::select)
$data1
trial1 trial3 trial4
1 1 11 16
2 2 12 17
3 3 13 18
4 4 14 19
5 5 15 20
$data2
trial2 trial5
1 1 9
2 2 10
3 3 11
4 4 12