X



トップページ数学
1002コメント395KB
【R言語】統計解析フリーソフトR 第6章【GNU R】 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001132人目の素数さん垢版2017/08/03(木) 19:23:12.67ID:Hq1blL0O
R は統計計算とグラフィックスのための言語・環境です。
統計計算で重宝するデータ型や、複数要素を処理する演算や関数、
解析結果を表示するグラフィックなど、多彩な機能を提供します。

●関連サイト
The R Project
http://www.r-project.org/
RjpWiki
http://www.okada.jp.org/RWiki/
リンク集
http://www.okada.jp.org/RWiki/?%A5%EA%A5%F3%A5%AF%BD%B8
※前スレ
【R言語】統計解析フリーソフトR 第5章【GNU R】
http://rio2016.2ch.net/test/read.cgi/math/1380168442/
0242132人目の素数さん垢版2017/11/20(月) 17:47:00.70ID:ptVXRSQM
以前、ボロノイ図について質問させていただいた初心者です。
質問後色々と試行錯誤したのですがdir.areaを出せず悩んでおります。
library(deldir)
> library(ggmap)
> df <- read.csv("C:/Users/***/Desktop/***/***.csv",header=T)
> loc <- c(min(df$lon),min(df$lat),max(df$lon),max(df$lat))
> GM <-ggmap(get_map(location=loc,zoom=11,source="google"))
> GP <- geom_point(data=df,aes(x=lon,y=lat,colour=factor(type)),size=3)
> dd <- deldir(df$lon,df$lat)
>GS <-geom_segment(data=dd$dirsgs,aes(x=x1,y=y1,xend=x2,yend=y2),size=0.5,linetype=1)
> GM+GP+GS
と入力しボロノイ図は出せているのですが、
0243132人目の素数さん垢版2017/11/20(月) 17:52:19.12ID:ptVXRSQM
summaryと入力しても
function (object, ...)
UseMethod("summary")
<bytecode: 0x06b5eef0>
<environment: namespace:base>
と表示されます。どの様に入力または再入力すればdir.areaが表示させられるでしょうか?
私自身初めてで、全く分からない状態でRを使用しているので、宜しければ分かり易く教えて頂けると幸いです。
0254132人目の素数さん垢版2017/11/22(水) 10:59:21.45ID:1eSvd7ei
>>242
検証用のデータがないと誰も追試しないと思う。
>154は模擬データがあったのでやる気になった。
0265132人目の素数さん垢版2017/11/24(金) 16:46:01.01ID:S4G8MO/P
関数のオプションの取り得る値を全て表示する方法って知らない?
例えばcor関数のmethodオプションの取り得る値は"pearson", "kendall", "spearman"みたいに。
そういうのは無いのかな?
初めて使う関数のオプションいちいちググるの面倒くさい。
0278132人目の素数さん垢版2017/11/24(金) 22:49:54.91ID:8tVkv6KQ
>>276
前にヘルプで見ようと思ったら書いてなかった覚えが…。マニアックな関数だったんで、そんなもんかな〜と諦めてた。やっぱ基本はヘルプか。
>>277
argsは見れる関数と見れない関数があるのであんまり役に立たない印象。
0289132人目の素数さん垢版2017/11/25(土) 01:57:31.82ID:sNF3t9bW
>>278
>argsは見れる関数と見れない関数があるのであんまり役に立たない
だったら、例が悪いよ。見られない関数の例をあげないと

> ヘルプで見ようと思ったら書いてなかった
こっちだってわざわざ下請け関数のオプションまでは書かないよ。
ヘルプを見て未解決ならソースを見てくれ。
0301132人目の素数さん垢版2017/11/28(火) 13:00:14.06ID:kbsEO2Dt
先週長々と質問させていただいたものです。その後、試行錯誤して行った結果十解決しました。

以前は「summary」としか入れていなかったのですが、「dd$summary」と入力したところ
全体のデータが出力されました。それ以後「dd$summary$dir.area」等で出せるようになりました。
大変初期的な場面で躓いておりましたが、現在何とか進んでおります。
色々とお答えくださった方々、とても参考になりました。本当にありがとうございました。
0302132人目の素数さん垢版2017/12/10(日) 13:11:49.22ID:cG4z9akW
N(=100)回コインをなげてn(=5回)以上続けて表がでる確率。

seqn<-function(n=5,N=100,p=0.5){
rn=rbinom(N,1,p)
count=0
for(i in 1:N){
if(rn[i] & count<n){
count=count+1
}
else{
if(count==n) {return(TRUE)}
else{
count=0
}
}
}
return(count==n)
}
mean(replicate(10^5,seqn()))

> mean(replicate(10^5,seqn()))
[1] 0.81085

案外、高い確率になった。
0304132人目の素数さん垢版2017/12/11(月) 07:47:07.43ID:EURogHTh
pooledVariance <- function(...) {
args = list(...)
n.args=length(args)
ss2=0
df=0
for(i in 1:n.args){
ss2 = ss2 + var(args[[i]])*(length(args[[i]])-1)
df = df + (length(args[[i]])-1)
}
ss2/df
}

effectsize <- function(y1,y2){
diff=mean(y1)-mean(y2)
var=(var(x1)*(length(x1)-1)+ var(x2)*(length(x2)-1))/(length(c(y1,y2))-2)
sd=sqrt(var)
diff/sd
}

library(effsize)
cohen.d()
0305132人目の素数さん垢版2017/12/11(月) 07:50:22.91ID:EURogHTh
>>303
単なる二項分布。
コインが5回続けて表がでたら、0.5^5 <0.05なのでイカサマコインといわれちゃいそうなんだが、
100回やってみると案外、5回表が続くので確率を計算しようと思ったが、解析的にできる頭がないので
シミュレーションしてみた。
0306132人目の素数さん垢版2017/12/11(月) 07:55:42.42ID:EURogHTh
>302は

> rbinom(100,1,0.5)
[1] 0 1 0 0 1 0 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 0 1 1 1 1 0
[33] 0 1 0 0 0 0 0 0 1 0 1 1 0 0 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 1 1 0
[65] 0 0 1 1 0 0 1 0 1 0 0 0 0 0 0 1 0 0 1 1 1 1 1 0 1 1 0 0 1 1 0 0
[97] 0 0 1 1

で5回以上1が連続するときTRUEを返す関数なのだが
もっと簡単にやれないかなぁとは思っている。

rep(1,5) %in% rbinom(100,1,0.5)は 1個ずつ評価されてTRUEが5個返ってくるだけ。

文字列にしてgrepを使うとなんとかなりそうな気がしないでもないのだけど....
0307132人目の素数さん垢版2017/12/22(金) 17:21:16.51ID:U1Bq8bdb
すまん、教えてほしいだけど
分析するために初めてRをインストールしようと思って、このスレのあるように公式サイト行ったら、esetが「JS/Redirector.NAV トロイの木馬」を検知したんだが…;
どうしたらいいだ…
0312132人目の素数さん垢版2017/12/23(土) 09:28:44.66ID:n0SBd+bp
>>310
してねぇよww
totalvirusで調べると一件引っかかるし、Redirector検知だから、しょうがないね
0313132人目の素数さん垢版2017/12/24(日) 20:42:51.55ID:CT/NKMd7
col=rgb(runif(1),runif(1),runif(1),runif(1))で色指定すると

走らせるたびに色がちがっておもしろい。

hist(rnorm(100),col=rgb(runif(1),runif(1),runif(1),runif(1)))
0314132人目の素数さん垢版2017/12/31(日) 17:23:19.35ID:14tdpK/Y
stanやJAGSのコードでgamma関数を使おうとして
y = gamma(x)
と、書いたらエラーになった。

stanだと y=tgamma(x)、JAGSだとy=exp(loggam(x))で動作した。
0315132人目の素数さん垢版2018/01/02(火) 08:46:50.95ID:qdmBZ37O
ある大学の入学者男女の比率は1であるという帰無仮説を検定する課題が花子と太郎に課された。

花子は50人を調査できたら終了として入学者を50人をみつけて18人が女子であるという結果を得た。
帰無仮説のもとで
50人中18人が女子である確率は 0.01603475
これ以下になるのは50人中0〜18人と32〜50人が女子の場合なので
両側検定して
> sum(dbinom(c(0:18,32:50),50,0.5))
[1] 0.06490865
> binom.test(18,50,0.5)$p.value
[1] 0.06490865
で帰無仮説は棄却できないと結論した。
http://i.imgur.com/XDIp9rM.png

一方、本番と十八番が好きな太郎は一人ずつ調べて18人めの女子がみつかったところで調査を終えることにした。
18人めがみつかったのは花子と同じく50人めであった。
帰無仮説のもとで
18人がみつかるのが50人めである確率は0.005772512
これ以下になるのは23人以下50人以上番めで女子18人めがみつかった場合なので
両側検定して
pnb=dnbinom(0:999,18,0.5)
> 1 - sum(pnb[-which(pnb<=dnbinom(50-18,18,0.5))]) # < 0.05
[1] 0.02750309
http://i.imgur.com/K3T7utr.png
で帰無仮説は棄却される。

どちらの検定が正しいか、どちらも正しくないか?
検定する意図によってp値が変わるのは頻度主義統計の欠陥といえるか?

花子の横軸は裏口入学者数、太郎の横軸はサンプル数なので
サンプルでの裏口入学率を横軸にして95%信頼区間を示す。
花子の検定での信頼区間は0.36〜0.72で18/50を含む、p=0.06491
http://i.imgur.com/SeTLk8K.jpg
太郎の検定での信頼区間は0.375〜0.72で18/50を含まない、p= 0.0275
http://i.imgur.com/tNzlfxe.jpg
主観である、検定の中止の基準の差でp値や信頼区間が変化するのは変だという批判である。
0316132人目の素数さん垢版2018/01/03(水) 10:35:48.54ID:YJfyxrv+
(訂正)
ある大学の入学者男女の比率は1であるという帰無仮説を検定する課題が花子と太郎に課された。

花子は50人を調査できたら終了として入学者を50人をみつけて18人が女子であるという結果を得た。
帰無仮説のもとで
50人中18人が女子である確率は 0.01603475
これ以下になるのは50人中0〜18人と32〜50人が女子の場合なので
両側検定して
> sum(dbinom(c(0:18,32:50),50,0.5))
[1] 0.06490865
> binom.test(18,50,0.5)$p.value
[1] 0.06490865
で帰無仮説は棄却できないと結論した。
http://i.imgur.com/XDIp9rM.png

一方、十八という数字が好きな太郎は一人ずつ調べて18人めの女子がみつかったところで調査を終えることにした。
18人めがみつかったのは花子と同じく50人めであった。
帰無仮説のもとで
18人がみつかるのが50人めである確率は0.005772512
これ以下になるのは23人以下50人以上番めで女子18人めがみつかった場合なので
両側検定して
pnb=dnbinom(0:999,18,0.5)
> 1 - sum(pnb[-which(pnb<=dnbinom(50-18,18,0.5))]) # < 0.05
[1] 0.02750309
http://i.imgur.com/K3T7utr.png
で帰無仮説は棄却される。

どちらの検定が正しいか、どちらも正しくないか?
検定する意図によってp値が変わるのは頻度主義統計の欠陥といえるか?

花子の横軸は女子数、太郎の横軸はサンプル数なので
サンプルでの女子の割合を横軸にして95%信頼区間を示す。
花子の検定での信頼区間は0.36〜0.72で18/50を含む、p=0.06491
http://i.imgur.com/SeTLk8K.jpg
太郎の検定での信頼区間は0.375〜0.72で18/50を含まない、p= 0.0275
http://i.imgur.com/tNzlfxe.jpg
主観である、検定の中止の基準の差でp値や信頼区間が変化するのは変だという批判である。
0317132人目の素数さん垢版2018/01/15(月) 16:30:41.76ID:wJofbCL/
kainokousiki<-function(a,b,c){return (-b+sqrt(b^2-4*a*c))/(2*a)} #解の公式
kainokousiki(1,-5,6)

でrunすると3じゃなくて6を返すんだけど、どこが間違ってる?
0318132人目の素数さん垢版2018/01/15(月) 16:35:00.20ID:wJofbCL/
自己解決
かっこが足りなかった
0331132人目の素数さん垢版2018/02/06(火) 18:35:39.90ID:tAZA/Fp/
『Rを使った〜』だとPythonじゃないのかよって思うよね
0332132人目の素数さん垢版2018/02/06(火) 21:37:32.10ID:tUqX17n9
ずっとRだけでPython触ったこと無いけど、覚え直す価値ある?
環境構築からもう面倒なイメージ
0333132人目の素数さん垢版2018/02/06(火) 22:43:23.82ID:qQMNyZjW
Python自体は:と直後のインデントさえ気を付ければかなり簡単
3系は数が全て小数扱いなので楽

Anacondaというパッケージでインストールすれば、今流行りのJupyter Notebookという開発環境で対話的にコーディングできる(Rも使える)
0334132人目の素数さん垢版2018/02/07(水) 20:40:49.48ID:mgaw9oVw
アナコンダてのがRぽくできるのね、ありがとう
dplyrやggplot2みたいに素人でも簡単便利だといいんだけど
Pythonはオブジェクト志向ぽいしすぐ諦めそう
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況