R矢量减法

时间:2015-11-25 01:15:24

标签: r

我在R中,想要按术语减去两个向量。

这是我的代码

y <- faithful
u_old1 <- c(3.5,80)

#  eruptions waiting
#1     3.600      79
#2     1.800      54
#3     3.333      74
# ...

y - u_old1

#    eruptions waiting
#1       0.100    75.5
#2     -78.200   -26.0
#3      -0.167    70.5
# ...

我认为R中的回收确实如此。我想要y减去u_old1的每一行。所以我应该把第一行作为:

#    eruptions waiting
#1       0.100      -1

2 个答案:

答案 0 :(得分:2)

这是sweep的用途:

sweep(y, 2, u_old1)

#    eruptions waiting
#1       0.100      -1
#2      -1.700     -26
#3      -0.167      -6
# ...

答案 1 :(得分:1)

如果我正确理解您的问题,您应该使用as.list(u_old1)代替:

示例:

head(y) - as.list(u_old1)
#   eruptions waiting
# 1     0.100      -1
# 2    -1.700     -26
# 3    -0.167      -6
# 4    -1.217     -18
# 5     1.033       5
# 6    -0.617     -25