R言語プログラミング: 基本演算子・初等関数
をソースコードを用い紹介する。記載しているソースは、R Console上や EclipseでR-Scriptとして、そのまま実行可能である。
R Consoleでの実行例 (Rのインストール・環境設定はこちら)
EclipseでのR-Scriptとしての実行例 (RをEclipseで実行するための方法はこちら)
算術演算子
算術演算は、integer(整数), numerical(実数), complex(複素数)のScalar、および、Vector(ベクトル), matrix(マトリクス), data.frame(データフレーム), array(配列), list(リスト)に対し、適用可能である。
(※Rのデータ型については次を参照: R言語プログラミング: データ型・操作 )
演算 | 演算子 | 例 |
---|---|---|
加算 | + | a+b |
減算 | - | a-b |
乗算 | * | a*b |
除算 | / | a/b |
べき算 | ^ | a^b |
整数除算 | %/% | a%/%b |
剰余 | %% | a%%b |
Vector(ベクトル)の場合の例を以下に示す。
a<-c(5,6,7,8) # vector a b<-c(1,2,3,4) # vector b a+b #加算 a-b #減算 a*b #乗算 a/b #除算 a^b #べき算 a%/%b #整数除算(商)
実行結果
> a<-c(5,6,7,8) # vector a > b<-c(1,2,3,4) # vector b > > a+b #加算 [1] 6 8 10 12 > a-b #減算 [1] 4 4 4 4 > a*b #乗算 [1] 5 12 21 32 > a/b #除算 [1] 5.000000 3.000000 2.333333 2.000000 > a^b #べき算 [1] 5 36 343 4096 > a%/%b #整数除算(商) [1] 5 3 2 2 > a%%b #剰余 [1] 0 0 1 0
算術演算に関する優先順位規則は以下。
- 括弧
- べき算
- 整数除算と剰余
- 乗算と除算
- 加算と減算
比較演算子
演算 | 演算子 | 例 | 第1引数 | 第2引数 | 返り値 |
---|---|---|---|---|---|
より大きい | > | a>b | 比較可能ベクトル | 比較可能ベクトル | 比較可能ベクトル |
より小さい | a<b | 比較可能ベクトル | 比較可能ベクトル | 比較可能ベクトル | |
以上 | >= | a>=b | 比較可能ベクトル | 比較可能ベクトル | 比較可能ベクトル |
以下 | <= | a<=b | 比較可能ベクトル | 比較可能ベクトル | 比較可能ベクトル |
等しい | == | a==b | 比較可能ベクトル | 比較可能ベクトル | 比較可能ベクトル |
等しくない | != | a!=b | 比較可能ベクトル | 比較可能ベクトル | 比較可能ベクトル |
a<-c(1,3,4,7) # vector a b<-c(2,3,5,6) # vector b a>b #より大きい a<b #より小さい a>=b #以上 a<=b #以下 a==b #等しい a!=b #等しくない
実行結果
> a<-c(1,3,4,7) # vector a > b<-c(2,3,5,6) # vector b > > a>b #より大きい [1] FALSE FALSE FALSE TRUE > a<b #より小さい [1] TRUE FALSE TRUE FALSE > a>=b #以上 [1] FALSE TRUE FALSE TRUE > a<=b #以下 [1] TRUE TRUE TRUE FALSE > a==b #等しい [1] FALSE TRUE FALSE FALSE > a!=b #等しくない [1] TRUE FALSE TRUE TRUE
論理演算子
演算 | 演算子 | 例 | 第1引数 | 第2引数 | 返り値 | |
---|---|---|---|---|---|---|
否定 | ! | !(x) | 論理値ベクトル | 論理値ベクトル | 論理値ベクトル | |
論理積 | && | x && y | 論理値ベクトル | 論理値ベクトル | 論理値 | |
論理和 | | | x || y | 論理値ベクトル | 論理値ベクトル | 論理値 | |
ベクトル化論理積 | & | x & y | 論理値ベクトル | 論理値ベクトル | 論理値ベクトル | |
ベクトル化論理和 | | | x | y | 論理値ベクトル | 論理値ベクトル | 論理値ベクトル | |
排他的論理和 | xor | xor(x,y) | 論理値ベクトル | 論理値ベクトル | 論理値ベクトル |
x<-c(TRUE,TRUE,FALSE,FALSE) # 論理値 vector x y<-c(FALSE,TRUE,TRUE,TRUE) # 論理値 vector y x # xを表示 y # yを表示 !x #否定 x && y #論理積 x || y #論理和 x & y #ベクトル化論理積 x | y #ベクトル化論理和 xor(x, y) #排他的論理和
実行結果
> x<-c(TRUE,TRUE,FALSE,FALSE) # 論理値 vector x > y<-c(FALSE,TRUE,TRUE,TRUE) # 論理値 vector y > > x # xを表示 [1] TRUE TRUE FALSE FALSE > y # yを表示 [1] FALSE TRUE TRUE TRUE > > !x #否定 [1] FALSE FALSE TRUE TRUE > x && y #論理積 [1] FALSE > x || y #論理和 [1] TRUE > x & y #ベクトル化論理積 [1] FALSE TRUE FALSE FALSE > x | y #ベクトル化論理和 [1] TRUE TRUE TRUE TRUE > xor(x, y) #排他的論理和 [1] TRUE FALSE TRUE TRUE
※if文の引数がベクトルのときは、第一成分目のみが判定に用いられる。
初等関数
またRには次の初等関数も用意されている。
Vectorの場合の実行例もともに示す。
演算 | 演算子 | 例 |
---|---|---|
絶対値 | abs | abs(a) |
自然指数 | exp | exp(a) |
平方根 | sqrt | sqrt(a) |
自然対数 | log | log(a) |
常用対数 | log10 | log10(a) |
四捨五入 | round | round(a,3) |
三角関数 | cos,sin,tan | cos(a),cos(a),tan(a) |
逆三角関数 | acos,asin,atan | acos(a),asin(a),atan(a) |
a<-c(-2,-1,1,2) abs(a) #絶対値 exp(a) #自然指数 b<-c(1,2,3,4) sqrt(b) #平方根 log(b) #自然対数 log10(b) #常用対数 c<-c(0.1,0.12,0.123,0.1234) round(c,2) #四捨五入 d<-c(0,pi/2,pi) sin(d)#正弦関数 cos(d)#余弦関数 tan(d)#正接関数 e<-c(0,0.5,1) asin(e)#逆正弦関数 acos(e)#逆余弦関数 atan(e)#逆正接関数
実行結果
> a<-c(-2,-1,1,2) > abs(a) #絶対値 [1] 2 1 1 2 > exp(a) #自然指数 [1] 0.1353353 0.3678794 2.7182818 7.3890561 > > b<-c(1,2,3,4) > sqrt(b) #平方根 [1] 1.000000 1.414214 1.732051 2.000000 > log(b) #自然対数 [1] 0.0000000 0.6931472 1.0986123 1.3862944 > log10(b) #常用対数 [1] 0.0000000 0.3010300 0.4771213 0.6020600 > > c<-c(0.1,0.12,0.123,0.1234) > round(c,2) #四捨五入 [1] 0.10 0.12 0.12 0.12 > > d<-c(0,pi/2,pi) > sin(d)#正弦関数 [1] 0.000000e+00 1.000000e+00 1.224606e-16 > cos(d)#余弦関数 [1] 1.000000e+00 6.123032e-17 -1.000000e+00 > tan(d)#正接関数 [1] 0.000000e+00 1.633178e+16 -1.224606e-16 > > e<-c(0,0.5,1) > asin(e)#逆正弦関数 [1] 0.0000000 0.5235988 1.5707963 > acos(e)#逆余弦関数 [1] 1.570796 1.047198 0.000000 > atan(e)#逆正接関数 [1] 0.0000000 0.4636476 0.7853982
関連文献:

- 作者: 金明哲
- 出版社/メーカー: 森北出版
- 発売日: 2007/10/01
- メディア: 単行本(ソフトカバー)
- 購入: 36人 クリック: 694回
- この商品を含むブログ (64件) を見る

- 作者: 青木繁伸
- 出版社/メーカー: オーム社
- 発売日: 2009/04/01
- メディア: 単行本
- 購入: 10人 クリック: 123回
- この商品を含むブログ (34件) を見る

- 作者: 山田剛史,杉澤武俊,村井潤一郎
- 出版社/メーカー: オーム社
- 発売日: 2008/01/25
- メディア: 単行本
- 購入: 64人 クリック: 782回
- この商品を含むブログ (68件) を見る
R: The R Project for Statistical Computing