簡體   English   中英

mapply 函數沒有按預期工作

[英]mapply function does not work as expected

我正在編寫一個大函數。 我想使用mapply函數在列表上運行函數。

我有這個:

 x <- list(1,3, 4, 5)
 y <- list(5,6,7,3)
 res <- mapply(x  , y , FUN = function(x, y) double(x + y)) 
[[1]]
[1] 0 0 0 0 0 0

[[2]]
[1] 0 0 0 0 0 0 0 0 0

[[3]]
 [1] 0 0 0 0 0 0 0 0 0 0 0

[[4]]
[1] 0 0 0 0 0 0 0 0

我希望結果僅作為兩個列表。 像這樣:

 [[1]]
0 0 0 0 0 

[[2]]
0 0 0 0 0 

所以我希望答案只針對兩個列表,而不是針對列表中的每個元素。

我怎樣才能做到這一點?

嘗試lapply功能。

my_list(x,y)
m <- length(my_list)
lapply(1:m, function(i) double(x[[i]]+y[[i]]))

您的列表長度為 4,因此您只能將其設為 2 作為輸出!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM