1 名前:132人目の素数さん mailto:sage [2011/01/09(日) 17:31:49 ] R は統計計算とグラフィックスのための言語・環境です。 統計計算で重宝するデータ型や、複数要素を処理する演算や関数、 解析結果を表示するグラフィックなど、多彩な機能を提供します。 ●関連サイト The R Project www.r-project.org/ RjpWiki www.okada.jp.org/RWiki/ リンク集 www.okada.jp.org/RWiki/?%A5%EA%A5%F3%A5%AF%BD%B8
577 名前:132人目の素数さん mailto:sage [2012/06/28(木) 16:25:13.46 ] >>576 サンクス! CRAN関連ばかり探していたから引っかからなかった訳だ。 ダウンロードして見たが、CRANじゃないのでインストール方法が判らん。 初心者なんでもうちょっと勉強してみる。
578 名前:132人目の素数さん mailto:sage [2012/06/28(木) 16:40:01.10 ] >>577 $ sudo R CMD INSTALL Rcompression_0.93-2.tar.gz ROpenOffice_0.4-0.tar.gz でOK。 Rcompressionがない状態でROpenOfficeをインストールしようとすると、 $ sudo R CMD INSTALL ROpenOffice_0.4-0.tar.gz * installing to library ‘/usr/local/lib/R/site-library’ ERROR: dependency ‘Rcompression’ is not available for package ‘ROpenOffice’ * removing ‘/usr/local/lib/R/site-library/ROpenOffice’ とおこられちゃう。 Windowsで R CMD INSTALLを使う場合は、 別途Windows toolsetが必要らしい。 ttp://cran.r-project.org/doc/manuals/R-admin.html#The-Windows-toolset
579 名前:132人目の素数さん mailto:sage [2012/06/28(木) 17:39:04.25 ] >>578 重ね重ね丁寧に答えていただき、有難うございます!
580 名前:132人目の素数さん [2012/07/02(月) 23:44:45.34 ] __ノ)-'´ ̄ ̄`ー- 、_ , '´ _. -‐'''"二ニニ=-`ヽ、 / /:::::; -‐''" `ーノ / /:::::/ \ / /::::::/ | | | | | |:::::/ / | | | | | | | |::/ / / | | || | | ,ハ .| ,ハ| | |/ / / /| ,ハノ| /|ノレ,ニ|ル' | | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。 . | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。 | l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。 | ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて | /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。 | (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は? | / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら? | |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \ . | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \ | /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 | | |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、 | |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄| | /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_| | |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/ | /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
581 名前:575 mailto:sage [2012/07/04(水) 19:45:39.22 ] Window toolsetがイマイチ判らず、ROpenOffice試せずにいたのですが、 Googleドキュメントのspreadsheetで read.csv("URL") から直接データーを 取り込めることを知り、色々試しているところです。 現時点では、spreadsheetのセル内に日本語使用すると、read.csv 失敗します。 英文字のみであれば、問題なく取り込めています。 バージョンの新しRだど2byte文字処理で不具合出るという話もあったので、 現状では出来るだけ日本語使用しないほうが良いみたいですね。 それから、Google spreadsheet をcsv形式でダウンロードしたファイルは、 Shift-JISにデコードし直さないと read.csv で取り込めませんでした。 UTF-8形式だったから読み込めなかったのかなあ。 まあそれでも Google spreadsheet が使えることが判ったので、 データー入力ツールはこれでいくことにします。
582 名前:132人目の素数さん mailto:sage [2012/07/05(木) 09:17:17.75 ] >>581 ヘルプぐらい読んでもよいと思うよ。 fileEncoding: character string: if non-empty declares the encoding used on a file (not a connection) so the character data can be re-encoded. See the ‘Encoding’ section of the help for ‘file’, the ‘R Data Import/Export Manual’ and ‘Note’. encoding: encoding to be assumed for input strings. It is used to mark character strings as known to be in Latin-1 or UTF-8 (see ‘Encoding’): it is not used to re-encode the input, but allows R to handle encoded strings in their native encoding (if one of those two). See ‘Value’.
583 名前:575 mailto:sage [2012/07/05(木) 19:39:30.67 ] >>582 サンクスです! help読んでなかった・・・・ read.casv("file name", encording="UTF-8")で無事読み込めました。 これでだいぶ助かります。
584 名前:132人目の素数さん mailto:sage [2012/07/11(水) 12:33:21.72 ] ttp://www.facebook.com/tadashi.nagao てっきり高校生か未熟な大学生と思っていたら、 案外おっさんだったw 老けて見えるだけかな。 何にせよ、某所には、公共性の高いものだけに絞って書き込んで、 それ以外は、ここ(2ch)に書き込んで欲しいぞ。 c(letters[1:26])とか、初心者や入門者を混乱させることを目的とした 嫌がらせとしか思えないぞ。
585 名前:132人目の素数さん [2012/07/20(金) 12:52:33.55 ] Mac OSX, Cocoa 環境でアプリ内から/Library/Frameworks/R.framework/Resources/にある実行ファイルを叩いてRを使っています。 [ NSTask launch... ] といった感じです。 しかし、スクリプトの末尾にq()を付けてもRの実行ファイルが動いたままになります(アクティビティモニタで確認)。 NSTask のterminateを呼び出しても消えてくれません。 どうもこれが悪さをして意図した動作をしてくれ内容です。 対処方法ご存知のかたがいましたらご回答をお願いします。
586 名前:132人目の素数さん mailto:sage [2012/07/20(金) 13:15:11.45 ] >>585 q()の引数saveを省略すると"ask"になるのでは? ヘルプには | The default is to ask in interactive use but may be overridden by | command-line arguments (which must be supplied in non-interactive | use). って書いてある。 つまり、実験せずに書くが、q()と書いても、入力待ちプロンプトで無限ループになってる気がするぞ。
587 名前:132人目の素数さん [2012/07/20(金) 13:52:36.69 ] >>585 q("no") とすれば、入力待ちにならないのでは?
588 名前:132人目の素数さん mailto:sage [2012/07/20(金) 14:00:19.17 ] レスありがとうございます。 q()の引数にnoを追加しましたが、依然挙動不審です。 どうもコマンド引数に < script.r と指定したスクリプトを読み込めない場合があるようです。 なんこれ? な状況ですが。 最小単位の構成から実験してみます。
589 名前:132人目の素数さん mailto:sage [2012/07/20(金) 14:05:39.29 ] >>585 いずれにせよ、q("no")やq("yes")は関係ない。 それらがなくても処理は終了する。 $ echo 'a <- 1' > /tmp/tmp.R $ echo 'print(a)' >> /tmp/tmp.R $ /Library/Frameworks/R.framework/Resources/R CMD BATCH /tmp/tmp.R out.txt $ tail -7 out.txt > a <- 1 > print(a) [1] 1 > > proc.time() ユーザ システム 経過 0.825 0.051 1.074 ちゃんと終了する。
590 名前:589 mailto:sage [2012/07/20(金) 14:09:30.38 ] あと、 $ ls -l $(which R) lrwxr-xr-x 1 root wheel 47 4 27 16:45 /usr/bin/R -> /Library/Frameworks/R.framework/Resources/bin/R だから、普通に $ R CMD BATCH スクリプト 結果ファイル でいいよ。
591 名前:馬鹿を焼く描写 ◆ghclfYsc82 mailto:age [2012/07/22(日) 16:58:54.77 ] ★★★学歴格差:無意味 ★★★学力格差:尊重しろ ★★★能力格差:最大限利用せよ。 東大や京大にだって馬鹿は沢山居てるんだヨ。 学力格差と能力格差を認める理想社会を実現しろや。要するに: ★★★『馬鹿は無意味なので不必要だから、従って無能は静かにせよ。』★★★ っちゅうこっちゃ。低脳が騒ぐのはワシが許さんのや。 ちゃんと読め。 描
592 名前:132人目の素数さん mailto:sage [2012/07/26(木) 09:47:52.47 ] 行列の作り方について質問です xという1×n個の配列があって、 yという行列の要素を y[i][j] = x[i]+x[j]としたいとき、 y行列を作る文はどのようにしたら良いのでしょうか
593 名前:132人目の素数さん mailto:sage [2012/07/26(木) 10:44:18.59 ] >>592 > n <- 10 > x <- 1:n + 10 > x [1] 11 12 13 14 15 16 17 18 19 20 > outer(x, x, "+") [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [1,] 22 23 24 25 26 27 28 29 30 31 [2,] 23 24 25 26 27 28 29 30 31 32 [3,] 24 25 26 27 28 29 30 31 32 33 [4,] 25 26 27 28 29 30 31 32 33 34 [5,] 26 27 28 29 30 31 32 33 34 35 [6,] 27 28 29 30 31 32 33 34 35 36 [7,] 28 29 30 31 32 33 34 35 36 37 [8,] 29 30 31 32 33 34 35 36 37 38 [9,] 30 31 32 33 34 35 36 37 38 39 [10,] 31 32 33 34 35 36 37 38 39 40 こういうことか?
594 名前:132人目の素数さん mailto:sage [2012/07/26(木) 11:55:59.91 ] >>593 さま そうです! ありがとうございます! 助かりました
595 名前:132人目の素数さん mailto:sage [2012/07/26(木) 12:08:58.20 ] >>594 助かったのなら何よりなんだけど、 宿題の類だったのなら、確認もせずに教育の邪魔をして教員に申し訳ない。
596 名前:132人目の素数さん mailto:sage [2012/08/05(日) 22:25:40.52 ] n=1,2,...,Nに対してP(n)のデータがあります このデータがどの確率分布か言い当てることはできますか
597 名前:132人目の素数さん mailto:sage [2012/08/05(日) 23:48:09.66 ] >>596 これまた宿題っぽい。 質問の動機や、動機を得るに至った背景を説明してもらえますか
598 名前:132人目の素数さん mailto:sage [2012/08/07(火) 01:02:34.43 ] >>597 R触ってみようと思って最初に思い浮かんだのがこれ なんだけど探しても見つからないもんだからここで聞くことにした
599 名前:132人目の素数さん mailto:sage [2012/08/07(火) 04:10:01.29 ] >>598 ググると「コルモゴロフ-スミルノフ検定」というのが出てきた。
600 名前:132人目の素数さん mailto:sage [2012/08/07(火) 13:49:09.80 ] >>596 >>599 さんの答えだけだと、初心者はどうしてよいか分からないと思うので助言します。 > RSiteSearch("Kolmogorov-Smirnov") 以上。
601 名前:132人目の素数さん [2012/08/08(水) 15:54:24.83 ] Mac版Rのデフォルトでのフォントって何でしたっけ? コマンド入力中にうっかりよくわからないキー押してしまったみたいでフォントが変わってしまって・・。
602 名前:baka描 ◆ghclfYsc82 mailto:age [2012/08/08(水) 17:29:54.67 ] 描 >14 名前:132人目の素数さん :2012/08/07(火) 17:39:00.96 > >>13 > 旧コテ猫あらため描つまりお前自身の事だろ、増田哲也に限り無く近い人間。 > 筑波大学で痴漢と言えば増田哲也だから連続性も明らかになってるから > わざわざ限り無く近い人間なんて呼び方しなくていいんだけどな >
603 名前:132人目の素数さん [2012/08/08(水) 19:18:57.57 ] __ノ)-'´ ̄ ̄`ー- 、_ , '´ _. -‐'''"二ニニ=-`ヽ、 / /:::::; -‐''" `ーノ / /:::::/ \ / /::::::/ | | | | | |:::::/ / | | | | | | | |::/ / / | | || | | ,ハ .| ,ハ| | |/ / / /| ,ハノ| /|ノレ,ニ|ル' | | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。 . | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。 | l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。 | ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて | /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。 | (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は? | / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら? | |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \ . | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \ | /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 | | |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、 | |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄| | /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_| | |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/ | /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
604 名前:132人目の素数さん [2012/08/08(水) 21:07:17.90 ] __ノ)-'´ ̄ ̄`ー- 、_ , '´ _. -‐'''"二ニニ=-`ヽ、 / /:::::; -‐''" `ーノ / /:::::/ \ / /::::::/ | | | | | |:::::/ / | | | | | | | |::/ / / | | || | | ,ハ .| ,ハ| | |/ / / /| ,ハノ| /|ノレ,ニ|ル' | | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。 . | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。 | l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。 | ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて | /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。 | (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は? | / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら? | |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \ . | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \ | /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 | | |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、 | |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄| | /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_| | |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/ | /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
605 名前:132人目の素数さん mailto:sage [2012/08/12(日) 19:33:37.42 ] Rで、グラフとして描画されているデータをテキスト出力出来ますか? Rを使える人が私以外いないので、 Excelで配布しなければなりません。 今は描画前の関数データを張り付けていますが、 縦軸が変わってしまうので、グラフ描画からそのまま出力したいと思っています。
606 名前:132人目の素数さん mailto:sage [2012/08/13(月) 09:08:15.60 ] >>605 意味が分からない。 > Rで、グラフとして描画されているデータをテキスト出力出来ますか? Rグラフィックで描画するには、描画するためのデータがあると思うのだけど。 もしそうなら、そのままテキスト出力すればよいと思うが、 そんなことをわざわざ質問するとは思えないから、よく分からない。 テキスト出力とExcelの関連も意味不明。 > a <- data.frame(x=runif(10), y=runif(10)) というデータフレームがあったとして、 > plot(a) とRグラフィックに描画して、次のようにすればテキスト出力される。 > a x y 1 0.1401729 0.223354073 2 0.8426009 0.880151101 3 0.2795089 0.002605373 4 0.8179064 0.131089282 5 0.3903741 0.580761547 6 0.1708031 0.793535840 7 0.8964184 0.198217040 8 0.6109237 0.136335747 9 0.7519352 0.367561028 10 0.6382441 0.429468494
607 名前:132人目の素数さん mailto:sage [2012/08/13(月) 09:53:15.56 ] >>606 なるほど。データフレームにしてしまえばトラブルを解消できそうです。 今まで、xとyを別々に指定するような作業をしていたので気が付きませんでした。 ありがとうございました。
608 名前:132人目の素数さん [2012/08/26(日) 09:50:32.98 ] 教えてください。 開始日,数 1,5 2,2 3,4 4,8 …… 30,5 のような時系列データの信頼区間やピークを求めたいのですが、 解説サイトとかないでしょうか。
609 名前:132人目の素数さん mailto:sage [2012/08/27(月) 11:10:35.51 ] >>608 ピークを得るためには、当てはめる関数の形が必要でしょう。 あなたの研究対象に対する先験的知識が本質的に必要だと思われます。 例えばポアソン分布に当てはめられるタイプのデータだと次のようになります。 d <- data.frame(x=1:30, y=round((dpois(1:30,10) + runif(30, max = 0.01))*100)) barplot(d$y, names.arg = 1:30) こんなサンプルデータで、nls()を使って、 m1 <- nls(y ~ (a * (lambda^x*exp(-lambda)/gamma(x+1)) + b), start = c(a = 1, b = 1, lambda = 10), data = d) とすると、 > max(predict(m1)) [1] 13.14048 > which.max(predict(m1)) [1] 9 9日目で最大値13のピークになることが分かります。
610 名前:132人目の素数さん [2012/09/14(金) 21:05:08.72 ] windowsXP世代の4GBマシンで100万レコードオーダーのdataframeを ggplot2で描画しようとするとメモリオーバーになってしまう なんかうまい方法はないものか
611 名前:132人目の素数さん mailto:sage [2012/09/15(土) 00:15:23.75 ] >>610 分割して描画すればどうなる? ggplot2じゃないけど、例えばこんな風に。 > d <- data.frame(x = runif(100), y = runif(100)) > plot(d[1:25, ], xlim = range(d$x), ylim=range(d$y)) > points(d[26:50, ]) > points(d[51:75, ]) > points(d[76:100, ])
612 名前:132人目の素数さん [2012/09/15(土) 09:17:37.47 ] >>611 どうもです 確かに仰る通り、::baseのplotならば可能です 後だしですんませんが ・見た目のキレイさ (というか先進性というか凄いことやってそうに見せられるというか。。苦笑 ・カテゴリカル変数20こ程度 ・引き継ぎやデータ更新等を考えて 作図のためのデータハンドリングのコーディングは最少にしたい ・自分自身の興味w のような趣旨でggplot2でやりたいのです
613 名前:132人目の素数さん mailto:sage [2012/09/15(土) 20:06:17.90 ] >>610 32bit?64bit?
614 名前:132人目の素数さん [2012/09/15(土) 21:09:24.15 ] >>613 32bitです 会社の端末なんで詳細は不明ですが 5年くらい前の型で家庭用PCです Rは2.15.0でパッケージは最新です ggplot2_0.9.2.1
615 名前:132人目の素数さん [2012/09/15(土) 22:21:52.64 ] __ノ)-'´ ̄ ̄`ー- 、_ , '´ _. -‐'''"二ニニ=-`ヽ、 / /:::::; -‐''" `ーノ / /:::::/ \ / /::::::/ | | | | | |:::::/ / | | | | | | | |::/ / / | | || | | ,ハ .| ,ハ| | |/ / / /| ,ハノ| /|ノレ,ニ|ル' | | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。 . | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。 | l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。 | ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて | /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。 | (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は? | / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら? | |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \ . | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \ | /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 | | |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、 | |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄| | /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_| | |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/ | /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
616 名前:132人目の素数さん mailto:sage [2012/09/17(月) 13:49:31.71 ] ggplotでも分割してできるでしょ。 それでも最後の描画の際にエラーになっちゃうかな?
617 名前:132人目の素数さん mailto:sage [2012/09/18(火) 00:00:46.90 ] >>616 はい。 ggplot2オブジェクトにそうさをくわえることはできますが、 プロットするさいにメモリオーバーエラーとなってしまいます。 (プロットせずにggsaveしようとしてもおなじです)
618 名前:132人目の素数さん mailto:sage [2012/09/18(火) 14:41:03.61 ] >>617 じゃあ、データを間引きするしか方法がないのでは? そもそも100万レコードを視覚化するのに、 そのまま100万レコードが必要なのか? 100万からサンプリングして1万で図を描いても同じ図になる気がするぞ。
619 名前:132人目の素数さん mailto:sage [2012/09/18(火) 23:07:04.27 ] RにはReduce見たいな機能はないのかな
620 名前:132人目の素数さん mailto:sage [2012/09/19(水) 00:02:17.70 ] >>618 そういわれるとそうなのです ただ、問題は>>617 なので、なぜそうなるのか分かって、 そこだけ回避できるようになれればよいのですが・・・
621 名前:132人目の素数さん mailto:sage [2012/09/19(水) 09:39:21.27 ] そもそも全部描画できたとして、それは見るに耐えるものなのか? 例えば散布図なんかだと100万点どころか、1万点ですら多すぎて見づらいから、適切に間引くのが普通だ。
622 名前:132人目の素数さん mailto:sage [2012/09/20(木) 10:57:36.08 ] >>620 症状から考えて ggplot2内部的に、 画面表示や画像ファイル保存などの描画時に、 データフレームをSVGみたいな描画用データに変換してから その描画用データを参照して描画するんだと思う だから、100万データを扱うことはできても、 グラフ描画(保存も含む)ができない。 しかも、データをどれだけ分割しようと 最終的に描画する際には、 そのグラフに使用する全描画用データを 同時にメモリに保持している必要があるから、 分割が意味をなさない。 だから、どうしても100万データ分使いたいんだったら、 メモリオーバーしない量のデータで一旦画像に保存して、 その画像同士を重ね合わせるみたいな方法をとるしかないかな。 画像処理の手間が必要になりますが。 あるいは、グラフ用のデータを ダイナミックアロケーションできるような方法が あるのか知りませんが、なければ作るとか……w
623 名前:132人目の素数さん mailto:sage [2012/09/20(木) 16:26:54.47 ] >>622 そうだな。>>622 の言うとおり、ベクタ構造を保持するからメモリ不足になる。 適当なインターバルでラスタ変換をかませればよろし。 png()で分割出力して、system("convert ...")で重ねる。
624 名前:132人目の素数さん [2012/09/20(木) 22:19:32.83 ] >>622 >>623 なるほど頭の中が整理されました! ・データの分布を壊さずにデータを間引く関数を作る ・分割描画して最後にラスタデータを統合する関数を作る ・高スペックPCを導入する() のどれかって感じですね! ちょっと試してみるデス
625 名前:625 mailto:sage [2012/09/21(金) 00:01:09.50 ] √625 = 25
626 名前:132人目の素数さん mailto:sage [2012/09/26(水) 20:01:39.27 ] 質問です。 任意の行列xを縦に複数回並べたいです。 こんな感じで書いてみたのですが、 forを使わず作れますか、 rep関数だけで実現できないですか? mat <- NULL x <- matrix(1:9, 3, 3) for(i in 1:5){ mat <- rbind(mat,x) } mat
627 名前:132人目の素数さん mailto:sage [2012/09/26(水) 22:27:54.77 ] >>626 >rep関数だけで実現できないですか? できる ヒント: > i <- 5; paste("rbind(", paste(rep("x", i), collapse = ","), ")") [1] "rbind( x,x,x,x,x )"
628 名前:132人目の素数さん mailto:sage [2012/09/26(水) 23:09:49.40 ] Reduce(rbind,lapply(1:5,function(x) matrix(1:9,3,3)))
629 名前:132人目の素数さん mailto:sage [2012/09/26(水) 23:40:06.82 ] >>627-628 ありがとうございます\(^o^)/
630 名前:132人目の素数さん mailto:sage [2012/10/01(月) 04:48:45.78 ] >>628 do.call(rbind,lapply(1:5,function(x) matrix(1:9,3))) 5回じゃなくてもっと沢山くっつけるならdo.callのほうが速いみたい
631 名前:132人目の素数さん mailto:sage [2012/10/01(月) 23:26:00.72 ] Rってこれから主流になるんですか? ビッグデータ界隈でR!R!R!騒がしいです。
632 名前:132人目の素数さん mailto:sage [2012/10/02(火) 12:27:05.94 ] 主流になるのではないかと言われているけど、必ずそうなるとは言い切れない。 でも使えておいて損はないと思うよ。
633 名前:132人目の素数さん mailto:sage [2012/10/02(火) 15:05:16.56 ] >>631 ビッグデータって何GBくらい? 素朴に考えると、Rらしいプログラムの書き方で処理するときには、 データを全てPCのメモリ上に読み込まなければならない。 しかし、オラクルに格納されたデータが、 PC1台のメモリにスッポリ収まるとはとうてい考えられない。
634 名前:132人目の素数さん mailto:sage [2012/10/02(火) 19:43:58.58 ] >>633 それは時代遅れ。大規模なデータ処理では、データを固定したまま 処理をおこなう処理系自体をデータのあるところに移動しないと間に合わない。 既に昨年、Oracle社はデータはRDBMS上においたまま Rのコードを 実行できる仕組みを提案してるよ。フロントエンドはRで、実行はRDBMSか、 おそらく Exadata という専用ハードの上で行うと思う。 ttps://blogs.oracle.com/dbjp/entry/bigdata_000217
635 名前:132人目の素数さん mailto:sage [2012/10/02(火) 20:20:33.97 ] >>634 なるほど、オラクルサーバがR(互換)インタプリタを内蔵しているというわけですか。 Rが凄いというよりもORACLEの商魂が凄い。 そういえば、DBMSや統計ソフトのベンダーが 「顧客のニーズを読めてませんでした」とか言ったらギャグになる。
636 名前:132人目の素数さん mailto:sage [2012/10/03(水) 20:37:17.21 ] >>634 その手の話はOracleに限った話ではない www.revolutionanalytics.com/products/revolution-enterprise-for-ibm-netezza.php と言うより、Oracle使ってた人がRなんか使うのかね? そういう人はSASとか使うような気がするが。
637 名前:132人目の素数さん mailto:sage [2012/10/03(水) 22:48:32.44 ] >>636 うちはOracleとRを使ってる。会社のデータはOracleで管理してるが、 それを可視化したり、対話的に解析するのにRが便利。 両者はODBCデータソース経由でシームレスに繋がる。 確かにSASはいいんだけどライセンス料金が高いので使える人が 限られてしまうが、Rならそういうこと気にせずに済むのがいい。 ただしRはサポートが課題になりやすいけどね。 もしOracleが有償でもRのサポート提供するなら、それを評価する 企業ユーザもいるんじゃないかな?
638 名前:132人目の素数さん [2012/10/03(水) 23:16:24.69 ] Rで分析が済ませるデータ量の会社はそれでもいいけど、そんな会社はDB側もAccessで十分そうね。
639 名前:132人目の素数さん mailto:sage [2012/10/03(水) 23:33:39.40 ] Rでは社内で解析したものを環境丸ごと渡して 加工してもらうこともできるのかな?
640 名前:132人目の素数さん [2012/10/03(水) 23:44:58.20 ] データサイエンティストとして経験を積むにはどの業界が良いのだろうか? 色々考えてみた。 SNS データ量が多い。分析前提でDBが設計してある。データドリブンが前提 銀行 顧客属性、預貯金データ保有、ローン情報 保険 顧客属性、病歴情報保有 クレジットカード 顧客属性、ローン情報、購買データ保有 SNSかクレジットカードだろうか。
641 名前:132人目の素数さん mailto:sage [2012/10/03(水) 23:53:37.59 ] Tポイントカードの新会社だろ、JK!w
642 名前:132人目の素数さん mailto:sage [2012/10/03(水) 23:56:05.36 ] POSデータがあれば、どこでもおk
643 名前:132人目の素数さん mailto:sage [2012/10/04(木) 00:01:14.41 ] Tポイントカード、POSデータの情報量なんてたかが知れてると思うな。
644 名前:132人目の素数さん mailto:sage [2012/10/04(木) 00:28:41.27 ] >>637 SASのライセンス料を気にしてOracleのライセンス料を気にしないのは謎だな Oracleでまともにビッグデータを扱うと千万円の単位では済まないのに…
645 名前:132人目の素数さん mailto:sage [2012/10/04(木) 15:32:50.43 ] 企業のことは分からないが、 PostgreSQL + Rという組み合わせは論外なのかな?
646 名前:132人目の素数さん mailto:sage [2012/10/04(木) 20:11:25.61 ] >>645 PostgreSQLはBSDライセンスで、RはGPLじゃなかったっけ? 言語処理系部分の流用は出来ないんじゃないの?
647 名前:132人目の素数さん [2012/10/04(木) 21:31:10.07 ] >>644 Oracle は基幹系の投資に含めやすいし、実際に支払うライセンス料は 年間サポート料やコンサル費に比べれば大した金額じゃないと思う。 むしろコンサル費がべらぼうに高い。 その延長でゆくと、分析ツールはSASでもRでもいいが、こういう分析ツールを 活用できる社員を育成するのに金が掛かるし、企業での課題だと思う。 ちょっと外れてきたね。
648 名前:132人目の素数さん [2012/10/04(木) 22:57:30.45 ] Postgre + R だと生データを直接処理(モデリング)できないでしょ。 それこそ、MapReduceみたいな処理の分散を自分で考えないといけない。
649 名前:132人目の素数さん mailto:sage [2012/10/05(金) 00:20:41.39 ] >>626 x <- matrix(1:9, 3) x[rep(1:3,5),]
650 名前:132人目の素数さん mailto:sage [2012/10/05(金) 01:07:56.33 ] __ノ)-'´ ̄ ̄`ー- 、_ , '´ _. -‐'''"二ニニ=-`ヽ、 / /:::::; -‐''" `ーノ / /:::::/ \ / /::::::/ | | | | | |:::::/ / | | | | | | | |::/ / / | | || | | ,ハ .| ,ハ| | |/ / / /| ,ハノ| /|ノレ,ニ|ル' | | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。 . | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。 | l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。 | ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて | /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。 | (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は? | / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら? | |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \ . | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \ | /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 | | |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、 | |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄| | /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_| | |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/ | /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
651 名前:132人目の素数さん [2012/10/08(月) 17:00:48.41 ] SNSの出身の人はビジネスセンスに欠ける気がする。 もしかしたら、それは旧時代的なビジネスセンスで、SNS出身の人のは新時代のものかもしれないけど。 ・・・ないな。
652 名前:132人目の素数さん [2012/10/08(月) 17:29:34.67 ] 頭の古い人はいつでも置き去りにされる。
653 名前:132人目の素数さん mailto:sage [2012/10/08(月) 17:43:54.24 ] 統計解析全体がオカルトだというとらえ方もあるけどね。 > 活用できる社員を育成するのに金が掛かるし、企業での課題だと思う。 亀の甲羅を火にあぶる司祭たち……
654 名前:132人目の素数さん mailto:age [2012/10/08(月) 18:07:35.04 ] __ノ)-'´ ̄ ̄`ー- 、_ , '´ _. -‐'''"二ニニ=-`ヽ、 / /:::::; -‐''" `ーノ / /:::::/ \ / /::::::/ | | | | | |:::::/ / | | | | | | | |::/ / / | | || | | ,ハ .| ,ハ| | |/ / / /| ,ハノ| /|ノレ,ニ|ル' | | | / / レ',二、レ′ ,ィイ|゙/ 私は只の数ヲタなんかとは付き合わないわ。 . | \ ∠イ ,イイ| ,`-' | 頭が良くて数学が出来てかっこいい人。それが必要条件よ。 | l^,人| ` `-' ゝ | さらに Ann.of Math に論文書けば十分条件にもなるわよ。 | ` -'\ ー' 人 一番嫌いなのは論文数を増やすためにくだらない論文を書いて | /(l __/ ヽ、 良い論文の出版を遅らせるお馬鹿な人。 | (:::::`‐-、__ |::::`、 ヒニニヽ、 あなたの論文が Ann of Math に accept される確率は? | / `‐-、::::::::::`‐-、::::\ /,ニニ、\ それとも最近は Inv. Math. の方が上かしら? | |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \ . | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \ | /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 | | |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、 | |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄| | /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_| | |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/ | /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
655 名前:132人目の素数さん mailto:sage [2012/10/12(金) 10:40:00.67 ] N行M列のXを 要素M個のリストにしたいです。 x <- matrix(1:9, 3) x_list <- list(x[,1], x[,2], x[,3]) as.list(x)でやると要素9になってしまいます。 要素M個にしたい場合は、どうすればいいですか?
656 名前:132人目の素数さん mailto:sage [2012/10/12(金) 11:49:23.96 ] できました! split(x, col(x)) >知っているといつか役に立つ(?)関数達 - RjpWiki (6) ベクトル、行列、データフレームをある性質で分割する、split(x,f)
657 名前:132人目の素数さん mailto:sage [2012/10/14(日) 11:18:40.27 ] ↓これ、apply系の関数でうまくできないですか?教えてください。 x = matrix(1:12, 3, 4) y = c(2, 5, 10) x[1,] + y[1] x[2,] + y[2] x[3,] + y[1]
658 名前:132人目の素数さん mailto:sage [2012/10/14(日) 11:48:08.74 ] >>657 > x[1,] + y[1] > x[2,] + y[2] > x[3,] + y[1] x[1:3,]+y[c(1,2,1)]
659 名前:132人目の素数さん mailto:sage [2012/10/15(月) 13:56:05.47 ] >>657 これでもできる。xに対して縦にしたベクトルを横に走らせながら足し算するみたいな意味。 sweep(x, 1, y[c(1,2,1)], "+")
660 名前:馬と鹿と豚さん mailto:age [2012/11/05(月) 13:00:29.47 ] __ノ)-'´ ̄ ̄`ー- 、_ , '´ _. -‐'''"二ニニ=-`ヽ、 / /:::::; -‐''" `ーノ / /:::::/ \ / /::::::/ | | | | | |:::::/ / | | | | | | | |::/ / / | | || | | ,ハ .| ,ハ| | |/ / / /| ,ハノ| /|ノレ,ニ|ル' | | | / / レ',二、レ′ ,ィイ|゙/ . | \ ∠イ ,イイ| ,`-' | | l^,人| ` `-' ゝ | このスレは馬と鹿と豚ばかりね。 | ` -'\ ー' 人 | /(l __/ ヽ、 | (:::::`‐-、__ |::::`、 ヒニニヽ、 | / `‐-、::::::::::`‐-、::::\ /,ニニ、\ | |::::::::::::::::::|` -、:::::::,ヘ ̄|'、 ヒニ二、 \ . | /::::::::::::::::::|::::::::\/:::O`、::\ | '、 \ | /:::::::::::::::::::/:::::::::::::::::::::::::::::'、::::\ノ ヽ、 | | |:::::/:::::::::/:::::::::::::::::::::::::::::::::::'、',::::'、 /:\__/‐、 | |/:::::::::::/::::::::::::::::::::::::::::::::::O::| '、::| く::::::::::::: ̄| | /_..-'´ ̄`ー-、:::::::::::::::::::::::::::::::::::|/:/`‐'::\;;;;;;;_| | |/::::::::::::::::::::::\:::::::::::::::::::::::::::::|::/::::|::::/:::::::::::/ | /:::::::::::::::::::::::::::::::::|:::::::::::::::::::::O::|::|::::::|:::::::::::::::/
661 名前:132人目の素数さん mailto:sage [2012/11/09(金) 15:34:45.80 ] これって、Rで描けますか? homepage2.nifty.com/nandemoarchive/toukei_hosoku/gazou/anova_jizen_kentei_03.png 回帰直線の例である、よく教科書に載ってる図で、 「誤差が正規分布」してる様子を表したいです。 確率密度関数のプロット図を横に複数個並べたいんです。
662 名前:132人目の素数さん mailto:sage [2012/11/09(金) 15:48:43.41 ] これです。単回帰モデルの図をRで描けますか? t2.gstatic.com/images?q=tbn:ANd9GcSrGXCsyQu2rLsUEyeHakE0NWzk9-6hHsQhc390LDitoxLXxr0UydG2HTDv
663 名前:132人目の素数さん mailto:sage [2012/11/09(金) 16:13:59.17 ] >>661 描ける。でもちょっと頭の体操が必要かも。 >>662 同上。でもオレならPGF/Tikzで描くかな。 ttp://www.texample.net/tikz/examples/feature/plotting/
664 名前:663 mailto:sage [2012/11/09(金) 17:14:42.51 ] 時間があったので、コーディングしてみた。 RjpWikiと違って図を載せられないし、半角スペースは削除されるので、 わかりにくいかも知れない。 # サンプルデータ dat <- data.frame(x = c(rnorm(50) - 2, rnorm(50), rnorm(50) + 2), g = c(rep("x", 50), rep("y", 50), rep("z", 50))) # 作図 d <- tapply(dat$x, dat$g, density) plot(as.numeric(dat$g), dat$x, xlim = c(0, 4), axes = FALSE, xlab="", ylab="x") lines(d[[1]]$y + 1, d[[1]]$x) lines(d[[2]]$y + 2, d[[2]]$x) lines(d[[3]]$y + 3, d[[3]]$x) axis(2) axis(1, at = 1:3, labels = LETTERS[24:26]) あとはsegments()で適当に赤の横破線を引いてくれ
665 名前:132人目の素数さん mailto:sage [2012/11/09(金) 21:12:18.68 ] >>664 おぉー!ありがとうございます!!
666 名前:132人目の素数さん mailto:sage [2012/11/28(水) 20:53:30.87 ] 初心者ですがロジットモデルを作る際に Lapack routine dgesv:システムは正確に特異です という意味不明なメッセージが... 変数ごとの尺度が違いすぎると発生するってことで一部に1/100したりしてみたけど 変わらず出てしまう...「そのエラー文こんな場合に出てくるでー」みたいなのあれば教えて頂けるとありがたいです.
667 名前:132人目の素数さん mailto:sage [2012/11/28(水) 21:07:45.01 ] ロジットモデルが何か知らないけど、 エラー文でググると、 >分散共分散行列の行列式が正定値では無いため
668 名前:132人目の素数さん mailto:sage [2012/11/28(水) 21:27:27.31 ] >>667 ありがとうございます! 分散共分散行列、正定値か...初めての単語です. 調べてみようっと
669 名前:132人目の素数さん mailto:sage [2012/11/28(水) 22:30:52.44 ] >>666 singularって単数と思っていたが、数学では「特異」なんだな。 勉強になった。
670 名前:132人目の素数さん mailto:sage [2012/11/29(木) 22:21:50.04 ] >>669 singular matrixって、逆行列を持たない行列。つまり 1 2 2 4 とか、そういうやつじゃないの? Octaveでそういうのをやると octave-3.2.4.exe> A=[[1,2];[3,4]] A = 1 2 3 4 octave-3.2.4.exe> inv(A) ans = -2.00000 1.00000 1.50000 -0.50000 octave-3.2.4.exe:> A=[[1,2];[2,4]] A = 1 2 2 4 octave-3.2.4.exe> inv(A) warning: inverse: matrix singular to machine precision, rcond = 0 ans = Inf Inf Inf Inf
671 名前:132人目の素数さん [2012/11/30(金) 15:39:16.01 ] sortとprintとあわせて使えませんか?
672 名前:132人目の素数さん mailto:sage [2012/12/01(土) 09:59:19.11 ] 2012/12/01 10:00〜 R研究集会 「データ解析環境Rの整備と利用」2012 live.nicovideo.jp/watch/lv116268591
673 名前:132人目の素数さん mailto:sage [2012/12/03(月) 20:43:08.44 ] >>671 それは質問かい? それとも上のどこかの書き込みの対する助言かい?
674 名前:132人目の素数さん mailto:sage [2012/12/04(火) 10:40:04.46 ] すみません、質問です id time sex 1 13 male 2 24 female ・・・ てな感じのデータ(population)を、timeでヒストグラムを書いた時にsexで色分けしたいのですが 基本グラフィックを使った方法で何か良いのは無いでしょうか? ちなみにggplot2だと以下のコマンドで出来ますが、基本グラフィックで書く必要があります ggplot(population, aes(time, fill=sex))+geom_histogram()
675 名前:132人目の素数さん mailto:sage [2012/12/04(火) 11:26:35.26 ] >>674 hist()はグループ分けができません。 > set.seed(1234) > a <- data.frame(time = round(rnorm(100)^2*10+5), sex = sample(as.factor(c("male", "female")), 100, replace = TRUE)) と適当なサンプルで、 > max(a$time) [1] 70 なので、0から100まで10刻みで頻度を計算して棒グラフを書けばよいのでは。 > brks <- (0:5)*4 > b <- cbind(table(findInterval(a$time[a$sex == "male"], brks)), table(findInterval(a$time[a$sex == "female"], brks))) > barplot(t(b), beside = TRUE, names.arg = brks[as.integer(row.names(b))]) 参考まで。
676 名前:132人目の素数さん mailto:sage [2012/12/05(水) 08:26:29.52 ] >>675 なるほど、histはグループ分けが出来ないのですね・・・ アドバイスに従って棒グラフで作成してみます 回答ありがとうございました
677 名前:132人目の素数さん mailto:sage [2012/12/18(火) 04:57:50.10 ] リストの各要素を変数に代入したいです。 今は↓こんな感じでやってるのですが、要素数が増えると面倒で、 良いやり方があれば教えてください。 m = list(1, 2, 3, 4) a = m[[1]] b = m[[2]] c = m[[3]] d = m[[4]]