-
Notifications
You must be signed in to change notification settings - Fork 1
/
99-Supplements.Rmd
175 lines (114 loc) · 10.9 KB
/
99-Supplements.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
```{r, include = FALSE}
knitr::opts_chunk$set(echo = FALSE, message=FALSE, warning = FALSE, fig.align = 'center', out.width='80%',results="asis")
require(ggplot2); require(ggplotify); require(cowplot);require(magick)
source( "suppl/suppl.R" )
```
# 付録 {-#ch:appendix}
## Functions(関数一覧){-#sec:functions}
計算変数の作成やフィルタの設定に使用可能な関数の一覧です。
### Math:数学関数{-#app:math}
ABS(`値`)
: `値`の絶対値を返します(\(\mathsf{|x|}\))
EXP(`値`)
: ネイピア数eの`値`乗の値(eのべき乗)を返します(\(\mathsf{e^{x}}\))
LN(`値`)
: `値`の自然対数を返します(\(\mathsf{\log_{e}{x}}\))
LOG10(`値`)
: `値`の常用対数を返します(\(\mathsf{\log_{10}{x}}\))
SQRT(`値`)
: `値`の正の平方根を返します(\(\mathsf{\sqrt{x}}\))
### Statistical:統計関数{-#app:statistical}
ABSIQR(`変数`)
: `IQR()`関数の結果を絶対値で返します。
ABSZ(`変数`)
: `Z()`関数の結果を絶対値で返します。
BOXCOX(`変数`)
: `変数`に対して*ボックス=コックス変換*を行った値を返します。ボックス=コックス変換は,歪んだ分布を持つ変数を正規分布に近づける際に使用される変換です。
IQR(`変数`)
: `変数`の各値が四分位範囲内にある場合は0,そうでない場合は四分位範囲の何倍離れた位置にあるかを返します。通常,この値の絶対値が1.5を超える場合に外れ値とみなされます。
MAX(`値1`,`値2`, …)
: 指定した`値`の中で最大の値を返します。
MAXABSIQR(`変数1`,`変数2`, …)
: 指定した`変数`の`ABSIQR()`の値のうち,最大の値を返します。
MAZABSZ(`変数1`,`変数2`, … [, group_by = `グループ変数`])
: 指定した`変数`の`Z()`関数の結果のうち,最大の値を返します。
MEAN(`値1`,`値2`, … [, ignore_missing=0, min_valid=0])
: 指定した値の平均値を返します。「ignore_missing=1」と指定した場合,欠損値が含まれる変数を除外して平均値を算出します。また,「min_valid」オプションでは平均値の算出に必要な値の個数を指定できます。「min_valid=3」と指定すると,3個以上の値が指定されていない場合には平均値は算出されません。
MIN(`値1`,`値2`, …)
: 指定した`値`の中で最小の値を返します。
RANK(`変数`)
: 指定した`変数`に含まれる各値の順位(昇順)を返します。
ROUND(`値` [, `桁数`])
: 指定した`値`の各値を指定桁数で四捨五入した値を返します。値のみを指定した場合(`ROUND(A)`)には整数値が,値の後ろに`2`を指定した場合(`ROUND(A,2)`)は,小数第2位までで四捨五入した値が返されます。
SCALE(`変数` [, group_by=`グループ変数`])
: 指定した`変数`の各値を標準化した値を返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループごとに値が標準化されます。この関数は`Z()`と同一です。
STDEV(`値1`,`値2`, … [, ignore_missing=0])
: 指定した値の標準偏差を返します。欠損値が含まれる変数値を用いて標準偏差を算出する場合は「ignore_missing=1」と指定することで欠損値を含む変数値以外の平均値を算出できます。「ignore_missing=1」と指定した場合,欠損値が含まれる変数を除外して標準偏差を算出します。
SUM(`値1`,`値2`, … [, ignore_missing=0, min_valid=0])
: 指定した値の合計値を返します。「ignore_missing=1」と指定した場合,欠損値が含まれる変数を除外して合計値を算出します。また,「min_valid」オプションでは合計値の算出に必要な値の個数を指定できます。「min_valid=3」と指定すると,3個以上の値が指定されていない場合には合計値は算出されません。
VAR(`値1`,`値2`, … [, ignore_missing=0])
: 指定した値の分散を返します。「ignore_missing=1」と指定した場合,欠損値が含まれる変数を除外して分散を算出します。
Z(`変数` [, group_by=`グループ変数`])
: 指定した`変数`の値を標準化して返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループに標準化が行われます。この関数は`SCALE()`と同一です。
#### V関数 {-}
以下は,「V関数」と呼ばれる統計関数の一覧です。V関数は,その変数全体についての値を返す関数です。V関数でない関数,たとえば`MAX()`で`MAX(A,B)`とした場合,この関数では1行ごとに変数AおよびBの値の最大値を計算して返します。これに対し,`VMAX(A)`は,変数Aに含まれる値すべてにおける最大値を返します。
VMAX(`変数` [, group_by=`グループ変数`])
: 指定した`変数`の最大値を返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループごとの最大値が返されます。
VMEAN(`変数` [, group_by=`グループ変数`])
: 指定した`変数`の平均値を返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループごとの平均値が返されます。
VMED(`変数` [, group_by=`グループ変数`])
: 指定した`変数`の中央値を返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループごとの中央値が返されます。
VMIN(`変数` [, group_by=`グループ変数`])
: 指定した`変数`の最小値を返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループごとの最小値が返されます。
VMODE(`変数` [, group_by=`グループ変数`])
: 指定した`変数`の最頻値を返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループごとの最頻値が返されます。
VN(`変数` [, group_by=`グループ変数`])
: 指定した`変数`に含まれる値の個数(度数)を返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループごとの度数が返されます。
VSE(`変数` [, group_by=`グループ変数`])
: 指定した`変数`の平均値の標準誤差を返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループごとの標準誤差が返されます。
VSTDEV(`変数` [, group_by=`グループ変数`])
: 指定した`変数`の標準偏差を返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループごとの標準偏差が返されます。
VSUM(`変数` [, group_by=`グループ変数`])
: 指定した`変数`の合計値を返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループごとの合計値が返されます。
VVAR(`変数` [, group_by=`グループ変数`])
: 指定した`変数`の分散を返します。「`group_by`」でグループ変数を指定した場合は,それぞれのグループごとの分散が返されます。
### Logical:論理関数{-#app:logical}
IF(`条件式`, `真の場合の値・処理`, `偽の場合の値・処理`)
: `条件式`が`真`である場合と`偽`の場合で異なる値(または処理)を使用します。
: 例)`IF(A==1,'Y','N')`では,変数Aの値が`1`の場合に`Y`が,そうでない場合に`N`が返されます。
IFMISS(`変数`, `真の場合の値`, `偽の場合の値`)
: `変数`の値が欠損値である場合(`真`)とそうでない場合(`偽`)で異なる値を使用します。
: 例)`IF(A,9,A)`では,変数Aの値が欠損値の場合には`9`を代入し,そうでない場合には変数Aの値をそのまま使用します。
NOT(`条件式`)
: `条件式`の結果が`真`ならば`偽`(0)を,`偽`ならば`真`(1)を返します。
: 例)`NOT(A=='Y')`は,変数Aの値が`Y`でないならば`1`(真),`Y`ならば`0`(偽)を返します。
### Text:文字列関数{-#app:text}
CONTAINS(`項目1`,`項目2`, … ,`検索対象1`,`検索対象2`)
: `検索対象`の中に`項目`が含まれているかどうかを判定します。含まれていれば`1`(真),含まれていなければ`0`(偽)を返します。
: 例)`CONTAINS('YES',A)`の結果は,変数Aの値に`YES`という文字列が含まれていれば`1`(真),含まれていなければ`0`(偽)になります。
SPLIT(`文字列` [, `区切り文字`, `抽出要素`])
: 指定した文字列を`区切り文字`(初期値は`,`(コンマ))で区切った結果を返します。`抽出要素`を指定すると,その部分だけを抜き出した結果が返されます。
: 例)`SPLIT('a,b,c,d')`は`a b c d`という結果を返します。`SPLIT('a,b,c,d',',',2)`は,文字列をコンマで区切った場合の2つ目の要素(`b`)が結果として返されます。
TEXT(`数値`)
: 指定された`数値`を文字列に変換します。
VALUE(`文字列`)
: 数字で構成された`文字列`を数値に変換します。
### Reference:参照関数{-#app:reference}
HLOOKUP(`位置`,`値1`,`値2`, …)
: `値1`,`値2`, … のうち,`位置`で示された位置にある`値`を返します。
: 例)`HLOOKUP(X,'S','A','B','C','D')`は,変数`X`の値が`1`の場合には`S`(1番目の値),`3`の場合には`B`(3番目の値)を返します。
MATCH(`検索値`,`値1`,`値2`, …)
: `検索値`が`値1`,`値2`, … の何番目の位置にあるかを返します。
: 例)`MATCH(X,'S','A','B','C','D')`は,変数`X`の値が`A`の場合には`2`,`C`の場合には`4`を返します。
### Misc:各種関数{-#app:misc}
FILTER(`変数`,`フィルタ条件式`)
: `フィルタ条件式`を使用して`変数`をフィルタリングします。
INT(`値`)
: 指定された`値`を整数値に変換します。
OFFSET(`変数`, `整数値`)
: `整数値`で指定した数値を`変数`に加えます。`整数値`にマイナスの値を指定すると,その分だけ`変数`の値が減じられます。
ROW()
: その行の行数を返します。
SAMPLE(`変数`, `個数` [, `非選択時の値`])
: `変数`に含まれる値の中から,無作為に`個数`で指定された個数の値を選択します。選択されなかった部分は初期設定では空白(`欠損値`)になりますが,3つ目の要素として`非選択時の値`を設定すると,選択された値が含まれる行以外は,すべてその指定値になります。
: 例) `SAMPLE(A,20)`は,変数Aに含まれる値を無作為に20個(20行)選択します。`SAMPLE(A,20,0)`では,変数Aに含まれる値が無作為に20個(20行)選択され,残りの部分はすべて値が`0`になります。