5 + 7
## [1] 12
x <- 5 + 7
x
## [1] 12
y <- x - 3
y
## [1] 9
z <- c(1.1, 9, 3.14)
z
## [1] 1.10 9.00 3.14
c(z, 555, z)
## [1] 1.10 9.00 3.14 555.00 1.10 9.00 3.14
z * 2 + 100
## [1] 102.20 118.00 106.28
# + - * / ^ sqrt() abs()
my_sqrt <- sqrt(z - 1)
# この答えは次の1. 2. 3. のどれになりますか。
# 1: a vector of length 0 (つまり 空の vector)
# 2: a vector of length 3
# 3: a single number (つまり 長さ1の vector)
# my_sqrt を実行して、答えを確認してください。
my_sqrt
## [1] 0.3162278 2.8284271 1.4628739
my_div <- z / my_sqrt
# この答えについて、正しい説明はどれだと思いますか。
# 1: my_div is undefined
# 2: my_div is a single number (i.e a vector of length 1)
# 3: The first element of my_div is equal to the first element of z divided by the first element of my_sqrt, and so on...
# my_div を実行して、答えを確認してください。
my_div
## [1] 3.478505 3.181981 2.146460
# 2つのベクトルの長さが同じ長さであれば、各々の要素毎に演算を実行します。
# もし、長さが異なる場合は、短い方のベクトルの要素を再利用して、長い方のベクトルに合わせます。
z * 2 + 100
## [1] 102.20 118.00 106.28
# つまり上の演算は次の演算を行っていることになります。
z * c(2, 2, 2) + c(100, 100, 100)
## [1] 102.20 118.00 106.28
# c(1, 2, 3, 4) と c(0, 10) を足してみましょう。
c(1, 2, 3, 4) + c(0, 10)
## [1] 1 12 3 14
c(1, 2, 3, 4) + c(0, 10, 100)
## Warning in c(1, 2, 3, 4) + c(0, 10, 100): 長いオブジェクトの長さが短いオブジェクトの長さの倍数になっていませ
## ん
## [1] 1 12 103 4
# 長いオブジェクトの長さが短いオブジェクトの長さの整数倍になっていなくても大丈夫