我有一个向量c <- c(1,2,3)
和另一个向量d <- c(4,5,6,7)
。我想从c
的每个元素中减去d
的每个元素,以获得R中的list
个列表。我该怎么办?谢谢。
答案 0 :(得分:7)
x <- 1:3
y <- 4:7
lapply(x, `-`, y)
[[1]]
[1] -3 -4 -5 -6
[[2]]
[1] -2 -3 -4 -5
[[3]]
[1] -1 -2 -3 -4
答案 1 :(得分:4)
a <- 1:3
b <- 4:6
a - b
# [1] -3 -3 -3
这是一个基本问题,请考虑阅读An Introduction to R。
编辑:
a <- 1:3
b <- 4:7
lapply(a, function(x)x-b)
# [[1]]
# [1] -3 -4 -5 -6
# [[2]]
# [1] -2 -3 -4 -5
# [[3]]
# [1] -1 -2 -3 -4
答案 2 :(得分:3)
outer
而不是matrix
感到满意,则 list
会这样做:
a <- 1:3
b <- 4:7
outer(a, b, "-")
# [,1] [,2] [,3] [,4]
# [1,] -3 -4 -5 -6
# [2,] -2 -3 -4 -5
# [3,] -1 -2 -3 -4