ビジネスデータ分析Ⅱの提出物、あまり思い出せないので概要だけメモっておきます。
なにやるの?
csvファイルにデータがあるので、色々コマンドでデータを分析します・・・
結構難しいですが、やってみましょう。
第三回
R Studioのバージョン等
fPortfolioやmnormtが古いバージョンのR(3.xx)に対応していないようなので、新しいものを入れましょう。
私は、
R:4.0.2
R Studio:1.2.5033
でした。
※もっと新しくても多分大丈夫です。
R Studioの右下からPackagesからパッケージをインストールする事ができますよ。fPortfolioを入れておくと良いでしょう
課題?
課題提出の問題文のところにある通り
1 2 3 4 |
x<-read.csv("returns.csv", row.names=1) rp <- function(xi) { mean(x[,1]) * xi/100 + mean(x[,2]) * (100-xi)/100 } sp <- function(xi) {xi^2 * var(x[,1]) + (100-xi)^2 * var(x[,2]) + xi * (100-xi) * cor(x[,1],x[,2]) * sd(x[,1]) * sd(x[,2])}; plot(sp(0:100),rp(0:100)) |
で色々できそうです。
x[,1]とx[,2]は、1列目2列目の意味なので、番号を変更するor「returns.csvファイル」を加工すれば良さそうですね。
備考
install.packages(“mnormt”)
install.packages(“fPortfolio”)
でパッケージのインストールを行うか、RStudioの右下のPackageのタブからチェックを入れてインストールでも良さそうです。
※これを先にやる必要がありますね。
その他
すでに提出した方々と同じ条件で一度実施してみて、同じようなPlotができれば合っているので
自分で選択した項目に変更して提出してみましょう
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
install.packages("mnormt") install.packages("fPortfolio") x<-read.csv("returns.csv", row.names=1) library(fPortfolio) x.ts<-as.timeSeries(x) conditions<-portfolioSpec() setNFrontierPoints(conditions)<-100 efficientFrontier<-portfolioFrontier(x.ts,conditions) plot(efficientFrontier,1) plot(efficientFrontier,6) x.tan<-tangencyPortfolio(x.ts) getWeights(x.tan) x.e<-efficientPortfolio(x.ts) getWeights(x.e) |
第4回
今度は、パラメータを各自の理論?予想?で指定してみて結果がどうなったか?をコメントとして投稿する感じでしたかね?
1 2 3 |
※例※ result<-lm(wage ~ educ+tenure+female, data=wage) summary(result) |
1 2 3 4 5 6 7 8 |
※↑じゃ出来ないとお叱りを受けたので※ wage<-read.csv("wage.csv") summary(wage) result<-lm(wage ~ ., data=wage) summary(result) sresult<-step(result) result<-lm(wage ~ educ + exper + tenure + nonwhite + female + married, data=wage) summary(result) |
結局、コマンドをだた実行しただけでなく、色々自分の検討した結果等をコメントする必要があるので、すでに提出した方々を参考に講義を何度も見返し、こういったことを検討すれば良い。というところを見つけて提出してみましょう。
まとめ
- 本当にちょい解説でした。
- すでに投稿されている方々の投稿内容を見るのが一番良いかと思います。
投稿を頂いた方には、メールアドレスの方にお返事をさせていただきました。