【发布时间】:2018-08-31 21:06:43
【问题描述】:
我有一个嵌套的数据框tb,看起来像这样:
>tb
# A tibble: 26 x 3
league fdj_data five38_data
<chr> <list> <list>
1 Ch.D1 Danemark <tibble [14 x 1]> <tibble [14 x 1]>
2 Ch.D1 Ecosse <tibble [10 x 1]> <tibble [14 x 1]>
3 Ligue 2 <tibble [20 x 1]> <tibble [19 x 1]>
4 Serie B <tibble [18 x 1]> <tibble [21 x 1]>
5 Liga Segunda <tibble [20 x 1]> <tibble [20 x 1]>
6 Ch.D1 Pays-Bas <tibble [18 x 1]> <tibble [21 x 1]>
7 Ch.D1 Grèce <tibble [12 x 1]> <tibble [16 x 1]>
8 Ch.D1 Suède <tibble [16 x 1]> <tibble [19 x 1]>
9 Ch.D1 Turquie <tibble [18 x 1]> <tibble [21 x 1]>
10 Ch.D1 Russie <tibble [14 x 1]> <tibble [19 x 1]>
# ... with 16 more rows
我还有一个函数(我们称之为func),它接受 2 个字符向量(可能具有不同的长度)并输出另一个字符向量(与第一个 arg 的长度长度相同)
我想添加另一列,每行包含func(fdj_data, five38_data)
我试过了
tb %>%
mutate(new_var = func(fdj_data, five38_data))
和
tb %>%
mutate(fdj_data = as.character(fdj_data),
five38_data = as.character(five38_data)) %>%
mutate(new_var = func(fdj_data, five38_data))
但两者都不起作用。
我也尝试过purrr::map(),但并没有更成功
你有什么想法吗?
【问题讨论】:
-
可能是
mutate(newvar = purrr::map2(fdj_data, five38_data, func))的候选人 -
您能否使用
dput()并分享您的数据样本