我已经使用R大约一个月了,我需要帮助来控制mapply的输出。我在这里提供了可重现代码的测试用例。我希望输出给出一个带有整数值的向量列表,但我得到一个将x1的值与数字列表结合起来的列表。
那么我如何获得不具有x1,“ =”但对于每个输入值都有一个单独的整数向量的输出?更一般而言,如何控制mapply的输出?
(关于改善我的mapply功能的任何建议也将不胜感激,因为问题可能出在这里)
x1 <- c(".", ".|.", ".", ".|.", ".")
x2 <- c(135L, 9L, 21L, 35L, 47L)
# mapply in x, replace “.” with index number of string, and add to y-1 to make a vector of integers for each line)
x3 <- mapply(function(x,y){(y-1)+unlist(gregexpr("[.]", x))},x=x1,y=x2)
dput(x3)
list(. = 135, `.|.` = c(9, 11), . = 21, `.|.` = c(35, 37), . = 47)