Rの手作りプログラム
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
|このページについて|
''概要'':このページでは、統計言語Rを使う上で有益なプログ...
(今後、随時updateしていく予定)
''親ページ'':このページの親ページは[[R]]です。
//Topページのサイトマップの適切な位置に、このページへのリ...
//出来れば、あなたの名前(ハンドルネーム歓迎)、ページを...
|目次|
#contents
----
*基本統計量 [#p459e2e2]
**収益率 [#y4f84dd8]
xに株価系列を入れると対数階差で近似した収益率を返してくれ...
diff(log(x))
以下でも同じ結果を返す。
#収益率
#yの増加率diff(log(y))で近似可能。
profitrate <- function(x)
{
z <- log(x[-1])-log(x[-length(x)])
z
}
**歪度 [#g5de44c9]
#歪度
skew <- function(x){
z1 <- mean(z(x)^3)
z1
}
**尖度 [#u022aea6]
#尖度
kurt <- function(x){
z2 <- mean(z(x)^4)
z2
}
**異常値の数 [#rd2e9957]
#異常値の数(標準偏差の±2 倍、± 3 倍、± 4 倍を超えた標本...
abnormal.number2 <- function(x){
z <- length(x[x>2*sd(x) | x< -2*sd(x)])
z
}
abnormal.number3 <- function(x){
z <- length(x[x>3*sd(x) | x< -3*sd(x)])
z
}
abnormal.number4 <- function(x){
z <- length(x[x>4*sd(x) | x< -4*sd(x)])
z
}
上記を一般化すれば、以下となる。
#異常値の数(標準偏差の±k 倍を超えた標本数)
abnormal.number <- function(x,k){
z <- length(x[x>k*sd(x) | x< -k*sd(x)])
z
}
**標本分散,標本共分散 [#w22b8751]
#標本分散
sample.variance<-function(a) var(a)*(length(a)-1)/length...
#以下でも同じ。
#sample2.variance<-function(x) mean(x^2)-(mean(x))^2
#標本共分散
sample.covariance<-function(x,y) mean(x*y)-mean(x)*mean(...
**相関係数 [#lb51a792]
#相関係数 cor(x,y)という組み込み関数があるが、一応練習も...
sugi.soukan<-function(x,y){
sample.covariance<-mean(x*y)-mean(x)*mean(y) #...
variance1<-function(a) var(a)*(length(a)-1)/length(a) #...
#xの標準偏差を求める
x1<-variance1(x)
sdx<-sqrt(x1)
#yの標準偏差を求める
y1<-variance1(y)
sdy<-sqrt(y1)
#最後の相関係数を計算
soukan<-sample.covariance/(sdx*sdy)
soukan
}
**基本統計量を一式まとめて求める [#adb8d57f]
######################################################
# 基本統計量
######################################################
#xに1変量株価データ(つまりベクトル)を入れると収益率の...
sugi.basic<-function(x){
x1<-diff(log(x)) ...
variance1<-function(a) var(a)*(length(a)-1)/length(a) ...
sdx<-sqrt(variance1(x1)) ...
#異常値の数を返すプログラムを定義
abnormal.number <- function(p,k){
z <- length(p[p>k*sd(p) | p< -k*sd(p)])
z
}
T<-length(x1)
R<-mean(x1)
x2<-(x1-R)/sdx #x2を標準化
s<-mean(x2^3) #歪度
k<-mean(x2^4) #尖度
max<-max(x1)
min<-min(x1)
a2<-abnormal.number(x1,2)
a3<-abnormal.number(x1,3)
a4<-abnormal.number(x1,4)
#ここまで計算した基本統計量をまとめて返す。
return(list ("T"=T,"R"=R,"SD"=sdx,"skew"=s,"kurt"=k,"ma...
}
*Reference [#a63b2258]
**書籍 [#h8a36313]
-[[The R Tips―データ解析環境Rの基本技・グラフィックス活用...
**リンク [#f4df0207]
-[[Econometrics in R:http://cran.r-project.org/doc/contri...
-[[CRAN Task View: Computational Econometrics:http://cran...
-[[パッケージ一覧:http://cran.md.tsukuba.ac.jp/src/contri...
終了行:
|このページについて|
''概要'':このページでは、統計言語Rを使う上で有益なプログ...
(今後、随時updateしていく予定)
''親ページ'':このページの親ページは[[R]]です。
//Topページのサイトマップの適切な位置に、このページへのリ...
//出来れば、あなたの名前(ハンドルネーム歓迎)、ページを...
|目次|
#contents
----
*基本統計量 [#p459e2e2]
**収益率 [#y4f84dd8]
xに株価系列を入れると対数階差で近似した収益率を返してくれ...
diff(log(x))
以下でも同じ結果を返す。
#収益率
#yの増加率diff(log(y))で近似可能。
profitrate <- function(x)
{
z <- log(x[-1])-log(x[-length(x)])
z
}
**歪度 [#g5de44c9]
#歪度
skew <- function(x){
z1 <- mean(z(x)^3)
z1
}
**尖度 [#u022aea6]
#尖度
kurt <- function(x){
z2 <- mean(z(x)^4)
z2
}
**異常値の数 [#rd2e9957]
#異常値の数(標準偏差の±2 倍、± 3 倍、± 4 倍を超えた標本...
abnormal.number2 <- function(x){
z <- length(x[x>2*sd(x) | x< -2*sd(x)])
z
}
abnormal.number3 <- function(x){
z <- length(x[x>3*sd(x) | x< -3*sd(x)])
z
}
abnormal.number4 <- function(x){
z <- length(x[x>4*sd(x) | x< -4*sd(x)])
z
}
上記を一般化すれば、以下となる。
#異常値の数(標準偏差の±k 倍を超えた標本数)
abnormal.number <- function(x,k){
z <- length(x[x>k*sd(x) | x< -k*sd(x)])
z
}
**標本分散,標本共分散 [#w22b8751]
#標本分散
sample.variance<-function(a) var(a)*(length(a)-1)/length...
#以下でも同じ。
#sample2.variance<-function(x) mean(x^2)-(mean(x))^2
#標本共分散
sample.covariance<-function(x,y) mean(x*y)-mean(x)*mean(...
**相関係数 [#lb51a792]
#相関係数 cor(x,y)という組み込み関数があるが、一応練習も...
sugi.soukan<-function(x,y){
sample.covariance<-mean(x*y)-mean(x)*mean(y) #...
variance1<-function(a) var(a)*(length(a)-1)/length(a) #...
#xの標準偏差を求める
x1<-variance1(x)
sdx<-sqrt(x1)
#yの標準偏差を求める
y1<-variance1(y)
sdy<-sqrt(y1)
#最後の相関係数を計算
soukan<-sample.covariance/(sdx*sdy)
soukan
}
**基本統計量を一式まとめて求める [#adb8d57f]
######################################################
# 基本統計量
######################################################
#xに1変量株価データ(つまりベクトル)を入れると収益率の...
sugi.basic<-function(x){
x1<-diff(log(x)) ...
variance1<-function(a) var(a)*(length(a)-1)/length(a) ...
sdx<-sqrt(variance1(x1)) ...
#異常値の数を返すプログラムを定義
abnormal.number <- function(p,k){
z <- length(p[p>k*sd(p) | p< -k*sd(p)])
z
}
T<-length(x1)
R<-mean(x1)
x2<-(x1-R)/sdx #x2を標準化
s<-mean(x2^3) #歪度
k<-mean(x2^4) #尖度
max<-max(x1)
min<-min(x1)
a2<-abnormal.number(x1,2)
a3<-abnormal.number(x1,3)
a4<-abnormal.number(x1,4)
#ここまで計算した基本統計量をまとめて返す。
return(list ("T"=T,"R"=R,"SD"=sdx,"skew"=s,"kurt"=k,"ma...
}
*Reference [#a63b2258]
**書籍 [#h8a36313]
-[[The R Tips―データ解析環境Rの基本技・グラフィックス活用...
**リンク [#f4df0207]
-[[Econometrics in R:http://cran.r-project.org/doc/contri...
-[[CRAN Task View: Computational Econometrics:http://cran...
-[[パッケージ一覧:http://cran.md.tsukuba.ac.jp/src/contri...
ページ名: