11/11/15 22:14:50.47
>>234
> 1.i行j列成分がi^2+j^3で与えられる10行10列の行列をfor文を用いて作りなさい。
しかし、Rでfor文ってその教授はバカじゃないの?
常識的に
outer((1:10)^2,(1:10)^3,'+')
ってやるものじゃないのか?
238:132人目の素数さん
11/11/16 00:17:57.03
>>234
1. a <- matrix(0, 10, 10); for (i in 1:10) {for (j in 1:10) {a[i, j]=i^2+j^3}}
2. rev(a)
3. A[20:1,]
239:132人目の素数さん
11/11/17 09:59:23.86
R初心者として質問です。
Rを外部プロセスから呼び出したり、
シェルからRプログラムを渡して標準出力で受け取ったりはできるのでしょうか。
なにとぞよろしくお願いします。
240:132人目の素数さん
11/11/17 12:17:43.67
>>239
$ echo 'print(pi)' |r
[1] 3.141593
とか
$ Rscript -e 'print(pi)'
[1] 3.141593
241:240
11/11/17 12:20:00.76
>>239
> 標準出力で受け取ったり
無意味な例だけど、
$ echo 'print(pi)' |r | sed 's/3/A/g'
[1] A.14159A
242:132人目の素数さん
11/11/17 18:28:14.48
>>240-241
ありがとうございました。
活用します。
243:132人目の素数さん
11/11/18 10:01:50.10
>>239
シェルスクリプトから、短いRスクリプトを呼ぶなら、
ヒアドキュメントを使う方法が個人的に好き。
R --vanilla --slave <<_END_OF_R_ > output_of_R.txt
print(pi)
_END_OF_R_
別に、Rに限らず、PerlでもPythonでもこの方法は使えますが、、、
244:132人目の素数さん
11/11/18 10:12:24.08
>>243
おぉ、Rって標準入力からそのまま普通に使えたのか
245:132人目の素数さん
11/11/18 18:03:12.10
電波テロ装置の戦争(始)
エンジニアと参加願います公安はサリンオウム信者の子供を40歳まで社会から隔離している
オウム信者が地方で現在も潜伏している
それは新興宗教を配下としている公安の仕事だ
発案で盗聴器を開発したら霊魂が寄って呼ぶ来た
<電波憑依>
スピリチャル全否定なら江原三輪氏、高橋佳子大川隆法氏は、幻聴で強制入院矛盾する日本宗教と精神科
<コードレス盗聴>
2004既に国民20%被害250~700台数中国工作員3~7000万円2005ソウルコピー2010ソウルイン医者アカギ絡む<盗聴証拠>
今年5月に日本の警視庁防課は被害者SDカード15分を保持した有る国民に出せ!!<創価幹部>
キタオカ1962年東北生は二十代で2人の女性をレイプ殺害して入信した創価本尊はこれだけで潰せる<<<韓国工作員鸛<<<創価公明党 <テロ装置>>東芝部品)>>ヤクザ<宗教<同和<<公安<<魂複<<官憲>日本終Googl検索
246:132人目の素数さん
11/11/18 18:03:58.46
魂は幾何学
誰か(アメリカ)気づいた
ソウルコピー機器
247:132人目の素数さん
11/11/19 03:14:20.46
persp関数により3次元グラフを描画しているのですが、borderの幅が小さいためか、グラフが真っ黒になってしまいます。
この幅を変更する方法はありますか?また、他の解決方法がありましたら、教えてください。
248:132人目の素数さん
11/11/19 11:32:20.50
>>247
グラフを大きくした方がよさげだけど、
pdf(file="247.pdf",width=14,height=14)
persp(...)
dev.off()
ぐらいから、サイズを試行錯誤してみれば?
borderの幅が線幅のことなら、lwdなどで指定する。
249:132人目の素数さん
11/11/19 19:55:55.59
>>248
コメントありがとうございます。
サイズや、線幅を変えて試行錯誤してみましたが、どうもborderの線と線の間隔が狭いのが原因のようです。
この線と線の間隔の設定はできないのでしょうか?よろしくお願いします。
250:132人目の素数さん
11/11/21 08:56:04.33
>>249
むしろ、border=NAとか
251:132人目の素数さん
11/11/25 21:55:00.40
>>215
統計数理研究所で、昨日からRの無料講習会が開かれているようですね。
日程:2011年11月24日(木)− 11月26日(土)
場所:統計数理研究所(東京都立川市)3階セミナー室 2 (D304)
データ解析環境Rの整備と利用
URLリンク(mid.ism.ac.jp)
252:132人目の素数さん
11/11/26 00:49:00.80
いや、講習会じゃないんだけど…
253:132人目の素数さん
11/12/05 12:21:38.19
>>238
ありがとうございました
254:132人目の素数さん
11/12/05 12:21:47.65
解答分かる方お願いします
<演習問題1>
i番目の要素がi^2+1で与えられ各要素に名前が付いている次のベクトルを作りなさい。
(注:a[2]=5等のように直接値を決めるのはやめること。)
A B C D E F G H I J K L M N O P Q R S T U V
2 5 10 17 26 37 50 65 82 101 122 145 170 197 226 257 290 325 362 401 442 485
<演習問題2>
matrix(1:100,10,10)を作り、行の順番を入れ替え、そして行と列に名前を付けることで
次の行列を作りなさい。
a b c d e f g h i j
A 10 20 30 40 50 60 70 80 90 100
B 9 19 29 39 49 59 69 79 89 99
C 8 18 28 38 48 58 68 78 88 98
D 7 17 27 37 47 57 67 77 87 97
E 6 16 26 36 46 56 66 76 86 96
F 5 15 25 35 45 55 65 75 85 95
G 4 14 24 34 44 54 64 74 84 94
H 3 13 23 33 43 53 63 73 83 93
I 2 12 22 32 42 52 62 72 82 92
J 1 11 21 31 41 51 61 71 81 91
<演習問題3>
第i,j要素がi^5+jで与えられる10行10列の行列をfor文を使って作りなさい。
<演習問題4>
A=matrix(1:100,10,10)を作り
第3列目の平均を計算しなさい。
255:132人目の素数さん
11/12/05 13:03:09.46
教員がココを見ていたら、>>254には単位をやらないことを勧める。
>>254
解答は1つではなく、人によって全く異なる解答例になる。
「100字以内で答えよ」という問題の解答が1人1人異なるのと同じ。
誰かがここに解答を示すかも知れないが、
ここの解答を写したことは、自分で独自に改変しない限り、バレるよ。
256:132人目の素数さん
11/12/05 13:51:41.75
興味ない授業だが、取らなきゃいけない科目とかなのかな?
257:132人目の素数さん
11/12/05 23:50:31.46
>>254
ヒント
names関数、xxxnames関数
LETTERS[1:10]、letters[1:10]
(LETTERS、letters は、組み込みの定数ベクター)
258:132人目の素数さん
11/12/06 06:25:24.35
>>254
統計学の講義⁇
259:132人目の素数さん
11/12/06 21:50:20.66
質問させてください
データフレームDFがあって
DF[, 1] にはコードが、
2列目以降は価格が入っています
2列目から501列目まで各時点の値です
行数は2000個程度です
このデータフレームから2つ選んで価格を足し合わせたいのですが
簡潔な方法はありますでしょうか?
現状は
a <- combn(DF[, 1], 2)
temp_a <- merge(t(a[,1]), DF)
temp_b <- merge(t(a[,2]), DF)
res <- temp_a[, -1] + temp_b[, -1]
でやろうかと思っていますが
データ数がデータ数なのでもっと高速な方法がありましたらご教授ください
お願いいたします
260:132人目の素数さん
11/12/07 16:15:54.22
>>259
rownames(DF) <- DF[,1]
colSums(DF[t(combn(DF[,1],2)),])
ということ?
261:132人目の素数さん
11/12/07 21:14:27.18
すみません、こんな質問していいのか分からないのですが、
検索しても分からなかったので質問させてください
自分は参考書を本屋でめくった程度のものなのですが、
PHPとR言語は連携できるのでしょうか?
また、CやPythonなどプログラミング言語にて簡単なもので言えばユークリッドとかベイズとかアルゴリズム化で処理できますが、
R言語の場合処理速度などはどの程度のものなのでしょうか?
Cなどで統計ものを書くよりも、R言語の方がシンプルなような印象を受けたのですが、あまり連携しているのを見かけません
何かR言語にデメリットがあって連携しないのかなと思ったのですが
262:132人目の素数さん
11/12/07 22:30:28.03
>>260
それだと、
colSums(DF[,2:501])*(2000-1)
と同じじゃね?
>>259
「2つ選んで価格を足し合わせ」る、っていうのが、イマイチ具体的に理解できない。もっと正確に書いてくれないだろうか
それに、なぜ全行について2つの全組み合わせが必要なの?
263:259
11/12/07 23:20:26.01
>260,262
ありがとうございます
例がわかりにくかったようで申し訳ないです
ランダム変数randuを用いた例だと
DF <- data.frame(randu)
一列目がコードと仮定します
colnames(DF) <- c("CODE", "VAL1", "VAL2")
rownames(DF) <- DF[, 1]
combi <- combn(rownames(DF), 2)
DF1 <- DF[t(combi)[, 1], -1]
DF2 <- DF[t(combi)[, 2], -1]
DFZ <- data.frame(t(combi), DF1 + DF2)
colnames(DFZ)[1:2] <- c("CODE1", "CODE2")
欲しいのはDFZで今回はranduを用いたので列はコードを除けば2つで
行数は400C2の約8万ですが
実際のデータは元データは行数2000 列数500ほどなので
結構時間がかかります
これより高速化はむずかしいでしょうか?
よろしくお願いいたします。
264:きど
11/12/07 23:22:43.57
Rのテンドログラムの保存の方法を知りたいのですが。USBなど。。。
265:132人目の素数さん
11/12/08 01:04:05.71
>>263
詳細、ありがとうございました
確実に言えるのは、デカいデータなので、後に使う予定がないのならDF1/DF2は作るなっ
てことかな (object保持の負荷が大きい)。他にも不要なobjectはrm()しておく
tcombi <- t(combi) # これは 2000C2 でも瞬時
DFZ <- cbind(tcombi, DF[tcombi[, 1], -1] + DF[tcombi[, 2], -1])
とするだけでも、「少しは」速くなるはず
DFZも丸ごと全部作らないで、tcombiを適当に分割したのを使って部分的に作っては
その都度ファイルに追記書き出しして、最終的にファイルから読み込んで df 化する方が
速いかも(テストしてないけど)
もう既に試されたかもしれない、ありふれた考えなので申し訳ないが...
266:132人目の素数さん
11/12/08 09:17:07.19
>>264
画像ファイルへの出力方法を調べてください。
検索キーワードは「R グラフィックディバイス」です。
postscript(), png()などさまざまなものがあります。
X11()などスクリーン上のディバイスをコピーするなら、
dev.copy2eps(file="hoge.eps")
で、作業ディレクトリにeps画像ファイルが保存されます。
USBメモリへ保存したいなら、パス付きでファイル名を書けばよいです。
USBのマウント先が/Volume/FUGAなら、
dev.copy2eps(file="/Volume/FUGA/hoge.eps")
とします。
あなたが自分の環境を秘密しているので、助言できるのはこのくらいです。
詳細は、グーグル先生にお尋ねください。
267:259
11/12/08 23:19:36.17
>>265
全部でやると32bitなものでメモリの使用量が4GBを超えてしまいましたので
提示いただいた分割する方法でファイルに書き出して対応できました
ありがとうございました
268:132人目の素数さん
11/12/08 23:34:00.09
>>267
32bitの壁が問題になるなら64bitつかった方がよいと思うのだけど。
自分はRのために3GB→6GBにメモリ増設した。
269:132人目の素数さん
11/12/09 22:44:47.03
>> 267
よかったですね
参考のため、もし差し支えなければ、どれくらいの時間がかかったのか、
動作環境も含めて教えていただけないでしょうか?
270:132人目の素数さん
11/12/10 23:33:27.19
自然言語処理など、テキストを処理し、統計計算をしたいのですが、PythonとRとはどのように違うのでしょうか?
やっぱ専門であるのでR言語の方がいいのでしょうか?
PHP、データベースからデータを得て、処理結果を送り返すためのシステム部分にPythonかRを使いたいと考えています
RとPythonを比較すること自体おかしいのかもしれませんが、上記のような処理の為の本を見ると、この2つが良く出てきます
Pythonはプログラミング言語であるので、PHPとかとは処理の連携が簡単でしょうけど、R言語についてはプログラミングをしていても(そういう環境下では)殆ど情報が出てこない、名前を聞かないもので
271:132人目の素数さん
11/12/10 23:48:50.77
>>270
統計計算のレベルによるだろうけど、本格的に統計処理を入れるなら、
Rを利用した方が楽だろう。PHP-Python-Rという風に使ってもよいのでは。
rpy2とか検索してみて
272:132人目の素数さん
11/12/11 00:12:09.89
>>271
返答ありがとうございます
確かに、記述方法がRは非常にシンプルだと本屋で調べてみて思いました
Pythonはまだ学習し始めたところですが、PHP、Cなどで書くととんでもないというのがもの凄く簡単に書かれていて驚きました
ところで、今R言語について調べていたら、対話式がメインとか書かれているようでした
R言語は、他の言語のようにテキストエディタで記述し、自動処理出来るのではないのでしょうか?
PHPなどと違い、ブラウザに表示とか、Linux上でファイルやディレクトリを操作したりとかは無理かもしれませんが、
PHPからRで書かれたファイルを呼び出し処理をし、結果を受け取り・・・といったことをやりたいと思っていたのですが
rpy2を今から検索してみます
273:259
11/12/12 22:04:22.39
>>268
個人の環境ではないので簡単には64bitには変えられないのです
>>269
この処理だけではないので一概には言えませんが、一断面10分程度です
環境はcentOS6で xeonE3110です
ありがとうございました
274:132人目の素数さん
11/12/13 06:18:01.69
え?Python???と思ってググったら、
いまどきは、こんな言語がPythonと呼ばれているのか。
275:132人目の素数さん
11/12/14 22:48:13.92
2変数の非線形連立方程式の解き方教えていただけませんでしょうか?
276:132人目の素数さん
11/12/15 23:27:48.29
ちょっと教えてください
# 疑似観測値 (行方向はパターン、列方向は時系列)
DF <- data.frame(t(t(colnames(randu))),t(randu))
colnames(DF) <- c("PATTERN", gsub("X", "", colnames(DF)[-1]))
# 移動平均の計算 (40サンプル分)
ma_filter <- rep(1, 40) / 40
MADF <- data.frame(DF[,1], t(filter(t(DF[, -1]), filter = ma_filter, method = "convolution", sides = 1)))
colnames(MADF) <- colnames(DF)
# 移動平均の標準偏差(2sigma)の計算
for( i in 41:ncol(MADF)){
if(i == 41){
std <- apply(MADF[, (i-39):i], 1, sd)
} else{
temp <- apply(MADF[, (i-39):i], 1, sd)
std <- rbind(std, temp)
}
}
MASIGMADF <- data.frame(DF[,1], t(rep(NA,39)), t(std*2))
colnames(MASIGMADF) <- colnames(MADF)
# データのある部分だけを抽出
DF <- DF[, c(1,80:ncol(DF))]
MADF <- MADF[, c(1,80:ncol(MADF))]
MASIGMADF <- MASIGMADF[, c(1,80:ncol(MASIGMADF))]
上記のような時系列データとその移動平均および標準偏差があると仮定します
このとき、時系列の観測データが初めて移動平均+標準偏差の値を超えた時点から
再び移動平均に収束するまでをTRUE、それ以外をFALSEとするようなフラグのデータフレーム(形式はDFと同じ)を作成したいのですが、
良い方法はありますでしょうか
277:132人目の素数さん
11/12/19 15:08:40.40
来年から文系大学生です。
R言語って文系学部でも使いますか?
あと、使えると就職や進学に有利でしょうかね?
278:132人目の素数さん
11/12/19 15:33:46.79
>>277
文系とは具体的に、どの分野?
経済学や社会学など社会科学分野なら統計解析は必須だろうし、
その他の文系でも、心理学、計算言語学、数理地理学とかデータ処理を扱うなら、
統計解析は必須だろう。統計解析を行うなら、R言語を使うこともあるだろう。
Rを自由自在に使えると就職や進学に有利かと問われれば、多くの場合、否でしょう。
279:132人目の素数さん
11/12/19 19:22:08.37
>>278
経済学。
十分条件じゃなくて、必要条件であるみたいですね。
れすトンクス。
280:132人目の素数さん
11/12/21 02:29:25.07
すんません、Rまだまだ初心者なのですが、元データをフーリエ変換したデータにおける正準相関分析をしたくて、デフォで入っているcancorとかでなく、データのこともあり自分で作らなきゃならなくて
function(a,b,c,d,m,n){
e<-matrix(Re(fft(a[1:n]-mean(a[1:n]))),1,n,byrow=T) #4つのデータのfftをそれぞれ行列に入れる
f<-matrix(Re(fft(b[1:n]-mean(b[1:n]))),1,n,byrow=T)
g<-matrix(Re(fft(c[1:n]-mean(c[1:n]))),1,n,byrow=T)
h<-matrix(Re(fft(d[1:n]-mean(d[1:n]))),1,n,byrow=T)
j<-matrix(0,4,n) #上記で作ったデータを1つの行列に入れる
j[1,]<-e
j[2,]<-f
j[3,]<-g
j[4,]<-h
k<-j[,m] #m列目の成分を取り出す
o<-(1/n)^2*k%*%t(k) #粗いですがスペクトル密度関数の推定量をもとめる
p<-o[c(1,2),c(1,2)]
q<-o[c(1,2),c(3,4)]
r<-o[c(3,4),c(3,4)];u<-solve(p);v<-solve(r);w<-t(q);
s<-eigen(u%*%q%*%v%*%w) #固有値問題を解く
return(list(j[1,],j[,m],o,p,q,r,s))}
という関数を定義して実行すると
以下にエラー solve.default(p) :
システムは数値的に特異です:条件数の逆数 = 3.72483e-17
とでるんですが、どうなおせばよいでしょうか。
281:132人目の素数さん
11/12/22 22:26:52.11
>>273
273みたいな使い方はそのコンピュータではアブノーマルなの?
なんでCentOS6なのにまだ32bitなの? 管理者バカなんじゃないの。
今、パソコンが安いから実験機として買ってメモリてんこ盛りにして64bitOSを作ろうって提案したら?
あとせっかくだからマルチブートの仕方を覚えて、32bitと64bitを共存させて、他にもOSを入れられる
ように設定しておけばいい。
URLリンク(nttxstore.jp)
282:132人目の素数さん
11/12/23 09:51:58.81
URLリンク(www.r-project.org)
R version 2.14.1 (December Snowflakes) has been released on 2011-12-22.
ってDownloadのところには2.14.0しかないんだけど、
Download R-2.14.1 RC build for Windows (46 megabytes, 32/64 bit)
じゃなくて、正式なリリース版の2.14.1って、どこで落とせますか?
283:132人目の素数さん
11/12/23 10:18:18.71
>>282
URLリンク(cran.r-project.org)
284:132人目の素数さん
11/12/23 10:26:11.01
>>283
あー、ソースレベルって事すか。
バイナリリリースはちょっと待てっていうことですかね。
ありがとうございました。
285:132人目の素数さん
11/12/23 23:31:39.85
>>280
ginv では?
286:132人目の素数さん
11/12/25 10:11:34.88
>>282
URLリンク(essrc.hyogo-u.ac.jp)
とかに
Download R 2.14.1 for Windows (45 megabytes, 32/64 bit)
が入りましたよ
287:132人目の素数さん
11/12/25 16:26:21.07
>>286
さんくす。めりくり。らいよろ。
288:132人目の素数さん
11/12/27 02:47:24.36
わからなかったので教えてください。
階層型クラスタ分析には、サンプル(ケース)に対してクラスタリングするのか、
変数に対してクラスタリングするのかでわかれるかと思いますが、
Rではサンプルに対してしかクラスタ分析できないのでしょうか?
289:132人目の素数さん
11/12/30 12:46:23.67
UNIXにインストールされているRのシェルからの起動の仕方を教えて下さい。
290:132人目の素数さん
11/12/30 14:45:51.73
>>289
r
291:132人目の素数さん
11/12/30 18:00:57.18
横軸を date オブジェクト、縦軸を数値とする折線グラフを描いたのですが、
垂直線を追加しようとしても上手く入りません。
偉い人、解説をよろしくお願いします。
x <- strptime(c("2009年12月14日","2009年12月21日","2009年12月28日","2010年1月4日"),"%Y年%m月%d日")
y <- c(10,20,5,15)
plot(x,y,type="b")
abline(v=strptime("2009年12月21日","%Y年%m月%d日"))
292:291
11/12/30 18:01:59.90
自己解決しました。
abline(v=as.numeric(strptime("2009年12月21日","%Y年%m月%d日")))
でOKでした。
293:132人目の素数さん
12/01/01 13:50:09.79
>>290
rとRの区別もつかんのか
294:132人目の素数さん
12/01/01 14:22:08.14
>>293
rもリンクされてなかったっけ?
295:132人目の素数さん
12/01/01 16:37:59.98
>>294
rはRとは別のソフト
$ r --version |head -1
r ('littler') version 0.1.5
$ R --version |head -1
R version 2.14.1 (2011-12-22)
296:132人目の素数さん
12/01/01 23:50:07.45
ややこしいなあ。
297:132人目の素数さん
12/01/02 01:26:00.73
>>296
これをややこしいと思う人は、
incase-sensitiveな文化に脳を冒されている人
298:132人目の素数さん
12/01/04 14:54:08.36
>>295
Mac OS X版だと同一ファイルにリンクされてた。
/usr/bin/R -> /Library/Frameworks/R.framework/Resources/bin/R
/usr/bin/r -> /Library/Frameworks/R.framework/Resources/bin/R
でも大文字Rのほうが標準っぽいな。
>>297
case-insensitiveだな。
299:132人目の素数さん
12/01/04 16:16:24.48
>>298
MacPorts版のMacOSX版(ややこしいな)だとどうだろう。
300:132人目の素数さん
12/01/10 23:18:34.13
簡単そうでなかなかできないので相談させてください。
> a <- matrix(1:9,3)
> (b <- list(a,a))
[[1]]
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
[[2]]
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
こんなリストがあったとして、これを3次元array
,,1
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
,,2
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
こんな感じに変換するにはどうすればよいですか?
やりたいことは、b[1,1,]とかb[1,2,]とか、
リストの要素である行列を貫いて、行列の各セルの値(ベクトル)を取り出したいのです。
arrayであれば、例えばb[3,3,]でc(9,9)が取り出せるはず。
301:132人目の素数さん
12/01/11 01:10:41.37
## ベクトルまで分解するunlistを使うとできたっぽいけど期待されている答えではないかも、、
a <- matrix(data = 1:9, nrow = 3)
(b <- list(a,a))
unlist(b)
test.array <- array(data = unlist(b), dim = c(3,3,2))
test.array
test.array[3,3,]
## ちなみに、リストのまま処理してはだめ?
sapply(X = b, FUN = function(y) {y[3,3]})
302:132人目の素数さん
12/01/11 01:53:23.83
>>301
多謝!
listのままだとその先の操作に進みにくかったので、arrayを検討していました。
unlist()は盲点でした。ありがとうございます。
> res <- matrix(rep(list(NA),9),3)
> class(res[1,1])
[1] "list"
> for(i in 1:3){for(j in 1:3){res[i,j] <- list(test.array[i,j,])}}
> res
[,1] [,2] [,3]
[1,] Integer,2 Integer,2 Integer,2
[2,] Integer,2 Integer,2 Integer,2
[3,] Integer,2 Integer,2 Integer,2
> unlist(res[2,2])
[1] 5 5
ばっちりです。各セルに元データのセルの値を集めることが出来ました。
本番のデータでやってみます。
> for(i in 1:3){for(j in 1:3){res[i,j] <- list(sapply(b,function(y){y[i,j]}))}}
リストのままでも出来てしまいました。すみません。
303:132人目の素数さん
12/01/15 00:10:57.15
CだとかRだとかのような1文字の名前ではサーチするのが難しい。
304:132人目の素数さん
12/01/15 12:02:12.63
その程度しか検索単語が思い浮かばないようでは()難しい
305:132人目の素数さん
12/01/15 19:09:49.95
>>303
まぁ
r-project
r-script
r 統計
このあたりですね
306:132人目の素数さん
12/01/16 12:50:23.28
>>303
まぁまずはRSiteSearch()だろ。
そんで、URLリンク(www.rseek.org) とか。
最後に>>305の検索語でgoogleを使えばいいんじゃない?
○○を実装したパッケージを探すなら、「cran ○○」で検索する。
307:132人目の素数さん
12/01/17 00:15:09.67
すんません、正方行列AのA^{-1/2}ってどう計算すれば良いですかね?
308:132人目の素数さん
12/01/17 12:46:55.11
>>307
言いたいことは、こういうこと?
正方行列Aが逆行列を持ち、A^{-1} の固有値が m,n なら、
A^{-1/2} = (A^{-1}+ mnI)/(m+n)
違ってたら、ごめん。
309:308
12/01/17 12:48:44.46
あ、違ってた。
A^{-1/2} の固有値が m,n なら、
A^{-1/2} = (A^{-1}+ mnI)/(m+n)
かな。
310:308
12/01/17 20:39:11.48
>>307
>>308,309 が、しっちゃかめっちゃかだったので捲土重来を目指して…
A^t 転置、A^* 複素共役 として、
A が、A^t* A = A A^t* を満たし、A のすべての固有値が正だったら、
(U^t*)U = I を満たす行列 U と対角行列 D を使って、
A = UDU^{-1} と書けるから、
A^{-1/2} = UD^{-1/2}U^{-1}
(ただし、D^{-1/2} は、D の各対角成分d_{i,i}に対し、
D^{-1/2} の各対角成分 x_ {i,i} = 1/√d_{i,i} としたもの。)
という理解であってるのかな。
311:308
12/01/17 22:19:59.38
>>307
R-Sources URLリンク(cse.naro.affrc.go.jp)
見たけど、これで行けるんじゃね?
> A <- matrix(c(1,2,0,3), 2, 2)
> B <- eigen(A)$vectors %*% diag(1/sqrt(eigen(A)$values)) %*% solve(eigen(A)$vectors)
> solve(A)
[,1] [,2]
[1,] 1.0000000 0.0000000
[2,] -0.6666667 0.3333333
> B %*% B
[,1] [,2]
[1,] 1.0000000 0.0000000
[2,] -0.6666667 0.3333333
> A %*% B %*% B
[,1] [,2]
[1,] 1.000000e+00 0
[2,] 2.217736e-16 1
最後のがキッチリ単位行列にならないのは、
丸め誤差の所為だから仕方ないと思われ。
312:308
12/01/17 22:26:17.13
> A <- matrix(c(3,2,0,3,4,1,0,2,3), 3, 3)
> B <- eigen(A)$vectors %*% diag(1/sqrt(eigen(A)$values)) %*% solve(eigen(A)$vectors)
> eigen(A)$values
[1] 6.3722813 3.0000000 0.6277187
> solve(A)
[,1] [,2] [,3]
[1,] 0.8333333 -0.75 0.5
[2,] -0.5000000 0.75 -0.5
[3,] 0.1666667 -0.25 0.5
> B %*% B
[,1] [,2] [,3]
[1,] 0.8333333 -0.75 0.5
[2,] -0.5000000 0.75 -0.5
[3,] 0.1666667 -0.25 0.5
313:132人目の素数さん
12/01/18 10:57:06.79
>>312
> A %*% B %*% B
[,1] [,2]
[1,] 1.000000e+00 0
[2,] 3.330669e-16 1
> zapsmall(A %*% B %*% B)
[,1] [,2]
[1,] 1 0
[2,] 0 1
314:308
12/01/18 12:32:51.26
>>312
おお、そんな関数があったとは。
315:308
12/01/18 12:33:01.61
>>313
おお、そんな関数があったとは。
316:308
12/01/18 22:59:15.60
>>314
おお、そんな関数があったとは。
317:308
12/01/18 22:59:44.42
>>315
おお、そんな関数があったとは。
318:308
12/01/18 23:01:26.21
>>316
おお、そんな関数があったとは。
319:308
12/01/18 23:08:57.17
>>317
おお、そんな関数があったとは。
320:308
12/01/18 23:35:40.76
>>318
おお、そんな関数があったとは。
321:308
12/01/19 08:20:42.49
>>319
おお、そんな関数があったとは。
322:308
12/01/19 08:22:06.35
>>320
おお、そんな関数があったとは。
323:308
12/01/19 08:23:29.36
>>321
おお、そんな関数があったとは。
324:132人目の素数さん
12/01/19 08:24:58.31
>>312
おお、そんな関数があったとは。
325:132人目の素数さん
12/01/19 08:25:39.88
>>313
おお、そんな関数があったとは。
326:308
12/01/19 08:26:49.60
>>322
おお、そんな関数があったとは。
327:132人目の素数さん
12/01/19 16:46:26.30
>>323
おお、そんな関数があったとは。
328:132人目の素数さん
12/01/19 18:16:15.47
>>313
おお、そんな関数があったとは。
329:308
12/01/19 19:21:49.25
>>312
おお、そんな関数があったとは。
330:132人目の素数さん
12/01/19 21:24:53.73
>>305
あと、R sourceとかね。
331:132人目の素数さん
12/01/19 21:40:30.51
>>330
おお、そんな関数があったとは。
332:132人目の素数さん
12/01/19 22:15:43.34
>>330
おお、そんなsourceがあったとは。
333:132人目の素数さん
12/01/19 22:16:42.63
>>330
おお、そんなsourceがあったとは。
334:132人目の素数さん
12/01/19 22:17:29.69
>>330
おお、そんなsourceがあったとは。
335:132人目の素数さん
12/01/19 22:18:01.01
>>330
おお、そんなsourceがあったとは。
336:132人目の素数さん
12/01/19 22:18:19.65
>>330
おお、そんなsourceがあったとは。
337:308
12/01/19 22:19:02.38
>>330
おお、そんなsourceがあったとは。
338:308
12/01/19 22:19:42.03
>>330
おお、そんなsourceがあったとは。
339:308
12/01/19 22:20:11.53
>>330
おお、そんなsourceがあったとは。
340:132人目の素数さん
12/01/19 23:14:29.36
おおそんウェールズだったとは。
341:308
12/01/20 04:32:17.58
おまえら、いい加減にしなさい。
342:132人目の素数さん
12/01/20 05:22:51.54
おまえら、いい加減にしなさい。
343:313
12/01/20 20:36:44.68
スレが伸びていると思ったら、お前ら。。。
でも、実際の話、zapsmall()を知らないで、
条件分岐における数値型の同値の比較を
どうやって今まで書いていたのだろうと不思議に思う。
344:132人目の素数さん
12/01/20 20:42:23.02
>>307
こいつ自分で質問の意味わかってのかいな?
345:132人目の素数さん
12/01/20 23:50:31.94
>>343
他の言語と同じように書いてたよ。
346:132人目の素数さん
12/01/20 23:57:15.16
>>343
abs(x-y) < 10^-14 とか
347:132人目の素数さん
12/01/23 09:35:12.79
簡単なことですが質問させてください。
10*3の配列があり,1列目と2列目,1列目と3列目の計算し,
元の配列に戻したいばあい,どのように配列指定をしてやれば良いのでしょうか?
たとえば
x <- matrix(1:30, ncol=3)
で,
4列目に
x[,1]+x[,2]
5列目に
x[,1]*x[,2]
おそらく
x <- matrix(x[,1]+x[,2], x[,1]*x[,3], ???????)
で,「???????」を指定すればいいと思うのですが,,,,
よろしくお願いします
348:132人目の素数さん
12/01/23 09:52:39.90
>>347
> cbind(x,x[,1]+x[,2],x[,1]*x[,2])
[,1] [,2] [,3] [,4] [,5]
[1,] 1 11 21 12 11
[2,] 2 12 22 14 24
[3,] 3 13 23 16 39
[4,] 4 14 24 18 56
[5,] 5 15 25 20 75
[6,] 6 16 26 22 96
[7,] 7 17 27 24 119
[8,] 8 18 28 26 144
[9,] 9 19 29 28 171
[10,] 10 20 30 30 200
こういうこと?
349:347
12/01/23 10:02:32.95
早速ありがとうございます
>348
matrix()を使わなければいけないと悩んでいた私が馬鹿でした。
matrizだと横展開にしかならず苦悩しておりました。
350:348
12/01/23 12:02:36.25
>>349
いや、cbind()かmatrix()かは好みの問題だと思うぞ。
> matrix(c(x,x[,1]+x[,2],x[,1]*x[,2]),ncol=5)
[,1] [,2] [,3] [,4] [,5]
[1,] 1 11 21 12 11
[2,] 2 12 22 14 24
[3,] 3 13 23 16 39
[4,] 4 14 24 18 56
[5,] 5 15 25 20 75
[6,] 6 16 26 22 96
[7,] 7 17 27 24 119
[8,] 8 18 28 26 144
[9,] 9 19 29 28 171
[10,] 10 20 30 30 200
351:132人目の素数さん
12/01/23 13:13:39.14
RStudio最新版(0.94.110)はR-2.14以降も動作していますか?
RStudioご利用の方いましたら、ご一報お願いします
352:132人目の素数さん
12/01/23 13:28:06.82
>>351
$ dpkg -l rstudio r-base |tail -2
ii r-base 2.14.1-1oneiric0 GNU R statistical computation and graphics system
ii rstudio 0.94.110 RStudio
問題なし。
353:132人目の素数さん
12/01/23 18:42:28.25
Rjpwikiのヲチで申し訳ないが、
河童さんが、par(mfrow=c(2,1))を使わずに、layout(matrix(1:2, 2))を使う理由って何だろう。
layout()だとなんかいいことがあるのかな?
354:308
12/01/23 21:15:31.43
うん
355:132人目の素数さん
12/01/25 18:23:35.62
スペースで区切られた文字列(数値のみ)で,空白をカウントして改行するってことRでできますか?
例えば
1 2 3 4 5 6 7 8 9 10 11 12....
を
3 2 4 ....
という空白ごとに区切って
1 2 3
4 5
6 7 8 9
10 11 12....
としたいのです。
もし可能ならこのような場合,最初の文字列を配列に組み込むべきなのか,文字列として正規表現として処理するべきなのかどちらが好ましいのでしょうか?
よろしくお願いします
356:132人目の素数さん
12/01/25 19:06:09.47
>>355
> f355 <- function(x,y){
+ s <- unlist(strsplit(x," "))
+ res <- vector()
+ j <- cumsum(y)
+ res[1] <- paste(s[1:j[1]],collapse='')
+ res[2] <- paste(s[(j[1]+1):j[2]],collapse='')
+ res[3] <- paste(s[(j[2]+1):length(s)],collapse='')
+ return(res)
+ }
>
> f355("1 2 3 4 5 6 7 8 9 10 11 12",c(3,2,4))
[1] "123" "45" "6789101112"
こんな感じか。
あとは、res[1]からres[3]のところをfor文と条件分岐で処理して、
汎用化すればよいと思う。
357:356
12/01/25 19:08:12.54
6789と101112を区切ってなかった。
> f355 <- function(x,y){
+ s <- unlist(strsplit(x," "))
+ res <- vector()
+ j <- cumsum(y)
+ res[1] <- paste(s[1:j[1]],collapse='')
+ res[2] <- paste(s[(j[1]+1):j[2]],collapse='')
+ res[3] <- paste(s[(j[2]+1):j[3]],collapse='')
+ res[4] <- paste(s[(j[3]+1):length(s)],collapse='')
+ return(res)
+ }
>
> f355("1 2 3 4 5 6 7 8 9 10 11 12",c(3,2,4))
[1] "123" "45" "6789" "101112"
358:356
12/01/25 19:36:19.47
連投すまんがcut()を使った別解。
> f355.2 <- function(x,y){
+ s <- unlist(strsplit(x," "))
+ n <- as.integer(cut(as.integer(s),c(0,cumsum(y),Inf)))
+ sapply(1:length(unique(n)),function(x){s[n==x]})
+ }
>
> f355.2("1 2 3 4 5 6 7 8 9 10 11 12",c(3,2,4))
[[1]]
[1] "1" "2" "3"
[[2]]
[1] "4" "5"
[[3]]
[1] "6" "7" "8" "9"
[[4]]
[1] "10" "11" "12"
多分、識者ならsapply()部分をもっと効率よくできる気がする。
359:132人目の素数さん
12/01/26 01:27:31.67
f355.3 <- function(x, y)
{
STR.SPLIT <- strsplit(x," ")[[1]]
## y = c(3, 5, 1) で c(1,1,1,2,2,2,2,2,3)を返す
GROUP <- inverse.rle(list(lengths = y,
values = seq_along(y)))
## 上記のGROUPにあわせてsplit()
split(x = STR.SPLIT[seq_along(GROUP)], f = GROUP)
}
## これなら数字の順番がめちゃくちゃでも、文字列でも行けるかも。spaceが続くとおかしくなるけど
f355.3(x = "2 ch R 2012 01 26 2 0 1 2 0 1 2 6 R", y = c(3, 5, 1, 2, 2))
360:355
12/01/26 07:03:57.07
>356-359
ご教授ありがとうございます。
配列に組み込んだものをループで処理することしか考えてませんでしたので,
以外な回答です。
プログラムに関しては勉強中なのですがなかなか上手くいかず悩んでおります。
ありがとうございます
361:355
12/01/26 08:28:33.03
連投申し訳ありません。
これまで統計処理に関してRを利用してきましたが,この度プログラミングもしっかり勉強したいと思うようになりました。
先にも記したようにプログラミングは初学者です。
CやPerlなど多様な言語がありますが,Rの場合どの系統のプログラミング教本で勉強を始めれば良いのでしょうか?
オススメ教科書があればよろしくお願い致します。
362:132人目の素数さん
12/01/26 10:23:38.00
>>361
>>356だけど、正統なプログラミングの勉強をしたことがない。
プログラミングの勉強って、語学の勉強と似ていると思う。
一通り、文法を勉強したら、あとはひたすら経験を積むだけ。
人の表現を聞いて、あぁこういう場面ではこういう風に言えばいいのか、
と人まねを積み重ねる。
一通りの文法レベルの話なら、私はまだ未読だけど、
間瀬先生のRプログラミングマニュアルはどうかな。
間瀬先生の本なら、間違いはないと思う。
>>359
おぉ素晴らしい。rle()の存在を失念していました。
363:359
12/01/26 11:44:04.18
統計解析に持っていくためのデータの準備ということであれば
Rデータ自由自在(Data Manipulation with R)がおすすめ。
Rプログラミングマニュアル(間瀬)は辞書的な感じ。
Rの基礎とプログラミング技法(石田訳)、プログラミングR(高階)は読み物的な感じ。
レイアウト的に後者の方が読みやすいか。
海外では最近出たThe Art of R Programmingがよいとされている様子。
364:132人目の素数さん
12/01/27 14:53:34.00
あるベクトルの,p番目からq番目までの和を求める関数ってある?
365:364
12/01/27 15:34:02.11
基本的な物を見落としておりますた。
すみません
366:132人目の素数さん
12/01/28 12:45:02.86
>>364
sum(vector.name[p:q])
が一番普通か
367:132人目の素数さん
12/01/30 00:42:00.17
コンタープロットで、データがマトリクスになっている場合はいいのですが
(x,y,z)=
(0,0,0)
(1,1,2)
(3,2,4)
(0,9,2)
(2,0,4)
みたいに不規則な点列で構成された場合のコンタープロットを作成することは
出来ませんでしょうか?
Zの値を0~1に正規化して、(x,y)の位置にgray(z)で塗りつぶした円を二次元プロットする
っていう手法でそれらしいものを作ってはみたものの、やっぱりイマイチなのでw
368:132人目の素数さん
12/01/30 11:00:34.81
>>367
ぱっと思いつくのは、グリッドを作成して、(x,y,z)の値から、スプラインやkrigingなど
空間平滑法で各グリッド点における値を推定し、それで等値線を描く。
369:名無しさん
12/01/30 21:51:46.12
>>368
krigingでググると
URLリンク(web.sfc.keio.ac.jp)
っていうのが見つかりました。
ちょっとやってみます。どもでした。
370:名無しさん
12/01/30 23:07:03.68
フジテレビ式円グラフはどうやって作ればよいのでしょうか?
URLリンク(blog.livedoor.jp)
自分にはこんなのが精一杯でした...
library(ggplot2)
DF <- data.frame(age=c("10~20代", "30代","40代","50代"), value=c(97,78,78,94))
ggplot(DF, aes(x=age, y=value, fill = age)) +
geom_bar(width = 1) +
scale_y_continuous(breaks = 0:100) +
coord_polar() +
labs(x = "", y = "") +
opts(legend.position = "none", axis.text.y = theme_blank(),axis.ticks = theme_blank())
371:名無しさん
12/01/30 23:16:40.05
>>370
また奥村先生がアップをはじめそうなグラフが出てきたな。
372:名無しさん
12/01/31 00:39:21.68
中心をずらすって言うのはグラフ的にあり得ないからグラフのパッケージでは無理だと思う。
できるとしたら地図関係のパッケージだろうね。
373:名無しさん
12/01/31 10:47:16.46
>>369
こんな感じじゃないの
i <- (1:360)/360*2*pi
cntr <- c(0.1,0.3)
v <- c(94,78,78,97)
arc <- cut(1:360,c(0,round(cumsum(v)*360/sum(v)),Inf))
plot(cos(i),sin(i),type="n",asp=1,axes=FALSE,xlab="",ylab="")
l <- levels(arc)
cols <- c("deepskyblue","dodgerblue1","dodgerblue3","brown1")
lbs <- c("50代\n94人","40代\n78人","30代\n78人","10~20代\n97人")
cexs <- c(1.5,1.5,1.5,3)
for (j in 1:4){
k <- c(i[arc==l[j]],max(i[arc==l[j]])+1/360*2*pi)
polygon(c(cntr[1],cos(k)),c(cntr[2],sin(k)),
col=cols[j])
text(mean(cos(k))/1.5,mean(sin(k))/1.5,lbs[j],cex=cexs[j])
}
374:名無しさん
12/01/31 12:12:08.71
>>370
ウジのグラフは、センターがずれてるだけじゃなくて「弧の長さの割合」も意図的に変えてるから、完全再現は無理みたいよw
参考 URLリンク(blog.kzfmix.com)
そもそも、あんなおぞましいグラフを好んで描く必要ないと思うけど、こんなんでどう?
library(grid)
quartz(height=4, width=4)
#png(filename = "fuji-pie.png", width = 360, height = 360, units = "px")
num <- c(94, 97, 78, 78)
distortion <- c(1, 1.2, 1, 1) # <- !!
dist_num <- num * distortion
cum <- c(0, cumsum(dist_num))
rad <- cum / sum(dist_num) * 360 / 180 * pi
colors <- c("#0000FFAA", "#FF0000AA", "#000055AA", "#0000AAAA")
labels <- paste(c("50ies¥n", "10~20ies¥n", "30ies¥n", "40ies¥n"), num, " ps", sep="")
lab_cex <- c(1, 1.5, 1, 1)
lab_col <- c("white", "yellow", "white", "white")
div <- 200 # 円弧部分の分割数
dx <- 0 # 半径=0.5 として、x 方向への中心のズレ (-0.1 とかにすると、より強烈w)
dy <- 0.1 # 半径=0.5 として、y 方向への中心のズレ
for (i in 1:length(num)) {
x <- c(0.5 + dx, 0.5 + 0.5 * sin(rad[i]), 0.5 + 0.5 * sin(seq(rad[i], rad[i+1], length.out=div)), 0.5 + 0.5 * sin(rad[i+1]))
y <- c(0.5 + dy, 0.5 + 0.5 * cos(rad[i]), 0.5 + 0.5 * cos(seq(rad[i], rad[i+1], length.out=div)), 0.5 + 0.5 * cos(rad[i+1]))
grid.polygon(x=x, y=y, gp=gpar(fill=colors[i]))
grid.text(x=0.5 + 0.4 * sin((rad[i]+rad[i+1])/2), y=0.5 + 0.4 * cos((rad[i]+rad[i+1])/2), label=labels[i], gp=gpar(col=lab_col[i], cex=lab_cex[i]))
}
#dev.off()
RjpWikiにも置いときました。
URLリンク(www.okada.jp.org)
375:名無しさん
12/01/31 12:41:24.02
>>373-374
すげー
これフジテレビに売り込みにいけよwww
376:373
12/01/31 14:45:06.35
私の方もRjpwikiに追加しておきました。
>>374さんは河童さんかと一瞬思ったけど、
そういえば河童さんはgridが嫌いだったから、別な人ですね。
377:375
12/01/31 23:04:16.60
もちろん、河童さんの足下にも及ばない半素人です
裏Wikiの方でも、がっつりとダメ出しされましたw
でも「裏」氏のファンなので、ちょっと嬉しかったりもしますw
378:374
12/01/31 23:16:34.60
↑で、名前間違えてた...orz
379:名無しさん
12/01/31 23:52:13.20
まさに誰得関数!
380:132人目の素数さん
12/02/02 15:19:45.32
知恵を貸してください。
0~6ぐらいまでの整数を要素にもつサイズが50のベクトルを作りたい。
できればポアソン分布に従って。
ここまでなら、
> rpois(50,2.5)
[1] 1 1 1 4 4 3 0 3 3 3 0 1 1 0 4 5 2 2 2 2 4 0 4 4 2 1 3 1 1 3 3 2 1 1 3 4 3 3
[39] 3 3 4 1 1 1 5 5 1 0 3 6
こんな感じでできるんだけど、このベクトルの合計をきっちり150にしたい。
固定したいのは、ベクトルサイズ50とベクトル合計値150だけで、lambdaとかは適当でいい。
当たり前だけど、合計値は変動する。
> sum(rpois(50,2.5))
[1] 132
> sum(rpois(50,2.5))
[1] 131
> sum(rpois(50,2.5))
[1] 118
こういうときはどうすればいいんだろうか。
よろしくお願いします。
381:132人目の素数さん
12/02/02 16:52:09.32
>>380
無理やりの処理だが、こんなんじゃ駄目?
mypois <- function(n=50,sum=150,adjtimes=10){
myvec <- rep(0,times=n)
mysum <- 0
for(i in 1:adjtimes){
mysum <- sum(myvec)
myvec <- myvec + sign(sum-mysum)*rpois(n,abs(sum-mysum)/n)
myvec[myvec < 0] <- 0
if( abs(sum-mysum) == 0 ){ break }
}
return(myvec)
}
> x <- mypois(50,150)
> x
[1] 3 2 3 2 5 3 4 5 4 0 1 1 5 4 6 3 5 5 0 4 4 3 4 5 4 7 1 4 1 2 1 2 3 2 1 3 7 2
[39] 0 2 2 3 0 1 3 6 3 4 2 3
> sum(x)
[1] 150
382:381
12/02/02 17:00:53.33
0から6になってなかったのと、計算の順番がおかしかったので修正した。
mypois <- function(n=50,sum=150,max=6,adjtimes=10){
myvec <- rep(0,times=n)
mysum <- 0
for(i in 1:adjtimes){
myvec <- myvec + sign(sum-mysum)*rpois(n,abs(sum-mysum)/n)
myvec[myvec < 0] <- 0
myvec[myvec > max] <- max
mysum <- sum(myvec)
if( abs(sum-mysum) == 0 ){ break }
}
return(myvec)
}
> x <- mypois(50,150,6)
> x
[1] 1 6 1 0 5 3 5 1 2 6 3 3 6 3 3 3 3 3 1 4 2 3 3 0 5 4 3 6 3 5 2 4 4 0 2 1 3 3
[39] 2 4 0 2 1 3 6 4 4 2 1 6
> sum(x)
[1] 150
383:381
12/02/02 17:33:39.03
青木先生のところの poissondist に嵌めたら、今一つなのは、
0~6からはみ出たデータを丸めたからかな。上手い方法がないものかねぇ。
> x <- mypois(50,150,6)
> x
[1] 5 2 1 3 4 4 3 4 3 0 5 5 3 3 1 2 4 4 4 2 5 0 3 4 2 2 3 4 4 1 6 1 1 5 4 4 2 4
[39] 2 5 1 3 2 0 5 2 5 4 1 3
> poissondist(hist(x,plot=F)$counts)
ポアソン分布への適合度の検定
data: hist(x, plot = F)$counts
X-squared = 9.7821, df = 4, p-value = 0.04426
sample estimates:
n lambda
50.00 2.06
384:132人目の素数さん
12/02/02 18:40:11.25
>>381-383
おぉ、十分です。最大は「6ぐらい」なので7とかでもOKですから、
丸めはマイナスになるときだけ必要です。
for文のところはとても勉強になりました。
ありがとうございました。
385:132人目の素数さん
12/02/06 23:36:20.10
こんばんはR初心者です。
一通り調べたのですが、分からない事があるので質問させてください。
○行ごとのplotを行いたい場合、どのようなコマンドを打てば良いのでしょうか?
例えば、
y1 y2...y10
x1
x2
.
.
.
x100
このような100行×10列のデータフレーム名Xの2列目と4列目をplotしたい場合、
plot(X$y2,X$y4)で1行ごとのplotは出来るのですが、
これをx1,x5,...x100と5行おきにplotしたいのです。
どうかご教授ください。
386:132人目の素数さん
12/02/07 00:25:49.86
>>385
X1 <- X[(0:20)*5+2, ]
387:132人目の素数さん
12/02/07 08:46:05.39
>>385
>このような100行×10列のデータフレーム名Xの2列目と4列目をplotしたい場合、
>plot(X$y2,X$y4)で1行ごとのplotは出来るのですが、
>これをx1,x5,...x100と5行おきにplotしたいのです。
plot(X[seq(1, 100, 5), c(2, 4)])
でどう?
[行番号, 列番号]
で要素を指定
seq(from, to, by)で1,6,11.16...,100をつくる
388:132人目の素数さん
12/02/07 22:43:27.83
>>385
1,5,...,100 は、最初だけ4行の間隔ですね。
5,10,15,...,100 、あるいは、1,6,11,...,96 ですか?
でしたら、私のお薦めも >>387 と同じ方法。
389:132人目の素数さん
12/02/08 13:38:50.77
Emacs ESS でアンダースコアが" <- "になってしまうのが凄く迷惑なんだけど
なんであれがデフォルトなんだろう
390:132人目の素数さん
12/02/08 17:34:58.86
タイプ量減るしいいじゃん。
391:132人目の素数さん
12/02/08 20:31:18.89
>>389
アンダースコア2度打ちで、アンダースコアを入力できるというのを
知った上で迷惑と行っているのだろうね。
そもそもRではアンダースコアは使用禁止だったので、
空いているアンダースコアにその機能が割り当てられたという歴史的経緯がある。
デフォルトの理由は、>>390の言うとおり便利で楽だかから。
いやな人は設定を変更すればいいし。
逆にターミナルでRを使っていて、<-のつもりでアンダースコアを入力して
イラッと来ることがある。
392:132人目の素数さん
12/02/08 22:46:01.26
>>391
設定変えるためにググってたらrjpに飛んで、そこで初めて二度打ちやC-q _ でアンダースコアを入力できることを知った
アンダースコアを打つためにわざわざテキストモードに変更してた
よく調べもしないで愚痴言ってすいません
393:132人目の素数さん
12/02/13 12:25:46.70
emacs essでRコマンダー使うとRコマンダーで外部データを読み込ませた瞬間固まるorz
うまくいってるかたいますか?
394:393
12/02/13 14:44:06.36
すいません自己解決?しました。
emacsのR側で一行でも改行がコマンドを実行すればコマンダー側のフリーズが直りました。
フリーズ自体は何台かのPCで試したところ起こる場合と起こらない場合がありました。
環境に依存するようです。
395:132人目の素数さん
12/02/13 22:00:37.21
>>393,394
emacs ess で Rコマンダーを使うメリットって、何?
利点がまったく分からないのだけど。
396:393
12/02/14 00:04:31.33
>>395
ご指摘のとおりで。
研究仲間がコマンダー使ってて、両方同時に使えると便利だから試しました。
まぁそうじゃなくても使えないよりは使えたほうが少しくらい便利かなと、、、
397:132人目の素数さん
12/02/15 23:54:50.83
Rにはschemeなんかのfoldにあたるような高階関数はないんですか?
せっかくベクトル演算言語なので数え上げも高階関数で出来ればと思ったんですが。
398:132人目の素数さん
12/02/16 09:49:58.30
>>397
URLリンク(stat.ethz.ch)
プログラミング言語はよくわからないけど、これは参考になるだろうか?
399:132人目の素数さん
12/02/16 09:57:29.11
>>398
たぶん Reduce()がfoldに相当するんじゃね
400:397
12/02/16 16:23:10.40
>>398>>399
それです
ありがとうございます
401:398
12/02/16 16:52:41.50
>>400
いまいちイメージがわかないんだけど、面白い使い方があったら、教えてくだされ
402:132人目の素数さん
12/02/17 05:50:16.64
lmによる回帰分析で、切片をあらかじめ固定することはできますか?
切片を取り除くには「-1」を指定するということはわかりますが、ここを好きな値に固定したいのですが・・・
403:132人目の素数さん
12/02/17 13:00:44.62
>>402
URLリンク(r.789695.n4.nabble.com)
404:397
12/02/17 19:52:56.72
>>401
おもしろいかどうかわかりませんが、
data <- as.integer(runif(10,1,21))
のようなデータがある時に、
predicate <- function(x) { x < 5 }
が真になるような項目を数え上げたいとします。
for文を使うと
ret <- 0
for(i in 1:length(data)){ if (predicate(data[i])) { ret <- ret + 1 } }
のような形になりますが、高階関数を使うと、
length(Filter(predicate, data))
と書けるようになります。
これは関数プログラミングの技法で、もう少し詳しく学びたいようでしたら
programming in haskellなんかが薄くていい本なんじゃないかと思います。
405:132人目の素数さん
12/02/17 20:15:30.11
>>404
>>401じゃなくて申し訳ないが、
> length(Filter(predicate, data))
[1] 4
> sum(data<5)
[1] 4
この場合だと下の方が簡単。しかも、
> system.time(sapply(1:1000, function(x){length(Filter(predicate, data))}))
ユーザ システム 経過
0.072 0.000 0.074
> system.time(sapply(1:1000, function(x){sum(data<5)}))
ユーザ システム 経過
0.000 0.000 0.002
圧倒的に速い。
406:405
12/02/17 20:17:05.57
s/下の方が/後者の方が/
407:132人目の素数さん
12/02/17 22:46:29.44
>>404
「おぉ高階関数はこれほどまでに便利なものかと実感できる事例」を期待している。
408:132人目の素数さん
12/02/18 05:48:26.33
rubyで高階関数組み合わせてやってたけど
Rに移ってtapplyとかmapplyが便利すぎて禿げた
409:132人目の素数さん
12/02/18 06:05:41.05
>>404
Filter()の例は
length(data[data < 5])
みたいなもんか
410:397
12/02/18 11:40:22.15
>>405
なるほど、そんな書き方が出来るんですか
だとしたらそちらの方がよさそうです
速度はおそらく最適化の問題でしょう
下の方がRネイティブっぽいので十分な最適化が行われているんだとおもいます
411:397
12/02/18 12:01:56.66
>>407
事例はちょっと思いつかないんですが
高階関数はプログラムの中の構造を関数として再利用するためのものです
その点では>>404はあまりいい例ではなくて、
ret<-0
for(i in 1:length(data)){if(predicate(data[i])){ret<-ret+1}else{ret}}
について高階関数を利用する例だとすると、
Reduce(function(ret, x){if(predicate(x)){ret+1}else{ret}},data,0)
になります。これは外側のループの部分の構造をReduceという関数で再利用していると言う形になります
でもどうやらこの手の単純な高階関数はベクトル計算という形でRに組み込まれているようなので
あまり出番はなさそうですね
412:132人目の素数さん
12/02/19 03:55:37.05
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
413:132人目の素数さん
12/02/19 08:58:51.23
教えてください。
Epiパッケージを使用して、ROC曲線下面積を求めたら0.5未満になりました。
独立変数は二分変数に関係しないと判断しその値(0.425)を記載することは正しいのでしょうか?
414:132人目の素数さん
12/02/19 17:00:59.94
アウトカムの変数は予測因子の数字が大きくなると大きくなると陽性になりますか?もし数が大きい方がアウトカムが陰性ならば、アウトカムの1,0をひっくり返す必要があるかも?
415:132人目の素数さん
12/02/19 23:14:01.45
>>414
ありがとうございます。
明日にでも、いれかえて検討してみます。
416:132人目の素数さん
12/02/29 23:39:27.42
応答曲面法で最適値を求めるっていうのは出来ないのか?
パッケージrsmがそれっぽいんだが
417:132人目の素数さん
12/03/01 23:08:27.13
>>416
なんていうか、もろに、rsm() がそうなんだが?
使い方は
URLリンク(www.jstatsoft.org)
をみてくれ
418:132人目の素数さん
12/03/03 12:45:30.73
Rを2.14.2にしたいんですが、インストールして再起動すると確かに2.14.2にはなるんですが、保存していたオブジェクトが全て消えてしまいます
オブジェクトを引き継ぐ方法はないんでしょうか?
今は2.13.1を使ってます
419:132人目の素数さん
12/03/03 16:40:03.10
save(list = ls(all=TRUE), file = "old.RData")
で明示的に保存ファイルを作って、
それを新バージョンで
load(file = "old.RData")
したらどうなる?
420:132人目の素数さん
12/03/04 18:26:31.31
マルチコア対応しましたか~??
421:132人目の素数さん
12/03/04 19:53:40.43
parallelというパッケージができたね
422:132人目の素数さん
12/03/04 20:21:12.91
>>420
ググると、gotoBLASをマルチコア向けにコンパイルしてRで利用する話が、
詳しく解説されている。
調子に乗ってcuBLASに差し替えられないかと考え、
プログラム板のcudaスレに行ったことがあるが、
あそこの住人はnvccを使わない人間をバカだと考えているみたいだ。
423:420
12/03/04 22:56:21.28
>>421 >>422
良い情報をありがとうございます。
調べてみます。
シングルスレッド性能でのCPU探しも終わりにしたいですw
424:132人目の素数さん
12/03/04 23:06:08.66
今なら分散処理じゃ無いかな。IT系のWebサイトじゃあ hadoop とか流行ってるし、
解きたい課題を Map-Reduce に落とし込めればRでの分散処理も可能かと。
425:132人目の素数さん
12/03/08 19:59:09.03
URLリンク(cran.r-project.org)
preciseはまだまだ来ないね。
426:132人目の素数さん
12/03/11 23:35:42.80
R初心者でpolr関数を使って解析しているのですが、
P値の出し方がわかりません。
お分かりになる方いらっしゃいましたら教えて頂けないでしょうか。
詳細な情報が必要であれば補足します。
427:132人目の素数さん
12/03/12 16:16:16.41
URLリンク(stats.stackexchange.com)
の二番目の最後のところをみると、正確にはもとまらないから、計算されないようになっている、ということのように思いました。
428:132人目の素数さん
12/03/13 00:08:39.50
URLリンク(www.r-project.org)
R 2.15.0 prerelease versions are currently available. Final release is scheduled for March 30.
429:132人目の素数さん
12/03/15 07:30:22.52
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
430:132人目の素数さん
12/03/20 20:20:19.86
Rを使ってる最中(emacs+ess)
作ったオブジェクトの数が多くなって、ls()で変数名を見ても、
思い出せない。
こういう状況に対処するにはどうしたら良い?
新しい環境を用意して、そちらに移す?(assignを使って、.GlobalEnvのものを消す?)
それとも、特定のファイルに保存する?(複数個のオブジェクトを1ファイルに保存できる?)
よい方法などがあれば、教えて。
あと、
emacs+essを使ってるけど、lispとかは分からんので、
emacsの機能での解決方法を示されても反応できないかも。
その時は、ごめんなさい。
431:430
12/03/20 20:22:30.66
言葉不足だったので、訂正します。
>>assignを使って、.GlobalEnvのものを消す?
assignを使って別の環境にデータを入れて、.GlobalEnvの方は消す?
432:430
12/03/20 20:28:40.90
>>419
でファイルに保存する方法があったね。見てなかった。
save(list=c("オブジェクト名1","オブジェクト名2"),file="a_path")
とかでもいいのか。でも、なんか面倒だな。
433:132人目の素数さん
12/03/20 21:37:25.25
>>430
変数名を見ても思い出せない命名法に問題がありそうだけど
あと俺は使っていないけどcomment()を上手に使うとか。
434:430
12/03/21 00:50:48.76
>>433
こんな感じ?
tmp <- sapply(ls(), function(x)comment(eval(parse(text=x))))
tmp[sapply(tmp,is.null)] <- NULL
tmp
これを関数にしておいて、呼び出せば良いかな?
あとは、commentに自動的に参照or作成時間を入れておくとかかな。
どうやったらできるか分からないけど。
435:132人目の素数さん
12/03/22 22:37:07.40
スクリプトをファイルに書き出して基本的にはバッチモードでRを動作させております。
その場合のエラーハンドリングってどうしてますか?
stop関数で停止はするのですが、
どの関数のどの行数で停止したかなどがいまいちわかりづらいときがあります。
引数で与えるコメントを変えればいいのでしょうが、いちいち面倒なので。。。
例えばCだと
printf("%s %s\n", __FILE__, __LINE__);
なんかで対応できるんですが。。
いい方法ありますか?
436:132人目の素数さん
12/03/26 13:16:29.99
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
437:132人目の素数さん
12/03/26 17:52:13.93
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
438:132人目の素数さん
12/03/27 00:36:36.55
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
439:132人目の素数さん
12/03/27 12:48:45.92
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
440:132人目の素数さん
12/03/27 20:00:22.88
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
441:132人目の素数さん
12/03/27 23:36:28.28
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
442:132人目の素数さん
12/03/29 01:36:02.65
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
443:132人目の素数さん
12/03/30 22:40:29.56
R 2.15.0 is released
URLリンク(www.r-bloggers.com)
444:132人目の素数さん
12/04/03 21:15:56.45
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
445:132人目の素数さん
12/04/06 18:58:58.10
チラ裏
Meadow 2.10(Emacs 21.4.1) + R 2.15.0 で、
ESS 5.14 → ESS 12.04 にしてみたら、
symbol's function definition is void と言われてしまい、
元に戻した今日の夕暮れ。
446:132人目の素数さん
12/04/10 15:45:27.97
URLリンク(cran.r-project.org)
Preciseはまだ来ないね。4月26日以降になるのかな
447:132人目の素数さん
12/04/14 11:43:41.70
R2.15.0 って、なんか目玉機能あります?
448:132人目の素数さん
12/04/20 23:36:06.27
ソースコードが1つのファイルで2万行ぐらいになってしまったので
複数のファイルに分割したいのですがやり方がわかりません。
助けてください
449:132人目の素数さん
12/04/20 23:38:20.91
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
450:132人目の素数さん
12/04/21 07:52:14.18
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
451:132人目の素数さん
12/04/21 09:49:45.56
>>448
2万行って何それ、すごい。
そんなにRの専門家なのに、そんなことを悩むとはw
source()を使って階層的にしたら駄目なの?
452:132人目の素数さん
12/04/21 16:42:07.10
>>448
むしろ、何の処理をさせたら、2万行になるのか知りたい。
453:132人目の素数さん
12/04/21 17:49:35.34
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
454:132人目の素数さん
12/04/21 18:59:03.29
>>448
縦書きか
455:132人目の素数さん
12/04/24 07:20:26.82
SUBSTR<- function(X,S,E){
if(length(unique(nchar(X)))>1)stop("warning")
if(unique(nchar(X))<max(S,E)|min(S,E)<=0)stop("warning")
temp<-t(sapply(X,function(X){mapply(substr,X,start=S,stop=E)}))
dimnames(temp)<-NULL
temp
}
456:132人目の素数さん
12/04/24 07:25:35.41
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
457:132人目の素数さん
12/04/24 10:40:39.43
>>455
突然どうしたの?
オレならecho X | cut -cS-Eをsystem()でやっちゃうな。
458:132人目の素数さん
12/04/24 12:16:39.44
barplotの質問です URLリンク(cran.md.tsukuba.ac.jp) を使っています。
100個の文字列(labels)と数値(num)を棒グラフに書き出したいのですが
barplot(num, names.arg=labels)
いざ書き出すと文字列名がすべて表示されません
理想的にはURLリンク(commons.wikimedia.org)(alphabetic).svg
このように数値と文字列をすべて表示させたいのですが、どうすればよいでしょうか。
また、numでソートした棒グラフとlabelsでソートした棒グラフをそれぞれ作成するには
どうすればいいでしょうか。
他のプログラミングでいうとろこの、
ハッシュ構造に文字列と数値を格納してキーと値でそれぞれソートするという手順がよく分かりません。
459:132人目の素数さん
12/04/24 12:32:11.32
>>458
グラフのサイズを多きすくすれば細かい文字も入るよ。
> pdf(file="test.pdf",width=50,height=10)
> barplot(round(runif(100),1),names.arg=sapply(1:100,function(x){sample(LETTERS,1)}))
> dev.off()
ソートは次の例を参考にしてくれ。
> (a <- data.frame(v=round(rnorm(5),1),n=sample(LETTERS,5)))
v n
1 -0.1 F
2 -0.4 W
3 1.6 M
4 -0.2 R
5 -0.5 V
> a[order(a$v),]
v n
5 -0.5 V
2 -0.4 W
4 -0.2 R
1 -0.1 F
3 1.6 M
> a[order(a$n),]
v n
1 -0.1 F
3 1.6 M
4 -0.2 R
5 -0.5 V
2 -0.4 W
460:459
12/04/24 12:37:45.20
>>459の
barplot()は
> barplot(round(runif(100),1),names.arg=sample(LETTERS,100,replace=TRUE))
に差し替え。最初はアルファベット2文字で書こうとしたのでsapply()が入った。
461:132人目の素数さん
12/04/24 22:47:48.17
__ノ)-'´ ̄ ̄`ー- 、_
, '´ _. -‐'''"二ニニ=-`ヽ、
/ /:::::; -‐''" `ーノ
/ /:::::/ \
/ /::::::/ | | | |
| |:::::/ / | | | | | |
| |::/ / / | | || | | ,ハ .| ,ハ|
| |/ / / /| ,ハノ| /|ノレ,ニ|ル'
| | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。
. | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。
| l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。
| ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて
| /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。
| (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は?
| / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら?
| |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \
. | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \
| /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 |
| |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、
| |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄|
| /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_|
| |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/
| /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
462:132人目の素数さん
12/04/24 23:01:21.57
>>459-460
ありがとうございます。ばっちりできました。
463:132人目の素数さん
12/04/24 23:52:37.90
URLリンク(www.is.titech.ac.jp)
R の公式マニュアル5種類の和訳
このサイトが見れないです
464:459
12/04/25 00:40:38.22
>>463
10年以上前の情報だぞ。
書店で最新の本を買えよ
465:132人目の素数さん
12/04/25 00:59:05.13
>>464
他にマニュアルの和訳したサイトってないんですか?
466:132人目の素数さん
12/04/25 14:04:32.25
>>465
私の知る限りない。
現状では、マニュアルを読む気概がある人=英語でも大丈夫、という空気になっていて、
初心者や英語が苦手な人は、マニュアルを咀嚼した和書を購入すると思う。
467:132人目の素数さん
12/04/25 21:29:19.12
>>466
ありがとうございます