= 統計解析フリーソフト R 【第2章】 =
レス数が1000を超えています。これ以上書き込みはできません。
0001132人目の素数さん
2006/07/09(日) 21:44:55です.簡単なデータ解析から非常に高度・専門的な統計解析まで,さま
ざまな解析が出来る優れたソフトです.またRはSやSplusに操作環境な
どが良く似ており, Sで動作するものはRでもほとんど(90%以上)変更な
しに動作します.
0002132人目の素数さん
2006/07/09(日) 21:50:31「The R Project」
http://www.r-project.org/
「CRAN」(日本ミラーサイト・R本体はここから手に入ります)
http://cran.md.tsukuba.ac.jp/
◆日本語ドキュメント
「R の日本語文章 (pdf 版)」
http://buran.u-gakugei.ac.jp/~mori/LEARN/R/
「R−Tips PDF版」
http://cse.naro.affrc.go.jp/takezawa/r-tips.pdf
0003132人目の素数さん
2006/07/09(日) 21:51:35「RjpWiki」
http://www.okada.jp.org/RWiki/
「Rによる統計処理」
http://aoki2.si.gunma-u.ac.jp/R/
「統計処理ソフトウェアRについてのTips」
http://phi.ypu.jp/swtips/R.html
「R−Tips」
http://cse.naro.affrc.go.jp/takezawa/r-tips/r2.html
0004KingOfUniverse ◆667lnVUqRY
2006/07/09(日) 21:52:070005132人目の素数さん
2006/07/09(日) 21:52:34http://datamining.tama.ac.jp/~yama/R/
「Rの使い方」
http://web.sfc.keio.ac.jp/~watanabe/r.htm
「関数一覧(青木先生)」
http://aoki2.si.gunma-u.ac.jp/R/
「R on Windows 〜統計モデル 00〜」
http://plaza.umin.ac.jp/~takeshou/R/stat.html
「統計言語 R の講義」
http://genome.ag.saga
「R on Windows 〜統計モデル 00〜」
http://web.sfc.keio.ac.jp/~kogure/soft/r/r.html
「R でプログラミング:データの一括処理とグラフ描き」
http://takenaka-akio.cool.ne.jp/doc/r_auto/index.html
0006132人目の素数さん
2006/07/09(日) 22:56:40「JIN'S PAGE」
http://www1.doshisha.ac.jp/~mjin/R/
0007KingOfUniverse ◆667la1PjK2
2006/07/09(日) 23:54:22人の脳を読む能力を悪用する奴を潰せ。
0008132人目の素数さん
2006/07/10(月) 22:43:18リスパダールという薬を服むと、脳を読まれなくなるよ。
0009KingOfUniverse ◆667la1PjK2
2006/07/11(火) 14:16:290010132人目の素数さん
2006/07/16(日) 23:36:450011132人目の素数さん
2006/07/22(土) 21:34:53個人的には使うのが礼儀だと思うのですが・・・・
0012132人目の素数さん
2006/07/23(日) 00:37:42条件分岐のときは使うけど、最後の行で返すときは使わない方です。
return文使わないようにするとオブジェクト指向してる気分になれるので。
それに、
f <- function(x) x^2
みたいに一行で定義が済むときはわざわざ書きたくないですよね。
Rの言語仕様はかなりルーズだけど、そこが好きです。
0013132人目の素数さん
2006/07/23(日) 10:42:01??そうですか?
0014132人目の素数さん
2006/07/24(月) 22:24:410015132人目の素数さん
2006/07/28(金) 18:03:380016132人目の素数さん
2006/07/30(日) 11:30:250017132人目の素数さん
2006/08/03(木) 23:57:09私はRODBC使ってますが.
0018132人目の素数さん
2006/08/04(金) 02:34:361.
範囲選択
2.
read.delim("clipboard")
0019132人目の素数さん
2006/08/06(日) 12:36:44データが大きいと・・・.
0020132人目の素数さん
2006/08/11(金) 02:19:370021132人目の素数さん
2006/08/12(土) 13:49:20csvで保存、もあしくは、メモリ増設
正直なところ、excelからRにデータを移すっていう機会がどういうときにあるのかが理解できない。
0022132人目の素数さん
2006/08/12(土) 15:59:39Excel で保存したデータを解析するよう依頼され、何かの事情で断れないとき。
常々、理解力不足を自覚していませんか?
0023132人目の素数さん
2006/08/13(日) 00:01:44自覚してる。
0024KingOfUniverse ◆667la1PjK2
2006/08/20(日) 19:02:300025132人目の素数さん
2006/08/30(水) 01:44:360026132人目の素数さん
2006/09/01(金) 19:39:010027132人目の素数さん
2006/09/01(金) 19:59:15関数定義少なし仁、みたいな
0028132人目の素数さん
2006/09/01(金) 23:12:07kwsk!
0029132人目の素数さん
2006/09/02(土) 14:55:32サイドバーで検索できるのかな?
0030132人目の素数さん
2006/09/03(日) 18:38:190031132人目の素数さん
2006/09/13(水) 11:51:590032132人目の素数さん
2006/09/15(金) 21:48:190033132人目の素数さん
2006/09/18(月) 01:16:290034132人目の素数さん
2006/09/18(月) 19:50:350035132人目の素数さん
2006/09/18(月) 20:56:060036132人目の素数さん
2006/09/18(月) 21:33:44003734
2006/09/18(月) 23:08:29マニアックな操作感覚とか?
0038132人目の素数さん
2006/09/19(火) 01:47:13GUIとCUI
003935
2006/09/19(火) 07:55:4738の言うとおり操作性が違うのでコマンド入力を嫌う人にも勧めない。
0040132人目の素数さん
2006/09/20(水) 01:56:31ちまちま読みつつExercisesを解いていってみよう。
0041132人目の素数さん
2006/09/23(土) 17:20:19どのパッケージをインストールすればよいのでしょうか。
RSMらしき名前のが、見つからないのですが。
0042132人目の素数さん
2006/10/01(日) 01:30:29Rで、Excelのようなスプレッドシートを画面に表示するには、
何と入力すればよいのですか?
0043132人目の素数さん
2006/10/01(日) 05:27:00edit()
0044132人目の素数さん
2006/10/01(日) 19:50:00すでに存在するデータを操作するならfix()の方がいい。
でもこれらはデータの修正のみで表計算ソフトのように
式を入力したりできるわけではない。
0045132人目の素数さん
2006/10/03(火) 06:17:390046132人目の素数さん
2006/10/04(水) 09:02:58どんなモンなんでしょ?読まれた方いらっしゃいます?
『データ解析環境「R」―定番フリーソフトの基本操作からグラフィックス、統計解析まで』
『フレッシュマンから大学院生までのデータ解析・R言語』
『はじめてのS‐PLUS/R言語プログラミング―例題で学ぶS‐PLUS/R言語の基本』
0047132人目の素数さん
2006/10/04(水) 09:19:56「The R Book」 と 「The R Tips」 でよかろう。高いが払う価値はある。
「工学のためのデータサイエンス入門―フリーな統計環境Rを用いたデータ解析」もオススメ
『データ解析環境「R」―定番フリーソフトの基本操作からグラフィックス、統計解析まで』
ほんのさわり。プログラム脳があるなら応用可。
『フレッシュマンから大学院生までのデータ解析・R言語』
確か読み難くて立ち読みでパスした
『はじめてのS‐PLUS/R言語プログラミング―例題で学ぶS‐PLUS/R言語の基本』
わかり易そうな例題がゴロゴロあるが、応用が効かない話が多い。
0048132人目の素数さん
2006/10/04(水) 09:57:53うは。こんなに早くレスポンスいだたけるとは思ってなかったス。サンクス。
やっぱり「The R Book」 、 「The R Tips」が一番なのか…
どちらも『入門部』と『応用部』と言う感じの構成になってるみたいですが、
どちらがより初心者向け、つまり教科書的ですかね?
0049132人目の素数さん
2006/10/04(水) 10:23:20かなり、初心者に対して敷居が高いように思われます。EMACSのLIPS位キツいかも。
ざっといじっただけなので、これから慣れるかもしれませんが、とっつきにくいです。
わざわざ、こんなソフト使うよりEXCELを使う方が遥かに生産的ですね。
本当はこのGNU Rプロジェクトって何がしたいのでしょうかね?
0050132人目の素数さん
2006/10/04(水) 10:28:47GNU系のプロジェクトと言うことと、ソフト操作の難易度には何の相関性も無いと思われるが…
0051132人目の素数さん
2006/10/04(水) 11:05:41入門だけならThe R BookだがTipsの方が研究なり仕事なりに応用が効く話が多い。
>>49
どうせ釣りだろうがsum()しか使わないならExcelにしとけ
0052132人目の素数さん
2006/10/04(水) 12:11:34どもです。
なるほど、即戦力として利用したいときにはTipsの方で、
じっくり基礎からと言う時にはBookの方という感じですか。
有り難うございます。
0053132人目の素数さん
2006/10/04(水) 12:51:39俺も取っ掛かりはpdfをダウンロードした。
偏っていない良い文献だと思う。
0054132人目の素数さん
2006/10/05(木) 01:30:03『データ解析環境「R」』を読んでもダメ?
これ読みながらざっといじっただけでも使えるようになると思いますが。
0055132人目の素数さん
2006/10/06(金) 07:34:56一番最初はそれでよいと思う。R Tipsはわかりにくいと批判があったので
『データ解析環境「R」』を書いたと筆者が行っている
0056132人目の素数さん
2006/10/06(金) 07:56:22『データ解析環境「R」』+R Tipsのセットってことでおk?
0057132人目の素数さん
2006/10/06(金) 07:58:220058132人目の素数さん
2006/10/06(金) 16:20:15教えてください。
例えば
x <- matrix(c(1,5,4,1),2,2)
などとすれば、xを行列として扱えますが、(det(x)など計算できる)
####"hoge.dat"
1 4
5 1
####
のようなデータを、 d <- read.table("hoge.dat")などと読ませて
行列として扱うにはどうすればよいでしょうか
0059132人目の素数さん
2006/10/06(金) 16:41:36d <- read.table("hoge.dat")
as.matrix(d)
で出来ました。
最初に試して出来なかったように思い込んでいたのですが、
そのときは手順を間違えていたようです。
0060132人目の素数さん
2006/10/14(土) 22:05:230061マカオ
2006/10/16(月) 17:58:45ネットで探し回ったのですが、これといって有力な情報にたどり着くことが出来ませんでした。
よろしくお願いします。
0062132人目の素数さん
2006/10/17(火) 21:54:16http://mat.isc.chubu.ac.jp/R/tech.html
なんかどう?
0063132人目の素数さん
2006/10/18(水) 14:13:430064132人目の素数さん
2006/10/19(木) 22:09:19http://cse.naro.affrc.go.jp/takezawa/r-tips/r/74.html#05
0065132人目の素数さん
2006/10/21(土) 07:50:56目的変数が、0〜1の連続変数で、
説明変数が、連続変数やカテゴリ変数のモデルをつくりたいと思っています。
目的変数が0と1のカテゴリ変数の場合は、glm(ロジスティック回帰)でモデル化が出来ると思うのですが、
0.2や0.8等も含む連続変数の場合は、どの関数を使えばいいのでしょうか?
0066132人目の素数さん
2006/10/22(日) 17:37:47その0〜1という変数が比率であるなら
逆正弦変換(角変換)して普通に回帰すればいいのでは?
角変換は
http://aoki2.si.gunma-u.ac.jp/Yogoshu/33.html
を参照。
0067132人目の素数さん
2006/10/22(日) 18:56:34レスありがとうございます。
目的変数は、0〜1の確率を表す連続変数です。
比率と言えば比率なのですが、少し違う気もしています。
0〜0.5は0、0.5〜1は1としてロジスティック回帰をする方法も思いついたのですが、
これでは情報を捨ててしまっている気がして、もう少し上手い手法があるのではと思い質問させて頂きました。
角変換というのも始めて知りました。勉強させていただきます。
0068132人目の素数さん
2006/10/23(月) 00:12:500と1が出てこないならばロジット変換かプロビット変換をして
回帰という方法もあります。
プロビット変換は同じく青木先生のページに説明がありますね。
http://aoki2.si.gunma-u.ac.jp/Yogoshu/130.html
ロジット変換はここを見つけました。他にもあるでしょう。
http://datamining.jp/vocabular/yougo.htm#66
どちらも0や1が出てくるならなんらかの補正が必要です。
0069132人目の素数さん
2006/10/23(月) 00:15:18ロジット変換はロジスティック回帰のリンク関数と同じですから
同じようにしたいというのならこちらが親和性が高いです。
0070132人目の素数さん
2006/10/23(月) 21:09:04ロジスティック回帰の目的変数は確率あるいは比率ではないんでしょうか?
確率が0.5を超えれば「あり」、超えなければ「なし」等と判断することによって
目的変数が2値変数の場合に「使える」のではないのでしょうか。
0071132人目の素数さん
2006/10/24(火) 19:26:17Rwaveとwaveletsというライブラリがあることまでは分かりましたが,みたい現象をどうやって解析すればいいのか分かりません……
Rは,統計ソフトだけど,ウェーブレットを使用してよいのでしょうか??
他によいソフトがありますか??
0072132人目の素数さん
2006/10/24(火) 22:56:450073132人目の素数さん
2006/10/25(水) 23:39:12Rで小数のデータにロジスティック回帰をかけると警告が出ますね。
元々二項分布を前提にしているわけですから小数のデータは
おかしいわけですが、一応出る出力は何をしているのか分かりません。
0074age
2006/11/03(金) 01:13:140075132人目の素数さん
2006/11/04(土) 02:51:57言ってる椰子らに限って仕事できねぇんだよな、まったく。
って、言っている漏れも窓際だがorz
無難にSPSSとか使っているやつがスターだったりするからな。
うらやまP!
0076132人目の素数さん
2006/11/04(土) 09:17:510077132人目の素数さん
2006/11/04(土) 10:01:49仕事できない
ビンボー
・・・そんなあなたにお勧めします。最高のRを!!(;。;)
0078132人目の素数さん
2006/11/04(土) 10:15:570079132人目の素数さん
2006/11/04(土) 10:18:41だからSPSSには手が出ない。
0080132人目の素数さん
2006/11/04(土) 11:48:130081132人目の素数さん
2006/11/04(土) 18:00:07でも、えせ分析屋が大量発生させることに功をなした。
0082132人目の素数さん
2006/11/04(土) 21:23:15MATLABからRに乗り換えようか検討しています
google code
で
Wilcoxon Matched-Pair Signed-Rank Test
と検索すると
cとoctaveのコードしかひっかかりません
google codeはRを無視してるのでしょうか?
0083132人目の素数さん
2006/11/04(土) 22:15:20「R Wilcoxon Signed-Rank Test」
と「R」を追記するだけでも結果が随分かわりますね.
0084132人目の素数さん
2006/11/04(土) 23:13:47ググレカスじゃなくてCRAN Searchでヒットしたが
http://finzi.psych.upenn.edu/cgi-bin/namazu.cgi?query=Wilcoxon+Signed-Rank&max=100&result=normal&sort=score&idxname=functions&idxname=docs&idxname=Rhelp02a
0085132人目の素数さん
2006/11/05(日) 00:02:13大学でSPSSをやろうと言うのなら確かに似非になるが。
0086132人目の素数さん
2006/11/05(日) 08:49:21見ていて笑えるぜ!
0087132人目の素数さん
2006/11/05(日) 21:12:39基準化してから投入する場合ではモデルの精度に違いが出ますか?
0088132人目の素数さん
2006/11/07(火) 00:53:35うちの分野だと1顧客で1億近いけどSPSSで十分やってます。
必要に応じてJMPとRも使いつつ。
>>80-81
SPSSのどこらへんが玩具なのかな。
不満はあるけど、玩具とまでは思ってなかったので。
>>85
2行目で何を言いたいのかよく分からん。
噛み砕いて教えてくれるとうれしい。
>>86
それは面白そうだね。
どこで見られるのか教えてくない?
>>87
それはやってみれば分かるでしょ。
0089132人目の素数さん
2006/11/07(火) 11:52:06> それはやってみれば分かるでしょ。
やってみても、違いが出ることが分かるだけで、精度が違うかどうかの返答になっていない。
0090132人目の素数さん
2006/11/07(火) 19:23:24finmetricsを読み込んででDowJones30の分析をしているんだけど、いくつかの銘柄で
Daily Closing Pricesが実際の(YahooのUS financeで確認)と合わないんだけど
多分 stock splitの関係のような気はしてるんだけど
誰か教えて下さい・・・
0091132人目の素数さん
2006/11/08(水) 00:39:27それじゃあまず、>>89の言うところの「精度」の意味を明確にしてくれ。
たとえばそれがR^2のことならば、やっぱりやってみればわかること。
汎化性のことを言っているのならCross-Validationでもしてみればいい。
R^2もCross-Validationもわからんようならこの本を一読することをお勧めします。
http://www.amazon.co.jp/gp/product/4274066142/
意外といい本よ、これ。
0092132人目の素数さん
2006/11/08(水) 12:22:53きもちわるい
009389
2006/11/08(水) 12:27:48R^2やCross-Validationっていってみたかっただけとちゃうんかいと小一時間。。。
0094132人目の素数さん
2006/11/13(月) 06:32:360095132人目の素数さん
2006/11/16(木) 14:50:17-0.889 を計算するのってそんなに大変なんだろうか... > 某Wiki
0096132人目の素数さん
2006/11/16(木) 20:09:000097132人目の素数さん
2006/11/21(火) 00:45:27データファイルとして
身長体重性別
15655男
18974男
16945女
というdata.datというファイルがあります.これを読み込んでessからアクセスしようとすると以下のようになります.
> df <- read.table("f:/home/usr/Rstudy/data.dat",header=T)
> df
身長 体重 性別
1 156 55 男
2 189 74 男
3 169 45 女
> df$身長
NULL
.emacsには
(require 'ess-site)
(setq ess-pre-run-hook
'((lambda () (setq S-directory default-directory)
(setq default-process-coding-system '(shift_jis . shift_jis))
としてあります.Rのバージョンは2.3.1,MeadowのバージョンはM-x versionするとGNU Emacs 22.0.50.1と出ます.ESSのバージョンは5.3.1です.たすけて〜
009897
2006/11/21(火) 00:47:090099132人目の素数さん
2006/11/21(火) 16:42:08お気の毒だけど、emacs-21.3-0vl7+ESSだと問題ないよ。
> df.1 <- read.table("data.dat",header=T)
> df.1
身長 体重 性別
1 156 55 男
2 189 74 男
3 169 45 女
> df.1$身長
[1] 156 189 169
>
dfは関数の名前とかぶるので変数名にしない方がいいよ。
0100132人目の素数さん
2006/11/23(木) 01:27:02Rtermですでに文字化けしてませんか。よく紹介されている「setq ess-pre-run-hook...」をやめて、以下に書き換えで如何。
(add-hook 'ess-post-run-hook (function (lambda ()
(set-buffer-process-coding-system 'shift_jis 'shift_jis))))
0101age
2006/11/26(日) 01:58:200102age
2006/11/30(木) 09:39:31010397
2006/12/01(金) 02:45:49>dfは関数の名前とかぶるので変数名にしない方がいいよ。
これでした.かぶらない変数名を選んでやったらイケマシタ.ありがとうございます.
0104132人目の素数さん
2006/12/02(土) 00:07:09どういたしまして。
ところで、Rって多重比較検定が弱い気がしてきた。SPSSにある検定方法ぐらいは
用意しておいてくれよぉ。シェッフェとかライアンとかゲイムスーハウエルとか。
0105132人目の素数さん
2006/12/02(土) 01:14:23ここに
http://aoki2.si.gunma-u.ac.jp/R/index.html
シェッフェとライアンはあるな。
ゲイムス−ハウエルは流石にないな。
0106132人目の素数さん
2006/12/03(日) 19:23:090107132人目の素数さん
2006/12/04(月) 14:00:31だいたいSPSSの価格を知っているのか?
それをふまえていればそんな台詞は吐けないと思うが。
むしろタダでここまでの機能を使えることに感謝すべきだろう。
しかもプログラム組めば無限に機能を拡張できるし。
0108132人目の素数さん
2006/12/04(月) 20:30:26コメントありがと。もちろん、自分で関数書いているよ。
青木先生のところはパクッて書き直しているのは内緒だけどね。
# 後ろめたいのでCRANには投稿できないし、公開もできない。
0109132人目の素数さん
2006/12/04(月) 23:36:25青木先生にお世話になるのは普通ですね。自分で使う分には下敷きにして改良しようが、
無問題でしょう。(先生もそのつもりで公開してくれていると思うし。)
それにしても自分で書いてるんだったら愚痴る必要はなかったと思うね。
ユーザのための発言だとしてもゲイムス−ハウエルほどマイナーな方法まで
上げることはなかったと思う。SPSSにはよく入ってるよな。SASにはないと思うけど。
0110132人目の素数さん
2006/12/05(火) 04:10:22> 自分で書いてるんだったら愚痴る必要はなかったと思うね。
関数を書くのが目的ではなく、解析するのが目的なので、自分で書いて無駄な時間を
使ったと思っているよ。R以外の統計パッケージを使うつもりはないので、これからも
必要に応じて書くけど、家を建てるために植林から始めているもどかしさがある。
0111132人目の素数さん
2006/12/05(火) 04:22:400112132人目の素数さん
2006/12/05(火) 08:57:59自分で書くのも勉強のうちだ。そうすれば誤った手法を使うことも少なくなる。
それに全て手作りだった昔と比べたらはるかにましなんだけどね。
(植林どころか家を建てる道具すら作ってたよ。orz)
0113132人目の素数さん
2006/12/05(火) 16:40:14それでは他の人が無駄な時間を使わずにすむよう、公開してくれると
みんな幸せになれるのでお願いしますです。
パクってるところは、「パクったよ」とちゃんと言っておけば問題ないと
思いますよ(R関係の公開物の多くはそういう系のライセンス or 作者かと)
0114age
2006/12/14(木) 01:27:29http://jasp.ism.ac.jp/kinou2sg/list.html#R
0115132人目の素数さん
2006/12/14(木) 09:39:46基礎がついたら、R-Tipsのサイト見れば十分だね。
0116132人目の素数さん
2006/12/15(金) 00:41:48って??
0117132人目の素数さん
2006/12/15(金) 01:15:300118132人目の素数さん
2006/12/17(日) 19:51:28文系高卒でも理解できそうですか?
0119132人目の素数さん
2006/12/17(日) 20:33:40素直にSPSSでも買っとけ。
0120132人目の素数さん
2006/12/18(月) 21:45:47何を入れたらいいかわかる人よろしくお願いします
configure: WARNING: you cannot build info or html versions of the R manuals
configure: WARNING: I could not determine a browser
0121132人目の素数さん
2006/12/18(月) 21:46:25役立たず乙
0122132人目の素数さん
2006/12/19(火) 07:25:250123132人目の素数さん
2006/12/19(火) 10:08:401行目: makeinfo
2行目: firefox mozilla netscape galeon kfmclient opera gnome-moz-remote open
のどれか。
openはMacOS Xのためだろう。
0124132人目の素数さん
2006/12/19(火) 10:17:07はじめてのS-PLUS/R言語プログラミング
とか
I/O Booksの データ解析環境「R」
とかだと、さすがに文系だと事前に統計の勉強が必要そうだけど、
理系なら高校程度の知識でもある程度は使えるようになれそうな
気がする。
0125115
2006/12/19(火) 10:51:070126132人目の素数さん
2006/12/19(火) 15:42:55tetexとfirefox入れたら全部消えたよ
ありがとう
いい人だな
0127132人目の素数さん
2006/12/19(火) 19:57:420128132人目の素数さん
2006/12/20(水) 00:07:36解かせたりできますか?
0129132人目の素数さん
2006/12/20(水) 00:33:45tetex→texinfo
0130132人目の素数さん
2006/12/20(水) 23:26:42できません。
扱える変数はスカラー、ベクトル、行列などで(文字列としてではない)式そのものというのはありません。
0131132人目の素数さん
2006/12/20(水) 23:36:26ただ直接求められないだけ。
0132132人目の素数さん
2006/12/21(木) 02:10:11微分^^
http://cse.naro.affrc.go.jp/takezawa/r-tips/r/38.html
連立方程式^^
http://cse.naro.affrc.go.jp/takezawa/r-tips/r/20.html
0134132人目の素数さん
2006/12/21(木) 09:01:38数値計算じゃなく微分できるんだ。初めて知ったよ。
0135132人目の素数さん
2006/12/21(木) 09:42:29見しました。
帰無仮説、対立仮説と言う言葉が出てこなく残念!
うちの大学の先生のコアセッション用の本の書き出しが
『統計学は数学である。』
となっており、困っています。
0136132人目の素数さん
2006/12/21(木) 09:54:32卒論で忙しいのは分かるが一旦寝ろw
0137132人目の素数さん
2006/12/21(木) 10:34:340138132人目の素数さん
2006/12/21(木) 20:20:35確かに出てこないな。自明だからじゃないか?
0139132人目の素数さん
2006/12/22(金) 08:10:20gccは問題ないのに、あれがないこれがないで進まない
readline入ってるのにないといわれる
0140132人目の素数さん
2006/12/22(金) 18:53:29有意水準もない。
p値はあるけど…
TeXでやっているから索引があってもいいのに…
0141132人目の素数さん
2006/12/22(金) 22:58:520142132人目の素数さん
2006/12/23(土) 00:01:22それってギャグで言ってるのか?
そうでなきゃ>>141に禿同
0143132人目の素数さん
2006/12/23(土) 00:09:310144132人目の素数さん
2006/12/23(土) 13:38:450145132人目の素数さん
2006/12/23(土) 22:02:480146132人目の素数さん
2006/12/24(日) 10:06:13/_\
 ̄|U ̄
/⌒ヽ /ミヽ、
( ^ω^) ノミシ三 `~゚
(っ ≡つ=つ゚ ゚
./ ) ババババ
( / ̄∪
_|_
/_\
ヒュン  ̄|U ̄
/⌒ヽ 三⌒ヽ /ミヽ、
((( ^ω^)三ω^)ノ ヽ `~゚ ))
(_っっ= _っっ゚ ゚
ヽ ノ ヒュン
( / ̄∪
0147132人目の素数さん
2006/12/25(月) 02:16:09i l l l l ll l /!.| ,! / | /゙!゙"゙"゙"゙ll| | | !�_ヾ゙r、,__.l ,. -‐''´ ̄`ーァ'"´ ヽ、/
l !. | | | |l | || li |/| l| ! | l! ! | | |ミミヾ,| .l7lー‐- 、 __/
| | | | |l l. _lki'l |! l! l+-l、_ ,j l/,!.l |三ニ、jイ l l三ヽ | r'´ _
l i l l lヽ, i´ !_i!ヽl l l! __ `メノl !l ! |=、ニ/ ! l/ヽ== 、-‐'"´ ̄ ̄`ヽ、 / /
ヽヽ ヽ ヽ,r=ミ ! ,. ==ミ、 /// j l、 }彡r'、\ \ l�_、 ̄`丶、 \ / |
,. -─-、ヽヽヽヽ!::::::::: , / ::::::::::: `/// //'∠ !_{,l、 \ヽヽ, | !l ̄`ー-、`ヽ 、 / __ l、
/,r‐,=≧--‐'´__.', ___ /ノ/ //´ヽj \ ̄ ̄二>‐、-!!,_ \ r'´ /ヽ l | l
/rチ'"´ _,ィャヶ'´rt‐\. l'´ ! ///./ / lヽ/'´ ̄ | ヽ, `ヽ、 \‐' } | r ! lノ l
/_,.ィ=彡/ l ! \ ー' / / / // l、 ヽ, \ ヽヽ lノ / 」/ ヽ
12月24日の午後9時から翌25日の午前3時までの6時間は
1年間で最もセックスをする人の多い「性の6時間」です。
貴方の知り合いや友人ももれなくセックスをしています。
普段はあどけない顔して世間話してるあの娘もセックスをしています。
貴方が片想いしているあの綺麗な女性もセックスをしています。
貴方にもし年頃の娘さんや姉・妹がいて、いま家にいないのでしたら間違いなくセックスしてます。
貴方と別れたあの娘も貴方がその娘にやってきたことを別の男にやられています。
貴方の将来の恋人や結婚する相手は、いま違う男のいちもつでヒィヒィ言っています。
0148132人目の素数さん
2006/12/25(月) 19:55:580149132人目の素数さん
2006/12/27(水) 18:12:070150132人目の素数さん
2006/12/29(金) 01:09:32↓の中に例が載ってるよ.ダメなら↓で紹介されている本に解説があるよ.
http://cwoweb2.bai.ne.jp/~jgb11101/files/log.html
0151132人目の素数さん
2006/12/29(金) 06:59:51使い分けられないと頭の悪い人みたいだし
0152132人目の素数さん
2006/12/29(金) 07:10:340153132人目の素数さん
2006/12/31(日) 14:12:010154age
2007/01/04(木) 21:42:020155132人目の素数さん
2007/01/06(土) 13:29:21Meadowにhelp文章を表示させる方法はわかりますか?
(Windowsだと別のヘルプ用のフレームが開いてしまいます。)
0156132人目の素数さん
2007/01/06(土) 18:57:120157132人目の素数さん
2007/01/06(土) 19:07:17Winodwsは周囲にないので試せないけど、ダメ元で
M-x ess-help ENTERキー
(Help on) ヘルプ表示させたいコマンド名
をやってみて。essユーザはhelp()の代わりにess-help-modeを便利に使うよ。
ess-helpコマンドはRプロセスが動いていないと使えないよ。
0158132人目の素数さん
2007/01/06(土) 21:49:04ダメでした。同じようにヘルプ用のフレームが起ち上がります。
0159132人目の素数さん
2007/01/07(日) 00:07:15できますか? t.test()があるのでnorm.test()もあるかと思ったらなかったので。
0160132人目の素数さん
2007/01/08(月) 00:14:54Meadowの設定の問題じゃないの?
手元ではデフォルトで大丈夫だし。
>>159
できるよ。具体的な問題書いたらいいと思うよ。
気が向けば誰か答えてくれるよ。
ていうか今高校の教科書で区間推定とか検定とかやるの?
0161132人目の素数さん
2007/01/09(火) 23:43:50Meadowでの設定は
(setq inferior-R-program-name
"c:/Program Files/R/R-2.4.1/bin/Rterm.exe")
(require 'ess-site)
以外に何をおこなってますか?
よかったら教えてください。
0162132人目の素数さん
2007/01/11(木) 00:10:03(setq inferior-R-program-name
"c:/Program Files/R/R-2.4.1/bin/Rterm.exe")
だったかな。
もしかして新しいフレームが出てくるって、同じウィンドウが2分割されて、下側にhelpが出てくるってことをいってんの?
それとも新しいウィンドウが開いちゃうってことをいってんの?
0163132人目の素数さん
2007/01/12(金) 22:27:31新しいフレームというのは,WindowsでESSからではなく,普通にRを起動する
と,RGuiが開きますよね。そのR Consoleでhelp()したときに起動するフレー
ムのことです。
ちなみに当方のessはversion5.3.3です。
0164132人目の素数さん
2007/01/15(月) 07:15:43WITH_ATLAS=yes とすると
...
...
mkdir ../../../../library/grDevices/libs
というところでビルドが止まってしまいます.
atlas は
WITH_OPTIMIZED_FLAGS=yes
WITH_STATICLIB=yes
して作ってあるのですが...
どなたか解決法をご存知ではありませんでしょうか?
0165132人目の素数さん
2007/01/21(日) 04:45:51プログラム落ちてないですかね?
ご存知の方教えてください。
0166132人目の素数さん
2007/01/21(日) 09:49:21意味不明です。データの相関行列とは違うのですね?
0167132人目の素数さん
2007/01/21(日) 23:33:480168132人目の素数さん
2007/01/21(日) 23:35:43正規分布って言ってる時点で、パラメータとしての相関係数は与えなくちゃ駄目なんじゃないのか?
標本データからの推定値を求めたいのなら話はわかるが、、、。
0169165
2007/01/22(月) 20:14:00自分も理解不足でした。
標本のデータがありまして、多変量正規分布と多変量楕円分布のパラメータをそれぞれ求めろといわれたのですが、
いまいちやり方がわかりません。
Rをつかってやるというのがいまいちわからなくて・・・
ヒントだけでもいいので教えてください。
0170132人目の素数さん
2007/01/22(月) 22:50:14モデル推計値とサンプルの値が全然フィットしません。
どのような問題点が考えられるでしょうか?
0171132人目の素数さん
2007/01/23(火) 02:41:57データが少ないか定常でないか。
0172132人目の素数さん
2007/01/23(火) 11:21:13パラメータの推定量を調べろ。式のないものは計算できん。
Rは式を計算しているに過ぎんからな。
0173132人目の素数さん
2007/01/24(水) 23:42:27初歩的な質問ですみませんが、わかる方ご教授のほうをお願いいたします。
データがテキストの改行区切りで2000行あり、
そのデータについての分布を知りたいためヒストグラムをだし、
そのデータの平均値、分散を調べてそのヒストグラムの上に重ねて出したいのですが、
やり方がわかりません。
ヒストグラムの部分については
x<-read.table("data.txt")
hist(x([,1])←この部分がうまくいきません。
正規分布については
a1<-0.005162005;#平均
a2<-0.0000773858;#分散
Nbunpu<-function(x) 1/sqrt(2*pi*a2)*exp(-(x-a1)^2/(2*a2));
という風にやっています。
重ね方については
hist()←?
par(new=T)
plot(Nbunpu,-0.5,0.5)
でやればいいのかなと思うのですが・・・
宜しく御願い致します。
0174132人目の素数さん
2007/01/25(木) 00:15:45なぜhistがうまくいかないのかはデータを見ないと分かりません。
見出しの変数名がついていたりしませんか?
x<-scan("data.txt")
でエラーが出るなら数値データ以外の何かが含まれています。
0175173
2007/01/25(木) 00:24:22データはたしかに数値データのみです。
> hist(x([,1])
エラー:syntax error in "hist(x(["
のようなエラーがでました。
0176132人目の素数さん
2007/01/25(木) 07:34:32scanは試したの?試してエラーがなかったのならhist(x)でうまくいくはずだけど。
(2列以上データがあって1列だけ使いたいならread.tableしかだめだけどね。)
なお、数値データと思いこんでる場合もあるよ。たとえば「1,000」なんてコンマを
入れたりするけどRでは文字列にされちゃうよ。
0177173
2007/01/26(金) 00:02:26scanは試しました。特にエラーは出ませんでした。
データが8列500行ぐらいあるのでread.tableしかだめなようですね。
エラーがsyntax errorなので、文法的に間違っているのかとかいろいろ考えたのですが・・・
もう少しがんばってみます。ありがとうございました。
0178132人目の素数さん
2007/01/26(金) 01:30:42scanが使えるなら
x <- matrix(scan("data.txt"),ncol=8)
で十分じゃないの?
まさかと思うけどx[,1]のコンマをピリオドと間違ってたというような
落ちじゃないよね?
0179173
2007/01/26(金) 12:03:378列入ったデータをそのままやるとどうしてもエラーが起きるので、
プログラム的にはかっこ悪いですが、手作業で1列だけのデータを8つ作り、
それを動かしてみたらうまく動きました。
2列以上のデータに対してhist(x[,1])とかは使えないのでしょうか?
いやそんなわけないですよねぇ・・・
とりあえず、提出用のものができました。
ありがとうございました。
0180132人目の素数さん
2007/01/26(金) 12:07:42> 2列以上のデータに対してhist(x[,1])とかは使えない
意味わかんない。
> x <- cbind(a=runif(10),b=runif(10))
> hist(x[,1])
やってみな。
0181132人目の素数さん
2007/01/26(金) 17:52:14>>175
> hist(x([,1])
エラー:syntax error in "hist(x(["
scanとかそんなことはどうでもよくて、xの後の括弧が余計なんだよ
0183132人目の素数さん
2007/01/31(水) 23:16:55エクセルの内容の一部を取り込みたいのですが、以下のようなメッセージがでます。
read.delimを使うのに何か気をつけねばならないことがあるのでしょうか?
使用しているのはR(2.4.1)です。
>> x<-read.delim("clipboad")
>以下にエラーfile(file, "r") : コネクションを開くことができません
>追加情報: Warning message:
>ファイル 'clipboad' を開くことができません, 理由は'No such file or directory'です
0184132人目の素数さん
2007/02/01(木) 00:15:06ここに貼り付けた通りなら綴りが違うんじゃあ…。
clipboardっすよ。
0185132人目の素数さん
2007/02/01(木) 07:45:25どうもありがとう!ぶじ出来ました!!
しかしなんて初歩的な・・・。穴にもぐりたいです。
0186132人目の素数さん
2007/02/01(木) 16:35:31変数選択を行おうとするとメモリが足りないとのエラーが出てしまいます。
データは24000件、従属変数は2種類、説明変数は105次元です。
以下のようにしているのですが、
メモリを割り当てるための設定は他にあればご教授願います。
環境はFreeBSD、R2.3.0です。
以下実行例です:
% R --max-vsize=1500M --max-nsize=50M
...
result <- lm(Cat ~ ., data = df)
result2 <- step(result)
...
エラー;サイズ 18562Kb のベクトルを割り当てることができません。
0187132人目の素数さん
2007/02/01(木) 21:01:050188132人目の素数さん
2007/02/05(月) 18:16:190189132人目の素数さん
2007/02/16(金) 04:33:01単語にしてくれと切に願う。
0190132人目の素数さん
2007/02/18(日) 11:10:241.24000からランダムに非復元抽出で1000くらい抽出する
2.1000掛ける107の行列で変数選択,たとえば10個くらいの残る
3.24000掛ける12のデータで確認する,2と殆ど変わらんゾ
無作為に1000抽出すれば,元のデータと
相関係数は0.005以下のズレしかないから,実用的には
これで十分
むしろ24000で変数選択するとNが多すぎて
ゴミみたいな変数を拾いがちになるよ
0191132人目の素数さん
2007/02/20(火) 14:56:34csv形式で8000行9列程度のデータをインポートしようとするとRがフリーズします.
データを少なくして2000行9列程度でやってみるとかろうじて読み込んでくれるようなんですけど
8000行で読み込みたいので教えてください
0192132人目の素数さん
2007/02/20(火) 16:40:040194132人目の素数さん
2007/02/20(火) 18:18:310195132人目の素数さん
2007/02/20(火) 18:39:59かわいそうに。。。
0196132人目の素数さん
2007/02/20(火) 19:39:070197132人目の素数さん
2007/02/20(火) 20:59:250198132人目の素数さん
2007/02/25(日) 22:36:36ttp://www.ae.keio.ac.jp/lab/soc/takeuchi/japla/index.html
ttp://www.jsoftware.com/
0199132人目の素数さん
2007/03/05(月) 15:32:08Rでモンテカルロシミュレーションをやろうと思っています。
ファクターは、2種類で、
ひとつは対数正規分布にもうひとつは正規分布な乱数にて数字を出し、
最後に両者を掛け合わせる形になります。
具体的な手順、ソースに参考になるページなどご存知の方は、
ぜひ情報をいただけると幸いです。
0200132人目の素数さん
2007/03/11(日) 21:27:300201132人目の素数さん
2007/03/14(水) 14:37:04そのくらいなら、R-tips みれば一発じゃね?
http://cse.naro.affrc.go.jp/takezawa/r-tips/r.html
0202132人目の素数さん
2007/03/21(水) 12:47:48例えば、
f_n (x) = x+n (n=1,2,...,100)
のような100個の関数を定義したいのですが、
f <- list(NA)
for (i in 1:100){ f[[i]] <- function(x){ x+i }}
のようにすると、f[[1]](関数fの1番目の要素)は、
function(x){ x+i }
となり、iが残ったままの形で定義されてしまいます。
ちなみに定義したい理由は、
別の関数の引数として用いるためです。
0203132人目の素数さん
2007/03/21(水) 16:20:182変数関数じゃだめなわけ?
0204132人目の素数さん
2007/03/21(水) 19:41:22おれも>>203と同意見
hoge <- function(x,n) {
return(x+n)
}
0205202
2007/03/22(木) 05:35:47Rに boot() というbootstrap関数があって、
(私の理解では)この関数は一変数の関数を引数とする関数です。
なので、あくまで1変数の関数のを定義したいのですが。
0206132人目の素数さん
2007/03/22(木) 11:23:50だったらベクトルを引数にしてc(x,n)で対応することはできない?
その一変数ってスカラー限定?
0207132人目の素数さん
2007/03/22(木) 14:15:39f<-sapply(1:10,function(i)eval(parse(text=paste("function(x){x+",i,"}"))))
とか
f<-list()
for(i in 1:10)f[[i]]<-eval(parse(text=paste("function(x){x+",i,"}")))
とか
0208202
2007/03/22(木) 17:45:46確かにそうですね。その関数はデータフレームを引数とする関数
なのですが、そのデータフレームに新たに列を追加して、その全ての
行の値をnにしておけば、対応できそうな気がします!
>>207
おー、これはすごい。保存させていただきます。
eval や paste を使って...と自分でも思っていたのですが、
細かい仕様をきちんと理解していないためできませんでした。
お二方、どうもありがとうございました!
0209132人目の素数さん
2007/03/26(月) 13:06:33Rでインライン関数や構造体、クラスは使えるのでしょうか。
0210132人目の素数さん
2007/03/28(水) 18:58:12http://www.amazon.co.jp/exec/obidos/ASIN/4431712186
0211132人目の素数さん
2007/03/31(土) 10:26:35WINDOWS XPに
This is Meadow-3.00-dev (KIKU)
based on GNU Emacs 22.0.90.1 (i386-mingw-nt5.1.2600)
Last Changed Rev: 4181
をnetinstallerでインストールした後、
ESS-5.3.3のインストールを試みています。
Meadowは入ったのですが、
まず、ESSのバイトコンパイルができません。
しないで適当にESSをsite-lispのところにおき、
,emacsに(require 'ess-site)を書いて立ち上げたら、
一応、ESSを認識しているようなんで、
ためしにM-x Rをしてみたら
let: Lisp nesting exceeds `max-lisp-eval-depth'
と表示され、なにも起こりません。
このトラブルに対処できる方法を
誰かご存知ありませんか?
0212132人目の素数さん
2007/04/01(日) 02:56:15どなたかご存じでしたら教えて下さい。
0213132人目の素数さん
2007/04/07(土) 23:26:34Sではなく、S-Plusになってしまいますが。
「誰でも参加可能な無料の講習会」をお探しかもしれませんが、何のメリットにも
ならないことをしてくれる奇特な人はいないでしょう。
0214132人目の素数さん
2007/04/08(日) 02:51:40平成19年はどうなるかわからないけど、統計数理研究所が公開講座を開いています。
0215212
2007/04/08(日) 21:38:52当方、万年予算不足の九州の小さな研究所に勤務しているため、教えていただいた2つの講習会に参加できるか分かりませんが、休暇が取れれば自費ででも参加してみたいと思います。
0216132人目の素数さん
2007/04/11(水) 15:15:01九州の大学教員だけど、Rの講習会をすれば需要があるのかな?
0217212
2007/04/12(木) 18:50:43自分の周囲ですが、Rを使い始めた、または興味をもっている人は多数います。
もし講習会を開いていただけるのであれば、ぜひ参加させていただきたいと思います。
0218132人目の素数さん
2007/04/12(木) 20:46:040219132人目の素数さん
2007/04/16(月) 09:15:53R言語・環境って書いたら先生にもっとマシな言いよう無いか調べてくれと言われました。
0220132人目の素数さん
2007/04/16(月) 10:17:23データ解析環境R
引用は
@Manual{,
title = {R: A Language and Environment for Statistical Computing},
author = {{R Development Core Team}},
organization = {R Foundation for Statistical Computing},
address = {Vienna, Austria},
year = {2006},
note = {{ISBN} 3-900051-07-0},
url = {http://www.R-project.org},
}
Bib形式が分からなかったら、適当な文献ソフトに読み込ませろ。
0221132人目の素数さん
2007/04/16(月) 17:38:31データ解析環境R ですね。
早速先生に聞いてみます。
どうも有り難うございました。
0222132人目の素数さん
2007/04/17(火) 10:35:000223132人目の素数さん
2007/04/18(水) 00:33:58Rがインストールされていないところでも動くようにということ?それは無理だろ。
0224132人目の素数さん
2007/04/19(木) 20:29:38Rソースをコンパイルして(実行バイナリにして)利用する方法
がRjpwikiで以前に話題になった。ひょっとしたら関係あるかも。
0225132人目の素数さん
2007/04/20(金) 00:12:12探してみたが見あたらない…。
Rそのもののコンパイルの話かRからCなどで作った実行ファイルを呼び出す方法
なら見つかるのだが、それとの勘違いではないの?
0226132人目の素数さん
2007/04/20(金) 12:36:01Rを呼び出すことは可能ですか?
Rをインストールしてある前提です。
0227224
2007/04/20(金) 12:53:58ttp://www.okada.jp.org/RWiki/?Tierney%20%BB%E1%A4%CE%20R%20%A5%D0%A5%A4%A5%C8%A5%B3%A5%F3%A5%D1%A5%A4%A5%E9%A1%BC
改めて読むとexeにはなりそうもないな。。。
0228132人目の素数さん
2007/04/20(金) 20:40:24RExcelというのがあるが、
http://www.okada.jp.org/RWiki/?RExcel
これはExcel上にRのコマンドを書いて呼び出していたと思う。
Excelのコマンド操作のみというのがマウスで選ぶだけというような
意味ならそれからほど遠い。
0229132人目の素数さん
2007/04/21(土) 15:50:050230132人目の素数さん
2007/04/21(土) 18:38:40Rをコマンドとして呼び出して標準入出力で計算させることができるみたいだよ。
0231132人目の素数さん
2007/05/03(木) 14:07:36列ベクトルが定数倍の関係になくても、
p-valueが1になっちゃうことが多いのはどうしてなのかしら?
0232132人目の素数さん
2007/05/03(木) 22:42:222007/04/26
後藤大地
さまざまな機能追加やバグ修正が実施されているが、ユーザが直接関係する主な変更は次のとおり。
apropos(x)およびfind(x)をx文字に対して動作するように変更。この変更にともなってすべての非標準な
評価をすべてドロップデータフレームにおいてas.matrix()によってカバーできない列名が自動的に列名を
持つように変更
アトミックベクトルにおいて$を使う場合に警告が出力されるように変更
UNIXコマンドラインインタフェースのコマンド補完のようなRオブジェクト補完機能が有効になった。無効に
したい場合は環境変数R_COMPLETION=FALSEを設定すればよい
Rで提供している統計機能は線形モデル、非線形モデル、古典統計テスト、時系列分析、分類、クラスタ
リングやグラフィックテクニックなど多岐に渡り、高い拡張性も実現している。
(全文)http://journal.mycom.co.jp/news/2007/04/26/007/
----------------------------------------------------
http://cran.r-project.org/src/base/R-2/
↑
どうやって落とすの?
0233132人目の素数さん
2007/05/04(金) 12:26:21フツーに落として
tar xzf R-2.5.0.tar.gz
cd R-2.5.0
./configure; make; make install
0234132人目の素数さん
2007/05/04(金) 12:28:210235132人目の素数さん
2007/05/04(金) 15:22:06何遍かスペースバーを押す。
ローマ入力の場合はローマ字入力の人に聞いてね♪
0236132人目の素数さん
2007/05/04(金) 17:27:210237KingOfUniverse ◆667la1PjK2
2007/05/04(金) 18:03:420238132人目の素数さん
2007/05/04(金) 22:32:490239132人目の素数さん
2007/05/06(日) 23:19:33まずp値が両側で計算されていること、
また、その計算がデータを含めて超幾何分布でそれより確率の小さなものの
合計で求められていること、が理由です。
それにより定数倍から多少ずれてもそのデータが確率的に一番起こりやすいもので
ある限り表示されるp値は1となるようです。
0240132人目の素数さん
2007/05/22(火) 01:50:50参考になるサイト知りませんか
0241132人目の素数さん
2007/05/23(水) 12:01:22> RSiteSearch('java')
とりあえず、これを実行する。
0242132人目の素数さん
2007/05/23(水) 15:07:24Cygwinで使えますか?
0243132人目の素数さん
2007/05/24(木) 15:56:46RJAVAでうまくいきました
NETBEANSからのコントロールも可能になりました
お騒がせしました
これで関数ライブラリが自在に使えます
0244132人目の素数さん
2007/05/24(木) 16:28:58誰か作ってくれないかな、楽しみです
0245132人目の素数さん
2007/05/28(月) 12:38:491000個程度のデータの判別分析にかかる時間を調べたい、って時とかに
0246132人目の素数さん
2007/05/28(月) 22:29:11やりたい計算
run_time = unclass(Sys.time())-start_time
0248132人目の素数さん
2007/05/31(木) 13:21:14SJava, rJava, RMySQL を、64bit Linux(CentOS) サーバにインストールできま
せん。
http://cran.md.tsukuba.ac.jp/bin/linux/redhat/el4/x86_64/
ここからRPMを落とし、
R-2.5.0-2.rh4.x86_64.rpm
R-debuginfo-2.5.0-2.rh4.x86_64.rpm
libRmath-2.5.0-2.rh4.x86_64.rpm
libRmath-devel-2.5.0-2.rh4.x86_64.rpm
をインストールしました。
R-devel-2.5.0-2.rh4.x86_64.rpmは、Xが必要なので入れていませんが、これだ
けでコンソールの作業は出来るようなので、良しとしました。
http://www.okada.jp.org/RWiki/index.php?R%A4%C8Java
・SJava : http://www.omegahat.org/RSJava/
R INSTALL -c SJava_0.69-0.tar.gz を実行するも、エラーメッセージ(文字化け)。
>library(SJava)はエラーに。
0249248
2007/05/31(木) 13:25:09>install.packages("rJava") を実行するも、エラー
*** JDK is incomplete! Please make sure you have a complete JDK. JRE is *not* sufficient.
configure: error: ./configure failed for jri
ERROR: configuration failed for package 'rJava'
・RMySQL : http://www.okada.jp.org/RWiki/index.php?RMySQL
>install.packages("RMySQL") がエラー。
Configuration error:
could not find the MySQL installation include and/or library
directories. Manually specify the location of the MySQL
libraries and the header files and re-run R CMD INSTALL.
以上、どれもうまくいきません。
お察しの通り、ほとんど予備知識なしで手探りでやっております。何か手がか
りをいただけたらと思います。
なお、Java はBEAの jrockit-R26.4.0-jdk1.5.0_06, MySQL は 5.0.24 が
それぞれRPMインストールしてあります。
0250132人目の素数さん
2007/05/31(木) 15:01:17低レベルのjavaでの操作ならrJavaのjri.jarを使ったほうが
すんなり運用できます
rJavaパッケージのjriホルダに生成されます
docが無いようなのですが、サンプルを見ればすぐ分かると思います
JDKをSUNかIBMにしないとエラーを吐き出すようです
0252132人目の素数さん
2007/05/31(木) 16:53:38aicは$AICでしか算出できないんでしょうか
総当りになり時間がかかるため、もう少し早い方法がないか
知りたいんですが
0253248
2007/05/31(木) 18:35:59Java から R を利用するライブラリが必要なのです。
JGR のインストールはうまくいかなかったので、
http://www.rosuda.org/JGR/1.0/JRI_0.1-2.tar.gz
をダウンロードし、make all すればいいかと思ったのですが、
たくさんエラーが出てしまいます。
cc -c -o src/Rengine.o src/Rengine.c -g -Iinclude -Isrc/include -fPIC -I/usr/local/java/jdk1.5.0_12//include -I/usr/local/java/jdk1.5.0_12//include/linux -I/usr/lib64/R/src/include -I/usr/lib64/R/include
src/Rengine.c: In function `Java_org_rosuda_JRI_Rengine_rniParse':
src/Rengine.c:89: error: 関数 `R_ParseVector' への引数が少なすぎます
src/Rengine.c: In function `Java_org_rosuda_JRI_Rengine_rniEval':
src/Rengine.c:101: 警告: 異なるサイズの整数からポインタにキャストされました
…
(略)
0254132人目の素数さん
2007/05/31(木) 18:44:37付属するパッケージがインストールされたら読み込んで
もう一度JGRをインストール
一回じゃうまくいきませんでした
付属するパッケージは3つ位あってその中にrJavaがあります
JRIはrJavaに入っていますのでjri.jarにClasspathを通せば使えるようになります
0255248
2007/05/31(木) 19:02:50Sun のJava1.5に替えたところ、rJavaはインストールできました。
/usr/lib64/R/library/rJava/jri/ に、JRI.jar が出来ていました。
今から試してみます。
0256132人目の素数さん
2007/05/31(木) 21:09:52ちなみに私はNetBeansでjavaを書いてますが
順調に動いてます
JRIとjavaのアプリケーションとの間にコマンド用のインターフェース
をかませたりもしてます。
少し速度が遅くなるように感じますがその辺の対策があったら
是非教えてください
0257132人目の素数さん
2007/06/11(月) 02:50:38どうしたらいいでせうか?
as.POSIXct とかだと普通に変換する方法がわからないとか言われます・・・
0258132人目の素数さん
2007/06/14(木) 11:54:51ISOdatetime(1970, 1, 1, 0, 0, "UTC") + x
0259132人目の素数さん
2007/06/20(水) 14:21:21重回帰分析(lm関数)でモデルを作成した後に、
モデルから算出される推定値を出力させたいのですが、
どのようにやるのかわかりません。
残差については、「resid」で出せるのですが。。
後、ベクトル自己回帰分析(VaR分析:ar関数)の際の推定値も同様なのでしょうか?
知っている方がいらっしゃったら、ご教示ください。
0260132人目の素数さん
2007/06/22(金) 18:22:53white.test(x,y)という引数が2つ必要なことはわかるのですが、
それぞれに何をいれたらいいのかがわかりません。
使っている方がいらっしゃいましたら、ご教示下さい。
0261132人目の素数さん
2007/06/23(土) 20:06:28なぜヘルプを見ない?
> ?white.test
0262132人目の素数さん
2007/06/23(土) 20:09:51model <- lm(.....)
predict(model)
ベクトル自己回帰はやったことないのでパス.
0263132人目の素数さん
2007/06/24(日) 13:38:12ありがとうございます。
ヘルプを見てもいまいちピンとこなかったもので。。
ようやく理解できました。
predictは予測だけにしか使えないと感違いしてました。
よくよく考えると同じ理論値を出しているものですもんね。
非常に助かりました。ありがとうございます。
0264132人目の素数さん
2007/06/28(木) 02:43:240265132人目の素数さん
2007/06/28(木) 09:50:08?NA として出るヘルプのタイトルみてみ。
0266132人目の素数さん
2007/06/28(木) 21:21:49ありがとうございました.
やっぱり,not availableだったんですね.
これの訳が,欠損値になると想像できませんでした.
0267132人目の素数さん
2007/06/29(金) 02:01:420268132人目の素数さん
2007/06/29(金) 08:56:55をすべて求めたいんですが、Rではどのようにしたらいいんですか?
0269132人目の素数さん
2007/06/29(金) 10:41:17あんまりよくないんじゃないかと思う答え:
> e <- 1:50
> for(n in e ) if(2^n == n^2) print(ex)
forとかapply系使わないでももっときれいに書けそうだな。
0270132人目の素数さん
2007/06/29(金) 10:43:43まちがえた。最後のprint(ex)はprint(n).
0271132人目の素数さん
2007/06/29(金) 17:17:51> n <- 1:50; 2^n - n^2
[1] 1.000000e+00 0.000000e+00 -1.000000e+00 0.000000e+00 7.000000e+00
[6] 2.800000e+01 7.900000e+01 1.920000e+02 4.310000e+02 9.240000e+02
[11] 1.927000e+03 3.952000e+03 8.023000e+03 1.618800e+04 3.254300e+04
[16] 6.528000e+04 1.307830e+05 2.618200e+05 5.239270e+05 1.048176e+06
[21] 2.096711e+06 4.193820e+06 8.388079e+06 1.677664e+07 3.355381e+07
[26] 6.710819e+07 1.342170e+08 2.684347e+08 5.368701e+08 1.073741e+09
[31] 2.147483e+09 4.294966e+09 8.589934e+09 1.717987e+10 3.435974e+10
[36] 6.871948e+10 1.374390e+11 2.748779e+11 5.497558e+11 1.099512e+12
[41] 2.199023e+12 4.398047e+12 8.796093e+12 1.759219e+13 3.518437e+13
[46] 7.036874e+13 1.407375e+14 2.814750e+14 5.629500e+14 1.125900e+15
2個しかないんだな。
0272132人目の素数さん
2007/06/29(金) 18:54:01> n <- 1:50; n[2^n == n^2]
[1] 2 4
== を使った判定が正確かどうかは知らない。
0273132人目の素数さん
2007/06/30(土) 04:11:340274132人目の素数さん
2007/06/30(土) 12:21:38これって何を計算してるんですか?
0275132人目の素数さん
2007/06/30(土) 14:42:57diff(a)
0276132人目の素数さん
2007/06/30(土) 18:46:51a[-x] は、x番目の要素だけを除いた残りの要素を示すことに注意。
0277132人目の素数さん
2007/07/01(日) 15:25:59# weights: 1101
initial value 2949.497382
final value 1453.000000
converged
> pred = predict(mynet,Y[,-10],type="class")
以下にエラーswitch(type, raw = z, class = { :
inappropriate fit for class
このエラーが取れなくて困ってます。。。
彼は何にご不満なんでしょうか?
0278132人目の素数さん
2007/07/01(日) 17:11:21Value:
If 'type = "raw"', the matrix of values returned by the trained
network; if 'type = "class"', the corresponding class (which is
probably only useful if the net was generated by 'nnet.formula').
ヘルプぐらい嫁
0279132人目の素数さん
2007/07/01(日) 19:40:45まだ未解決なので、続投をお許しください。
分かったことは、このnnet.formulaが肝っぽいということと、
ヘルプはとても便利だということの2つ。
example(predict.nnet)で実行サンプルを見てみました。
species ~ .
↑このあたりを真似て書きたいと思うんですが、そのためには
colnamesなどで名前を付けてあげないといけないんでしょうか?
nnet.formulaってこのあたりの話ですよね。
0280132人目の素数さん
2007/07/01(日) 22:44:36?nnet.formula
ヘルプ嫁。
んでcolnamesで名前付けてあげないといけないと思ったんだったら試せ。
試してわからなかったら質問しろ。
そのときはコードも書け。
データすべて乗せる必要はないがデータ構造はわかるように。
0281132人目の素数さん
2007/07/02(月) 00:36:06ヘルプ見ても分からなかったので、コードをがっつり載せさせてください。
library(nnet)
s=100
it=1000
pre_year<-read.csv("4hour_2001.csv")
this_year<-read.csv("4hour_2002.csv")
num_p<-length(pre_year[,3])
num_t<-length(this_year[,3])
X<-matrix(1:(num_p-9)*10,num_p-9,10)
for(l in 1:(num_p-9)){
for(m in 1:9){
X[l,m]<-pre_year[l+m-1,3]
}
if(pre_year[l+m,3]>pre_year[l+m-1,3]){
X[l,10] = 1
} else if(pre_year[l+m,3]<pre_year[l+m-1,3]){
X[l,10] = -1
} else{
X[l,10] = 0
}
}
0282132人目の素数さん
2007/07/02(月) 00:46:49Y<-matrix(1:(num_t-9)*10,num_t-9,10)
for(l in 1:(num_t-9)){
for(m in 1:9){
Y[l,m]<-this_year[l+m-1,3]
}
if(this_year[l+m,3]>this_year[l+m-1,3]){
Y[l,10] = 1
} else if(this_year[l+m,3]<this_year[l+m-1,3]){
Y[l,10] = -1
} else{
Y[l,10] = 0
}
}
mynet = nnet(X[,-10],X[,10],size=s,maxit=it,MaxNWts=30000,lineout=T)
pred = predict(mynet,Y[,-10],type="class")
##
4hour_2001.csvと4hour_2002.csvは時系列データです。全て数字。
ニューラルへの入力は、2001年のデータを9コずつ横に並べて、
10コめの箱に教師信号として"クラス"を入れておきたい。
クラスは、+1, -1, 0の3種類。上がるか、下がるか、そのままか。
2001年のデータで学習をして、2002年のデータでテスト。
その結果を3種類のクラスに分類させたいとです。
丸投げ状態。。。 もういやん。
0283132人目の素数さん
2007/07/02(月) 00:51:30label~.とかやってみてるんですが。同じエラーから逃げられませんでした。。。
0284132人目の素数さん
2007/07/02(月) 23:02:21の意味を教えてください!
0285132人目の素数さん
2007/07/03(火) 22:58:08<ヒント>dnorm(x,mean,sd)となっているので,plot(function(x){dnorm(x,
mean=2, sd=1)},-3,6)のように1引数の関数に変換してから利用する.
グラフは(平均0,分散1),(平均0,分散4),(平均2,分散1),
(平均2,分散4)の場合について描け.
というもんだいなんですが、 plot(function(x){dnorm(x,
mean=2, sd=1)},-3,6)の -3 6がよくわかりません。
meanが平均で、sdが分散なんですか?
0286132人目の素数さん
2007/07/04(水) 21:05:25[1] 0 1 1 2 3 5 8
これってなにをやってるんですか??
0287132人目の素数さん
2007/07/05(木) 02:05:430288132人目の素数さん
2007/07/05(木) 03:14:29先にもやり取りがあったpredict(lm())の件なのですが
一期先予測をしたいときにpredictの引数をどのように設定すればいいのか教えてください
0289286
2007/07/05(木) 13:15:27274みたけどわかりません。分からなくて困ってますお願いします
0290132人目の素数さん
2007/07/05(木) 14:35:12c(1,1,2,3,5,8,13,21)を c(2,2,2,2,2,2,2,2)とかc(1,2,3,4,5,6,7,8)とか、その他いろいろ変えて試してみろ。
0291286
2007/07/05(木) 15:01:45cによらず同じ答えが返ってくるのはわかりましたが、
そのルールがわからないです・・・
0292132人目の素数さん
2007/07/06(金) 01:13:43> a<-c(1,2,3,4,5,6,7,8);a[-1]-a[-length(a)]
[1] 1 1 1 1 1 1 1
> a<-c(2,2,2,2,2,2,2,2);a[-1]-a[-length(a)]
[1] 0 0 0 0 0 0 0
> a<-c(2,2,3,2,2,1,2,2);a[-1]-a[-length(a)]
[1] 0 1 -1 0 -1 1 0
> a<-c(2,2,4,2,2,1,2,2);a[-1]-a[-length(a)]
[1] 0 2 -2 0 -1 1 0
0293132人目の素数さん
2007/07/06(金) 06:37:11もう少し自分で試行錯誤しないとものにならないよ。
0294286
2007/07/06(金) 20:45:160295774ワット発電中さん
2007/07/06(金) 22:08:53Rを何に使うつもりで質問していますか?
0296132人目の素数さん
2007/07/08(日) 23:38:43の件わかる方いらっしゃらないでしょうか
0297132人目の素数さん
2007/07/09(月) 00:33:040298132人目の素数さん
2007/07/09(月) 17:45:07お前の頼み方が気に入らない
0299132人目の素数さん
2007/07/12(木) 00:33:000300132人目の素数さん
2007/07/12(木) 06:57:380301132人目の素数さん
2007/07/13(金) 03:44:270302132人目の素数さん
2007/07/14(土) 18:26:460303132人目の素数さん
2007/07/14(土) 20:22:06実行環境くらい書かないとな。
質問のしかたが悪いと答えを得られる確率はとても低くなるよ。
0304302
2007/07/14(土) 21:03:59失礼しました.
Mac OS X Tiger i386 で R 2.5.1 です.
R は macports からインストールしています.
0305303
2007/07/14(土) 22:53:38Rのバージョンでどんどん変わるかも知れないのでリンクで示します。
ttp://www.okada.jp.org/RWiki/?Macintosh%C8%C7R%A4%CEFAQ
MacでR起動時に任意ディレクトリをHOMEするっていうのは簡単じゃないのか知れない。
ttp://www.okada.jp.org/RWiki/?%A5%D5%A5%A1%A5%A4%A5%EB%A4%F2%C6%C9%A4%DF%B9%FE%A4%E0%20tips%20%BD%B8%28%BB%C3%C4%EA%C8%C7%29#v3564e72
作業ワークスペースの内容を任意のファイルからリロードするのは実行パラメータで指定すれば簡単みたいだ。
0306132人目の素数さん
2007/07/16(月) 12:53:36未検証だけど、普通に~/.Rprofileにsetwd()を書いたらあかんの?
私の場合、MacOSX 10.4 だけど、emacs+ess使っているので、>>304のようなことを
したければ、essの設定をちょこっと変更する
0307132人目の素数さん
2007/07/18(水) 22:11:55一度書き加えたもの(例えばxlabelとか)
を書き換えたりできないのですか?
全消去しなきゃならないの?
0308132人目の素数さん
2007/07/18(水) 22:36:04上書きはできるはずだがうまくいったためしない。素直に書き直すのが吉。
初めはラベル入れないでグラフと凡例の図形だけ作って
Excelとかに貼り付けた後で入れるという手もある
見栄えを良くするために良く使っているが管理間違えると捏造になる。
0309307
2007/07/18(水) 23:03:44一度できたものの
書き換えができないのは
グラフ描画としては完全に致命的ですね
又、コマンドちまちまうてってか?
いやならわざわざスクリプトかけってのか?
完全に失望しました
0310132人目の素数さん
2007/07/18(水) 23:50:31統計で言うところのLDってなんですか
0311774ワット発電中さん
2007/07/19(木) 00:22:32グラフ描画ソフトじゃなくて統計解析ソフトだからな。
不満なら文句言ってないで自分で描画ルーチン書けばいいだけだな。
0312132人目の素数さん
2007/07/19(木) 01:14:390313132人目の素数さん
2007/07/19(木) 01:18:08>>307はオリジナルデータを持ってないと予想w。
0314132人目の素数さん
2007/07/19(木) 09:31:04例えば40人のデータがあって、テストの点数59点以下を不合格群、60点以上を合格群といった具合に
分けたい場合、何かいい方法ありますか?
リストに論理式を用いてと規定の行のみを抽出して加工しようとも思いましたが
行の値だけ抜き出しても、その値の行の値を変えるとか別次元のベクトルでラベル付け
しようかと試みましたがなかなかうまくいきません
0315132人目の素数さん
2007/07/19(木) 10:50:05全部消去の意味が不明だが、複雑な図を作るときは関数化して作図すると思うので、
コマンド1つで済むと思うけど。再描画がいやなら、むしろ面倒だけど、tgifやイラストレ
ータのようなドローソフトに読み込ませて編集する。
>>309
コマンド履歴のおかげで、一度タイプしたコマンドは2度と入力する必要がないし、入力
したコマンドを微修正して再実行するのは極めて容易ということに気がつけ
>>313
それなら理解できる。ドローソフトを使うことをすすめる
>>314
意図がよく分からないけど、こんな感じ?
a <- data.frame(score=round(runif(40)*100))
res <- cbind(a,decision=ifelse(a<60,'F','A'))
そもそもリスト項目へのラベルを自動でつけたいなら、
eval(parse(text=paste()))を使わないとできないと思う。
0316132人目の素数さん
2007/07/19(木) 22:38:4840人くらいだったらExce○のフィルタとかでやった方が簡単にできるw。
RExcelというアドインを使えばExce○からRを呼び出すこともできるし。
0317132人目の素数さん
2007/07/20(金) 22:35:14>>316
そんな便利なツールあるんですか?onWindowsじゃないんで使えませんがあったら便利そうですね
>>315
ありがとうございます
やりたいことはばっちりできました
で、甘えついでにもうひとつ質問させてください
ラベルデータ("F","F","T",NA,"T")
データ値1 (50,40,45,44,45)
データ値2 (10,15,18,17,20)
といったデータフレームがあったときに
ラベルデータ("F","F","T","T")
データ値1 (50,40,45,45)
データ値2 (10,15,18,20)
という値が返ってくる、つまりラベル項目に欠損値があった場合
その行のデータを取り除いたデータフレームを出力したいといった場合どうすればよいでしょう?
0318132人目の素数さん
2007/07/21(土) 00:34:30subset( data,!is.na(label) )
ですね
0319132人目の素数さん
2007/07/21(土) 16:22:180320132人目の素数さん
2007/07/21(土) 23:05:022分もたたないうちに宇宙船は爆発事故をおこし,乗組員は全員死亡した.次のデータは事故の原因
とされている,Oリングの過去23回の破損状態の記録である.シャトルは2つのブースターロケット
との推進力を借りて軌道まで打ち上げられるが,このブースターロケットはいくつかに分かれており,
それぞれをつなぐジョイント部で燃焼中の熱いガスをもらさないようにOリングが使われている.2
つのブースターロケットで全部で6個使われている.
1 53 2
2 57 1
3 58 1
4 63 1
5 66 0
・
・
・
20 76 0
21 78 0
22 79 0
23 81 0
破損割合pを各発射回ごとに推定してそれを,横軸に温度,縦軸に破損割合をとったグラフを作成
せよ.このとき,破損しなかった回をプロットからはずしたものと,入れたものの2種類のグラフを
作成せよ.
という宿題なんですが、破損割合の推定ってどうやるんですか?点推定ですか?
また、使用するデータの形式がどうなってるか良くわからないです。
53とかが温度(華氏)で 2とか1が破損回数なんですかね? 1回の打ち上げで、2回破損?
0321132人目の素数さん
2007/07/23(月) 16:32:01全くの人頼みだな。
自分で考えろよ。
0322132人目の素数さん
2007/07/24(火) 09:45:08どういう処理をしたらいすかね
ソートしてからabs関数使うとか?でも元の並びは変えたくないす
0323132人目の素数さん
2007/07/24(火) 12:41:47ソートとかabsとか意味が分からんが、
> haba <- 0.2
> aruatai <- 0.5
> a <- runif(100)
> a[((a> aruatai + haba) | (a < aruatai - haba))]
こういうこと?
0324132人目の素数さん
2007/07/24(火) 20:37:04破損割合の推定の仕方だけでも教えてもらえませんか?
0325132人目の素数さん
2007/07/25(水) 10:32:26[A]
ID SEX
1 F
2 M
3 M
[B]
ID WEIGHT
1 60
3 50
みたいなデータフレームを横結合して
[C]
ID SEX WEIGHT
1 F 60
2 M NA
3 M 50
って感じにしたいんだけど、どうすればいいんかな?
0326132人目の素数さん
2007/07/25(水) 11:27:44この書き込みについてる表だけじゃ列の意味もよくわからないよ。問題文の読み取り方から
間違っているんじゃないの?先生に直接きいてみたら?
>>325
> a <- data.frame(id=c(1,2,3),sex=c('F','M','M'))
> b <- data.frame(id=c(1,3),weight=c(60,50))
> c <- merge(a,b,by="id",all=T)
> c
id sex weight
1 1 F 60
2 2 M NA
3 3 M 50
0327132人目の素数さん
2007/07/25(水) 18:41:06アリガ�dです
0328132人目の素数さん
2007/07/25(水) 18:52:090329132人目の素数さん
2007/07/25(水) 20:44:26γ⌒/^^/^-
,ゝ`/~ /~ /~ /⌒
_ 〈(_| | |~ |~ /^ )
(/~ /~ /~ /~ ~ /~ /^\
()/)/~ /~ |~ .|~ |~ |~ /)
へ^〈,|,,、,,|,,、,,,,,|~,,,,、〈~,, 〈~ /⌒|)\
|::::::: ゛ ゛ ,,,,;;::'''''ヽ
|:::::::: ,,,,;;::::::::::::::: __ ヽ
|::: " __ :::: <'●, |
┌―. - '"-ゞ,●> ::::::... |
| | ̄.. ::::::: |
ヽ.\{_ ( ○ ,:○) | . '・,.、 .
\\/. ,'・, ,'・, . '・,.、、 .
\_ヽ. __,-'ニニニ,',ヽ . '・,.、 . '・,.、
.. ヽ. │ /,'・,.、’、′’、′′′‘‘‘、 .
\ │ │’、′′,.、 . '・,.、
| ヾニ二ン"|・ '・,.、’、
| /
ヽ\ /
l `ー-::、_ ,,..'|ヽ.
:人 `ー――''''' / ヽ
_/ `ー-、 ,.-'" \ー-、
,.-'" \: \ .,.-''" |
/. \ ~>、,.-''" |
,,..-‐'''"" ヾ ,.-''"| /――――、/
0330132人目の素数さん
2007/07/25(水) 22:39:41一番左のはRでデータ表示したときの行番号なんで無視してください
53 2
57 1
58 1
63 1
66 0
・
・
・
76 0
78 0
79 0
左側が打ち上げ時の温度で、右側が破損個数だそうです!
0331331
2007/07/25(水) 22:43:170332132人目の素数さん
2007/07/26(木) 10:25:53お、きちんと調べてきましたね。
これならわかるかな。
Oリングは合計で6つあるんだから、破損割合は破損個数を6でわればOkだね。
あとは破損割合と温度の間に関係があるか?という仮説に対して、
統計学的な答えを与えられれば、いいレポートになるんじゃないの。
0333132人目の素数さん
2007/07/26(木) 10:28:48「一期先予想」という言葉は聞いたことがないんだけど、
predict(model, newdata=data.frame(説明変数=xxx)) のこと?
0334132人目の素数さん
2007/07/26(木) 11:53:430335132人目の素数さん
2007/07/26(木) 12:26:16単純にそれでいいんですね。推定せよなんて立派な事書いてあったので、最尤推定とかするのかと思いました
横軸に温度,縦軸に破損割合をとったグラフを書くんですが、破損回数がゼロ回のときを抜いたものも
書かなきゃいけないんですが、Rではどうやるんですか?
実はこれだけじゃなくて、温度でグループわけして破損割合の区間推定なんかもしないといけないんですがw
0336132人目の素数さん
2007/07/27(金) 11:21:26一般的かどうかは業界によると思われ。
まぁいずれにせよpredictで。
>>335
1回の打ち上げにつきデータ一組しかないからmleとかfitdistrはないな。
破損回数がゼロ回をのぞくのは、データ抽出の問題。データフレームから、特定の変数が
特定の値になっている行だけをとりだす関数、あったよね。
逆に温度をカテゴリ化して,特定のカテゴリの破損割合を抽出して、その母平均の信頼区間...
という流れか。
0337132人目の素数さん
2007/07/27(金) 22:22:14カテゴリわけってどうやるんですか?
if(temp>=66){
g1=temp}
else{
g2=temp
みたいにすると 条件が長さが2以上なので,最初の一つだけが使われますって出てできないんです
0338132人目の素数さん
2007/07/27(金) 22:26:34温度が低いほうのグループがこんな風になったら、このグループでの破損割合pでどうやって求めるんですか?
(2+1+1+1)/6でいいんですか?
53 2
57 1
58 1
63 1
0339132人目の素数さん
2007/07/28(土) 23:58:19subsetとかで抽出するのも正解ではあるけど、
cutでファクタに変換してからx[temp=="(50,55)",]とかで抽出するほうが
Rらしいかな。
(2+1+1+1)/6 って、まさかとは思うが、
((2+1+1+1)/4)/6 のミスタイプだよな?
破損割合の平均値が求まったら、1標本t検定に使う関数で、平均値の
信頼区間を求めてみれば?
0340名無しさん@そうだ選挙に行こう
2007/07/29(日) 10:35:06温度が低いグループと高いグループでそれぞれp1,p2の破損確率が求まりました。
t.testを使った方法がわかりません。t.testの引数は一つですよね?
また気温がたとえば60度の時の破損確率を予測する方法もわかりません
0341132人目の素数さん
2007/07/30(月) 19:27:47データのほうは手をつけずに
0342132人目の素数さん
2007/07/30(月) 23:51:05t.test(c(2,1,1,1)/6) とかで破損確率の95%信頼区間をだせば?
予測は...このレベルの学生さんにlm()をやらせるとは豪気なw
0343132人目の素数さん
2007/07/30(月) 23:54:45列が大きい場合って経験したことがないですが、Rの制限でしょうか。
何列ぐらいのデータですか?
RでだめだとExcelでもだめだろうと思うので、あとはRubyとかPerlとかawkとかに
頼るしかないかと...
0344132人目の素数さん
2007/07/31(火) 00:01:52そもそもRで駄目ならRubyもPerlもawkも基本的に駄目でしょ。
SASはデータをメモリに読み込まないから大丈夫だと思うけど。
0345132人目の素数さん
2007/07/31(火) 06:56:50ん?1行をどういう方法で読み取るかによるので、Rではだめでも、Ruby等で
簡単に1つのCSVをいくつかのファイルに分割するスクリプトを書いて、分割した
ファイルをRで読み込めばよいのでは?
SASって読み込めるCSVファイルの列数も制限ないのかな...
まぁ、一度データセットになってしまえば確かに大規模データはマイニングソフトである
SASの得意分野だと思うけど。
0346132人目の素数さん
2007/07/31(火) 20:16:51複数のCSVファイルに分割しても結局Rに読み込むんでしょ?
デフォルトのRはオンメモリだから何も変わりません。
分割したファイル毎に分析を行い結果を統合…まず有り得ませんね。
SASはデータをHDにガリガリ書き込んでメモリを使わないのさ。
一部のプロシジャは別だけど。
0347132人目の素数さん
2007/08/05(日) 14:06:410348132人目の素数さん
2007/08/05(日) 14:40:52具体的に
0349132人目の素数さん
2007/08/05(日) 21:35:59そういう分野もあるかもね。さようなら。
自分の分野ではまったくそういう印象を受けないので、想像できないけど。
0350132人目の素数さん
2007/08/05(日) 23:37:330351132人目の素数さん
2007/08/07(火) 19:54:28一体何行書けば足りるのかって気になってくる
凡例書くのでさえ一苦労
0352132人目の素数さん
2007/08/07(火) 22:20:410353132人目の素数さん
2007/08/07(火) 23:19:51これがゆとりということか。
0354132人目の素数さん
2007/08/08(水) 22:15:380355132人目の素数さん
2007/08/08(水) 22:36:15凡例書くのにどれだけ手間とられてると思ってるんだよ!!!
プロット点の数字、色の数字、配置!(場所が座標指定w)
更に数式表現さえexpression
でわざわざ調べて書かなきゃいけない煩雑さ!
冗談じゃないよ!つくってるやつはなにやってんだ!
スクリプト?
いっとくがおれはzshとPerlマスターだ
その俺が頭にきてるんだ
猛省しろ
0356132人目の素数さん
2007/08/09(木) 05:10:50具体的に書いてみたら?
0357132人目の素数さん
2007/08/09(木) 05:48:58>いっとくがおれはzshとPerlマスターだ
( ゚∀゚)アハハ八八ノヽノヽノヽノ \ / \/ \
0358132人目の素数さん
2007/08/09(木) 16:23:190359132人目の素数さん
2007/08/09(木) 20:40:57gcl: Compute a fuzzy rules or tree classifier from data
fuzzyRankTests: Fuzzy Rank Tests and Confidence Intervals
>>355
まだ若い君の経験での評論と、世界中の第一線の統計学者が愛用している実績と、
どちらが信用できるかよく考えてみるといい。
効率的な使い方がわからなければ、質問することは恥ではないよ。
たとえばpdf()やpng()を使ってグラフの主要部分だけを書いて、凡例等は他のソフトでつける
テクニックとか、locator()関数で場所を指定する方法とかね。
0360132人目の素数さん
2007/08/09(木) 21:59:390361361
2007/08/09(木) 22:11:280362132人目の素数さん
2007/08/09(木) 23:00:080363132人目の素数さん
2007/08/10(金) 01:57:31もうちょっとグラフを簡単に書けるようにしなきゃいけない、
っては事実だと思うよ。
グラフの書式は、エクセルみたいに手でいじれるようにするとか。
数式とかも、せめてTEXと同じ書式で入力できたら楽なのに。
0364132人目の素数さん
2007/08/10(金) 02:54:35頑張って作ってくれw
0365132人目の素数さん
2007/08/10(金) 03:27:200366366
2007/08/10(金) 22:13:110367132人目の素数さん
2007/08/12(日) 00:43:29.call("○○")
とかなっているんですが、この場合cのソースとかはどこを調べればいいんでしょう?
また、cのコードを編集するにはどうすればいいんでしょう?
0368132人目の素数さん
2007/08/12(日) 01:23:44> この場合cのソースとかはどこを調べればいいんでしょう?
CRANへ行ってソースファイルを見る
> cのコードを編集するにはどうすればいいんでしょう?
テキストエディタで編集する
ソースを検索したいなら、例のgonzuiサイトが便利。
0369132人目の素数さん
2007/08/27(月) 02:47:430370132人目の素数さん
2007/09/03(月) 18:18:43処理を行って、データフレームを生成すると、出力時に1列目に
1
2
...
と番号を振ってくれるのですが、そのデータフレームをファイルの保存する際に
その振ってくれた番号を一緒に保存してしまい、列がひとつ右にずれてしまいます
また、空のデータ項目があった際、たとえば
"aaa"\t""\t"bbb"\t
のような時にCSVファイルに書き出そうとしたらaaaからbbbまでをひとつの文字列として認識してしまい
結果項目数がおかしくなり、これまたずれが生じてしまいます
何かよい解決方法ご存知の方、ご教授お願いします
使用しているのはVer2.50です
0371132人目の素数さん
2007/09/03(月) 18:35:09しかもずれるのは行数によってマチマチです
aaa,\t,bbb をひとつの文字列として認識したり
AAA,\t までをひとつとして認識したり
前後のaaaやbbbのアスキーコードとかの関係かもしれませんが
0372132人目の素数さん
2007/09/03(月) 20:11:34多くで使われてることと使いやすさはほとんど関係ないよ。
これはソフトウェアインターフェイス設計では常識。
0373132人目の素数さん
2007/09/03(月) 22:58:38データの書き出し関数のオプション弄れば消せなかったっけ?
英語が苦手なので…ってのはナシな
0374132人目の素数さん
2007/09/04(火) 16:05:14オプションで番号問題は解決しました
write.table(x, file=" ",row.names=FALSE)
が、文字列データの区切りは相変わらずうまくいきません
NAでなくても、連続する日本語データでも、区切りがなくなる文字があるようです
0375答えは100
2007/09/04(火) 22:23:37表示をlessみたいにページ単位でやらせるには、どうすればよいですか?
0376132人目の素数さん
2007/09/06(木) 08:41:52write.tableでオプションをがしがしつけていいけど、write.csvとかwrite.csv2を使わないのはなぜ?
>>375
lessがページャだとしっていれば
?page
linuxならemacs+essを使うとらくだよ。
0377132人目の素数さん
2007/09/07(金) 01:27:52X11()を行うとフォントパスがおかしいと言われて表示できないんですが、
何が足りないか分かる人いますか?
コマンドオンリーでウィンドウは開けないとか?
0378132人目の素数さん
2007/09/07(金) 09:32:52役に立たなくて申し訳ないが、こちらは問題なし。
0379132人目の素数さん
2007/09/07(金) 23:28:16情報ありがとう!
実はあの後別のマシンで試したら確かに普通にX11ウィンドウが使えた。
やはりRのソフトそのものには問題はなさそう。
しかし、もう一方のマシンではなぜ同じように入れたのにフォントパスが
おかしいと言われるのだろう?謎は深まるばかりです…。
0380132人目の素数さん
2007/09/08(土) 14:52:39"R" 実習で学ぶ統計的シミュレーション入門セミナー 大阪大学 坂本亘准教授
日時:2007年9月18日(火) 12:30-16:30 会場:大井町きゅりあん4階
http://www.johokiko.co.jp/seminar_medical/AA070911.php
0381132人目の素数さん
2007/09/09(日) 02:56:32Rで新しく動的にディレクトリ作成するにはどうしたらよかですか?
write.csv(x,paste(sys.date(),"kekka"))
0382379
2007/09/11(火) 00:07:37一体あのエラーは何だったんだろう…。
0383132人目の素数さん
2007/09/11(火) 19:53:46環境をかきなよ。
system("mkdir $(date +%Y%m%d)")
で今日なら20070911というディレクトリが出来るけど。
0384132人目の素数さん
2007/09/19(水) 11:27:19前スレでは Meadow + ESS が紹介されていましたが。
また、xyzzy で R を書くのに適したモードはありませんか?
0385132人目の素数さん
2007/09/20(木) 11:31:462007-09-20 11:27:17.098 R[659] tossing reply message sequence 1 on thread 0x567d0a0
こんなメッセージが赤い字で出てました。
これは一体なんでしょうか?
R version 2.5.1 (2007-06-27)
R 2.5.1 GUI 1.20 (4535)(4535)OSXです。
0386132人目の素数さん
2007/09/20(木) 16:45:36for (i in 10:20) {
shapiro.test(1:i)
}
と書くと、ループ内の行の出力がでなくなるのですが、
これはどうしてですか?
0387132人目の素数さん
2007/09/20(木) 17:32:15うちの環境では出ないので、Application EnhancerとかGrowlとか、
アプリの起動時に何かさせる拡張系が組み込まれている環境特有な
現象のような気がする。
0388132人目の素数さん
2007/09/21(金) 04:21:33for (i in 10:20) {
print(shapiro.test(1:i) )
}
でいけるかと
Rってソートは遅いみたい?ですねPHPで組んだプログラムより遅いくらいな気が
結果だけ出してCでソートするモジュール書いたほうがいいですかね?
みなさんソートとかするときどうしてます?
0389385
2007/09/21(金) 09:06:22一旦終了してから起動し直すと出なくなります。
でも、システムを起動し直し、Rを動かすと(一回目に限り)やはり出てきます。
実害は無さそうなので、気にはなるけれど、目をそらすことにします。
ありがとうございました。
0390132人目の素数さん
2007/09/22(土) 15:38:190391132人目の素数さん
2007/09/22(土) 18:28:36/\ /|
/ /| \/ |(\ /)
/ / | \|( ゚ー゚) <全力でWindowsを捨てOpenBSDに移行せよ
/ / | __〃`ヽ 〈_ OpenBSD
/ γ´⌒´-−ヾvーヽ⌒ヽ OpenOffice.org+Wine
//⌒ ィ theo`i´ pf ); `ヽ FireFox+Xfce+uim+anthy
// ノ^ 、___¥__人 | ClamAV+Snort+Privoxy+Tor
/ ! ,,,ノ爻\_ _人 ノr;^ > )
/ ( <_ \ヘ、,, __,+、__rノ/ /
ヽ_ \ )ゝ、__,+、_ア〃 /
ヽ、___ ヽ.=┬─┬〈 ソ、
〈J .〉、| |, |ヽ-´
/"" | sshd |: |
レ :|: | リ
/ ノ|__| |
↑ /| ,, ソ ヽ )
\_/ .,ゝ ) イ ヽ ノ
y `レl 〈´ リ
/ ノ | | .
l / l;; |
〉 〈 〉 |
/ ::| (_ヽ \、
(。mnノ `ヽnm
0392132人目の素数さん
2007/09/22(土) 19:13:22Open厨からは回答いらね。
0393132人目の素数さん
2007/09/25(火) 22:16:57R で多倍長整数(桁数に制限のない整数)を扱うことはできますか?
たとえば 1000!を正確に計算する、といった用途です。
0394132人目の素数さん
2007/09/26(水) 04:09:59多倍長整数を操作する関数群、パッケージ gmp
2chで聞く前に
http://www.okada.jp.org/RWiki/?cmd=search
で検索くらいはしませう。
0396393
2007/09/26(水) 12:32:43おお、ありがとうございます!
たしかに検索したらあっさり見つかりました。すみません。
http://www.okada.jp.org/RWiki/?cmd=read&page=%C3%CE%A4%C3%A4%C6%A4%A4%A4%EB%A4%C8%A4%A4%A4%C4%A4%AB%CC%F2%A4%CB%CE%A9%A4%C4%28%3F%29%B4%D8%BF%F4%C3%A3&word=%C2%BF%C7%DC%C4%B9%C0%B0%BF%F4#if259a3d
1000! は
> library(gmp)
> prod.bigz(1:1000)
で求めることができました。
>>395
数学板にも騙りとかやる人がいるんですねえ。
まあ、馬鹿は当たってます。
0397132人目の素数さん
2007/09/27(木) 00:58:19「あるまる」
0398132人目の素数さん
2007/09/27(木) 08:27:480399132人目の素数さん
2007/09/29(土) 02:31:04Quartzではグラフで日本語が通るのですが(青木先生の.Rprofile設定)、
Carbon Emacs+ESS 5.3でX11上で日本語をグラフ出力すると文字化けしてしまいます。
どなたか対策をご存じの方いらっしゃいますでしょうか。。
0400399
2007/09/29(土) 02:48:240401132人目の素数さん
2007/09/30(日) 12:26:45いったい何十年前の機能しかもってないのかっての
0402132人目の素数さん
2007/09/30(日) 13:37:04SPSSやSASでもGUIでは出来ないこと多いかと。
それより、Rでは変数が多い場合のデータハンドリングに結構工夫が求められるかと。
0403132人目の素数さん
2007/10/01(月) 18:50:22MacOSXでessを使っている仲間を発見!
エラーメッセージなどの字化けはどうやって回避しているの?
こちらはあきらめてLC_ALLをCにして使っています。
0404132人目の素数さん
2007/10/01(月) 18:57:40オープンソースの文化では、いいだしっぺの法則というのがあります。
> RはGUI機能がまともではない
不満ならあなたが作りなさい。
> RSiteSearch("widget")
私は不満ではないです、っていうか、Rcmdrみたいなのならいらん。
0405132人目の素数さん
2007/10/04(木) 15:06:57ページ閲覧中に、Rを再呼び出しして、再び解析を行い、ファイルを生成したものを画面表示したいのですが
<?php
system("R < rscript.R");
?>
としましてもうまく動いてくれません
ためしに書き出す先のパーミッションを777にしてみたり、パスをすべてフルパスに記述し直したりもしたのですが
うまく動きません
PHPの話題も織り交ざってますが、識者の方回答のほうよろしくおねがいします。
0406405
2007/10/04(木) 15:18:350407132人目の素数さん
2007/10/04(木) 15:22:31引き続き回答よろしくお願いします
0408132人目の素数さん
2007/10/04(木) 18:15:190409774ワット発電中さん
2007/10/05(金) 01:54:250410132人目の素数さん
2007/10/05(金) 12:45:29そもそもそのWebサーバのターミナルで R < rscript.R が期待通りになる?
0411405
2007/10/05(金) 12:58:390412132人目の素数さん
2007/10/07(日) 11:18:26通用しないみたいな印象があるんですが、臨床疫学論文でR使ってもアクセプトされるんでしょうか?
0413132人目の素数さん
2007/10/07(日) 12:17:550414132人目の素数さん
2007/10/07(日) 23:31:23別に問題ないが、医療機器買う金ある所なんだからS−PLUS位は買えばいいと思うし
必要なら有償の追加パッケージも購入すれば楽だ。
それだけの費用出してもらったら研究にもプレッシャーがかかってモチベーション上がるし。
結果だけが必要ならわざわざ無理してRを使う必要はないと思う。
0415132人目の素数さん
2007/10/08(月) 03:30:39せっかくRExcel入れたけど、R Startさせるとマクロの文字列関数のとこでボロボロに落ちる
Left$やMid$が使えねえってどういうことだ? 文字コードが対応してないのかなあ。
0416132人目の素数さん
2007/10/09(火) 01:40:152003はどのREXCELで対応してるのか誰か教えてください
0417132人目の素数さん
2007/10/12(金) 15:38:540418132人目の素数さん
2007/10/12(金) 15:42:56文字(データ300個×42項目)がゆっくり入力されてしまい、かなり時間が掛かります。
何かよい方法はないでしょうか?
0419132人目の素数さん
2007/10/12(金) 21:21:22早く改良しろよ!
0420132人目の素数さん
2007/10/13(土) 05:56:35普段使いでない入力用機械を一台用意する。
クリップボードからではなく、ファイルから読み出すようにする。
0421132人目の素数さん
2007/10/13(土) 21:22:362005-12-01,45.14
2005-11-01,45.95
2005-10-03,45.74
これをread.table(fname,sep=",")で読んで、
data.frame()に格納したいとき、
as.Date(tbl[,1])
as.numeric(tbl[,2])
などという変換は必要でしょうか。
もしくは何か意味があるのでしょうか?
どうかよろしくお願いします。
0422132人目の素数さん
2007/10/14(日) 01:46:51というか、質問したかったのは、as.XXX という
変換ってなんのためにあるのでしょうか?
as の意味がよくわかりません。C言語でいう
キャストみたいなものでしょうか?
でも、無しでもなんとなくできてしまいそうな感じがするので、、、、
0423132人目の素数さん
2007/10/14(日) 12:19:33逆にStringやfactorが入っていると動かないものもある。
as.Dateは使った事ないが、
関数の中でDate形式だけに特化した機能を持たせるor厳密な設計がされている場合は必須になる。
>421の2列目のnumericに関してはis(tbl[2])でnumericなら不要だろ。
0424132人目の素数さん
2007/10/15(月) 09:02:50ありがとうございました!
なるほど、as.Dateがどういう意味なのか分かったような
気がします。とりあえず、もともとついていたので、as.Date
はつけて、as.numericは外してやってみようとおもいます。
0425132人目の素数さん
2007/10/16(火) 15:37:11適当な数字を10個返す関数を作るとき、print()を
使うと画面に表示はされますが、返り値としては
扱われませんでした。
samp = function(x) {
for (i in 1:10) {
print(x)
}
}
これってどのように書くべきでしょうか
0426132人目の素数さん
2007/10/16(火) 16:32:22a = 1
for (i in 2:10) {
a = c(a,i)
}
a
}
こう書いたらできたけど、正しいですか?
0427132人目の素数さん
2007/10/17(水) 07:01:46どなたかお教えください。
0428132人目の素数さん
2007/10/17(水) 07:17:53http://www.okada.jp.org/RWiki/?R%A4%CE%B4%D8%BF%F4%C4%EA%B5%C1%A4%CE%B4%F0%CB%DC
0429132人目の素数さん
2007/10/17(水) 07:48:37ありがとう!
カスと言われても全然いやじゃない。とてもうれしいよ、そのリンク先。
0430132人目の素数さん
2007/10/18(木) 08:59:17if (x == 0) {return(1)}
else {return(0)}
}
として、
plot(foo,-1,1)
とすると、以下のエラーになってしまいます。何が間違っているのでしょうか?
> plot(foo,-1,1)
以下にエラー xy.coords(x, y, xlabel, ylabel, log) :
'x' and 'y' lengths differ
追加情報: Warning message:
In if (x == 0) { : 条件が長さが2以上なので,最初の一つだけが使われます
0431132人目の素数さん
2007/10/18(木) 09:09:05foo()以前に、plot(0,-1,1)でエラーになる時点で気づけよ
0432132人目の素数さん
2007/10/18(木) 09:40:51でもplot(sin,-1,1)ができるのに、定数関数が描けないのはなんで
でしょうか?
というか、foo()をプロットする方法はないでしょうか。
foo(1:10)とかやってもダメでした。
(sin(1:10)はできた。)
どうかお教えください。
0433132人目の素数さん
2007/10/18(木) 11:26:11自己レスです。
わかりました。ベクトル化ということですね。
foo <- function(x) {
temp <- function(x) {
if (x == 0) {return(1)}
else {return(0)}
}
sapply(x,temp)
}
と書けばplot()できました。
0434132人目の素数さん
2007/10/18(木) 13:46:14R にはマルチスレッドを扱う機能はあるのでしょうか?
JavaのWEBアプリから呼び出そうかと思っているのですが、呼び出すたびに新し
いプロセスが立ち上がってしまうと、リソースを食いすぎて困ると思いますの
で、何とか一つの環境で複数のスレッドを実行させたいのです。
0435434
2007/10/18(木) 16:54:57RVPMを調べてみます。
http://science4.2ch.net/test/read.cgi/math/1062650510/561
R本体にはスレッドコントロールをするAPIはないような感じ。
マルチスレッド版のBLASを使うぐらいか。
R-helpにはRVPMっていう名前がでてきたけど、ぐぐってもひっかからない...
0436434
2007/10/18(木) 17:05:49×RVPM → ○RPVM
どうりで「ぐぐってもひっかからない...」わけです。
CRAN - Package rpvm
http://cran.r-project.org/src/contrib/Descriptions/rpvm.html
Parallel Virtual Machine - Wikipedia
http://ja.wikipedia.org/wiki/Parallel_Virtual_Machine
> PVMをインストールすると、ネットワークに接続された複数台のコンピュータ
> を、単一の計算機として利用するができるようになる。
なんだ、それでは話が逆じゃないか。こちらは1台のマシンで複数のスレッド
を動かしたいのに。
どうやら、マルチスレッドで動作する Javaプログラムからのリクエストを、一
つのRのプロセスで処理するのは、無理ということかなあ。
0437132人目の素数さん
2007/10/18(木) 19:02:010438132人目の素数さん
2007/10/18(木) 19:29:32Rをさわり始めた頃の自分を見ているようだ
hoge <- function(x) {
ifelse(x==0,1,0)
}
> hoge(1:10)
[1] 0 0 0 0 0 0 0 0 0 0
> hoge(-5:5)
[1] 0 0 0 0 0 1 0 0 0 0 0
0439434
2007/10/18(木) 21:16:44> MPIでもPVMでもいいが、プロセスレベルで並列化してもいいんじゃん。snow
> とかつかえば簡単ぽいし。
Rのプロセスは1つが最低25MBも食うので、プロセスレベルの並列化は、ユーザ
が多数同時アクセスしてきたら困るのです。
> 単にマルチスレッドのJavaプログラムからブロッキングなしでよびたいだけ
> ならRSOAPだっていいし。
これですね。
http://www.okada.jp.org/RWiki/index.php?R%A4%C8Web%A5%B5%A1%BC%A5%D3%A5%B9
これに、R自体をマルチスレッドで動かす機能があるのでしょうか?
0440132人目の素数さん
2007/10/19(金) 07:22:04実メモリにワークスペース置ききらないマシンに実行させても嬉しくない気がする。
0441132人目の素数さん
2007/10/19(金) 09:37:23自分はC++はそこそこ使えて、schemeはなんとか読めて、というくらいなのですが、
Rは両方のいいとこをとったような文法と、ライブラリが充実してるのがいいです。
ifelseはベクトル化されているからそっちを使えということですよね。
ありがとうございます。
0442434
2007/10/19(金) 12:24:27一つ一つのスレッドは、せいぜい50X50の行列を解くだけなので、そんなにメモ
リは食わないはずなんです。少なくとも25MBは行かないと思う。
0443132人目の素数さん
2007/10/19(金) 18:40:57そのくらいだったら直接R使わないで一旦行列演算ライブラリでマルチスレッド化したほうが良くないかな?
その結果をユーザースレッドID付きでRのデータスペースに戻してきてRで処理した方が効率的な気がする。
まあ作る手間とのトレードオフだけど。
0444132人目の素数さん
2007/10/20(土) 02:01:14そうですね。全部Javaで済ませることも検討します。
0445434
2007/10/20(土) 02:02:160446132人目の素数さん
2007/10/20(土) 22:08:31自動補完してくれる機能はないのですか?
0447132人目の素数さん
2007/10/22(月) 17:18:56そのためのess
0448132人目の素数さん
2007/10/22(月) 22:37:13あれ?なんで俺が・・・?
0449132人目の素数さん
2007/10/24(水) 10:18:34書こうと思ってます。そこで質問なのですが、plot()で線分を表示する
のってどうやればいいですか?
0450132人目の素数さん
2007/10/24(水) 11:15:36add=TRUEでもlines()でも好きなのを使え
0451132人目の素数さん
2007/10/24(水) 11:32:37ありがとうございます。でもlines()でうまくいきません。
c(1,1) -> c(3,4)
c(1.1,1.1) -> c(4,5)
...
という感じの点から点への対応のリストがあって、これを図示したいのですが、
lines()って点を2つ与えると線をかいてくれるのですか?
0452132人目の素数さん
2007/10/24(水) 14:07:32> plot(runif(10)*10,runif(10)*10)
> lines(c(1,3),c(1,4))
> lines(c(1.1,4),c(1.1,5))
普通に線を引けるけど。
0453132人目の素数さん
2007/10/24(水) 14:23:26ありがとう。たしかに452が書いてくれた順序でやるとlines()も動きました。
でも、plot()よりも先にlines()を実行すると、lines()が正しく動きませんでした。
> lines(c(1,3),c(1,4))
以下にエラー plot.xy(xy.coords(x, y), type = type, ...) :
まだ plot.new が呼ばれていません
とか出ます。
でもとりあえずこれでできそうなので、やってみます。
ありがとうございました。
0454132人目の素数さん
2007/10/24(水) 23:05:55形が不規則でちゃんとした四角形になって
ないとき全データを含んだ
Matrix型にしたい(所々の空白はNA)
んだけどどうしてもできない
なにかよい方法は?
かなりの大きさだし
縦横の大きさは前もって決めておきたくない(なぜなら数知る必要があるから)
あくまでソフト側で自動で判別できてくれて
全データを含んだMatrix型がほしい
どうすればいいのか?
0455132人目の素数さん
2007/10/24(水) 23:18:31先にExcelで整形しておいてRExcel使え
0456454
2007/10/25(木) 18:05:38マクロの文字列関数がおかしい
Excel2003で最新のやつインスコ
してこれだ
完全に>>455にだまされた
0457132人目の素数さん
2007/10/25(木) 18:40:13これをpower analysis出来ますか?
0458132人目の素数さん
2007/10/26(金) 05:16:49そういうケースならcsvを直接読み込むんじゃなくて、sdf(固定長)に変換
してからread.table()にすれば?俺ならCPANにあるText::CSV_XSまたは
Text::CSVのお世話になるな。もし、与えられたデータ形式がCSVという
縛りがないなら、最初からsdfを使った方がいいんじゃね。
もし、文字列データの中にカンマを決して含まないとか、ごく単純なCSVに
限定した話なら、Rだけで何とかなるけどね。
0459132人目の素数さん
2007/10/26(金) 06:08:50おまえらカスだな。
RExcelだめなのは>>415-416で既出だろ。
0460132人目の素数さん
2007/10/26(金) 08:34:50グラフを上下逆転表示したいのですがそのようなコマンドはありますか?
仕入値、売上値を同時にグラフ表示するのですが重なってしまって見難いので
仕入値は下から上に向かって正
売上値は上から下に向かって正
というようにしたいのですが・・・
ちょっと考えたのは、売上値の最大値から各売上値のデータを引き算したデータを作って
それを描画するという事なんですが、もう少し簡単な方法がないかと・・・
0461132人目の素数さん
2007/10/26(金) 17:03:25折れ線か棒グラフか?棒グラフの1つのカテゴリーを逆さにするのはアリだと思うけど、
折れ線グラフだと、そんな変な図はかえって見にくいと思う。
0462132人目の素数さん
2007/10/27(土) 18:58:04par(new=T)してplotで点として描いてるんだけど、点の数が数万〜数十万になるので前に描いたグラフが新しく描かれたグラフの下に消えてしまい・・・上下逆転できればいいなと思いまして。
0463132人目の素数さん
2007/10/28(日) 12:41:43データフレームを追加したいとき、どうすればよいですか?
list <- c(list, data_frame)
とするとlistが変になってしまうし、
list==> (df1, df2, df3, df4)
データフレームを追加
list==> (df1, df2, df3, df4, df5)
となってほしいのです。どうかよろしくお願いします。
0464132人目の素数さん
2007/10/28(日) 12:53:08x <- list(NULL, NULL, NULL, (目的の数だけ))
としておいて、
x[[i]]としてアクセスする、
とできますが、これだと追加ができないのと、NULLの数が増えたときに
Rの中だけではスクリプトを作成できない(難しい?)です。
今はemacsのマクロでやってます。
0465132人目の素数さん
2007/10/28(日) 19:07:28ん?
list <- data.frame(list, new_data_frame)
ってだけじゃない?
0466132人目の素数さん
2007/10/29(月) 03:56:37ありがとうございます。
そうやると、データフレーム同士のデータが混ざってしまって
うまくいかないようなのですが。。。
とりあえず今はl <- list(NULL, NULL, .......)というのを手動で作成して
l[[i]]という感じで使っています。
0467132人目の素数さん
2007/10/29(月) 04:13:20l <- list(NULL, NULL, .......)は不要と思うけど。
単純に[[i]]を使えばよいと思う。
> a <- list(data.frame(x=1:10,y=runif(10)),data.frame(x=1:10,y=runif(10)))
このaに新しいデータフレームを足したいのであれば、
> b <- data.frame(x=month.name[1:10],y=runif(10))
というbがあったとして、
a[[length(a)+1]] <- b
とすればよいだけ。
0468132人目の素数さん
2007/10/29(月) 19:41:20混ざったらだめだったんだね…。
ならば
list <- c(list,list(data_frame))
ではどう?
0469132人目の素数さん
2007/10/30(火) 09:32:35よくそんなの思いつくな。感心した。
0470132人目の素数さん
2007/10/30(火) 10:13:23すげえ、、、、できました!
ありがとうございます!
でも、なんかトリッキーな感じですね。
0471132人目の素数さん
2007/10/30(火) 12:23:07lst<-list()
lst[[1]]<-data.frame(x=1:10,y=runif(10))
lst$df2<-data.frame(x=1:10,y=runif(10))
0472467
2007/10/30(火) 13:03:39>>471と同じく>>467の方法が正当派だと思うんだけど。。。
説明が回りくどかったのか?>>468の表記をまねれば、
番号なら、
list[[length(list)+1]] <- data_frame
名前付きなら、
list$hoge <- data_frame
0473132人目の素数さん
2007/11/03(土) 20:40:15業界によるということは、重回帰分析を時系列のn+1番目の値の予測には
使わない>>334使うはその業界の慣習に過ぎず、当否の理論的裏づけは
ないのですね?
0474132人目の素数さん
2007/11/05(月) 22:08:04例えば,次の(4x4)行列
1,2,3,4
2,3,4,5
3,4,5,6
6,7,8,9
の第2行目と第4行目の足し算を行ない,
1,2,3,4
8,10,12,14
3,4,5,6
という(3x4)行列を生成するようなもの。
0475132人目の素数さん
2007/11/06(火) 00:33:59AtamaTsukaeTako<-function(mat,r1,r2){
z<-rbind(mat[r1,]+mat[r2,],mat[c(-r1,-r2),])
z
}
> zz
[,1] [,2] [,3]
[1,] 1 4 7
[2,] 2 5 8
[3,] 3 6 9
> AtamaTsukaeTako(zz,1,2)
[,1] [,2] [,3]
[1,] 3 9 15
[2,] 3 6 9
こんなんか?
0476132人目の素数さん
2007/11/06(火) 13:04:30ほんとに純粋な疑問なので気分を悪くしないで欲しい。
AtamaTsukaeTako <- function(mat,r1,r2){
rbind(mat[r1,]+mat[r2,],mat[c(-r1,-r2),])
}
とせずにわざわざzを経由するのはなぜ?
>>474
> a <- matrix(c(1:4,2:5,3:6,6:9),nrow=4,byrow=TRUE)
> a
[,1] [,2] [,3] [,4]
[1,] 1 2 3 4
[2,] 2 3 4 5
[3,] 3 4 5 6
[4,] 6 7 8 9
> rbind(a[1,],a[2,]+a[4,],a[3,])
[,1] [,2] [,3] [,4]
[1,] 1 2 3 4
[2,] 8 10 12 14
[3,] 3 4 5 6
0477132人目の素数さん
2007/11/06(火) 23:18:08http://cruel.org/other/rumors2007_2.html#item2007110501
> 求む求むウェーブレットのグラフ (eps形式)! メキシカンハットと
> Meyer. ファンシーなものは不要で、リンク先にあるのと同じ単純なものを
> eps 形式でいただければ幸甚。形式そろえたいのでセットでくださいな、と
> いうより両者を左右ならべて(メキシカンハットが左)横長のeps一本にし
> てくださいな。matlabかなんか持ってる人は一瞬で出るでしょ。
本に名前を載せる、または R の名を売るチャンスか?
0478132人目の素数さん
2007/11/06(火) 23:21:53出力を明確にする。
デバッグが容易。
個人的趣味。
そんだけ
0479132人目の素数さん
2007/11/10(土) 15:05:04詳しい方教えて下さい。
残差にAR(1)過程を仮定したFGLSってこのソフトでどのようにやるのかご存知の方はいらっしゃいますか?
0480132人目の素数さん
2007/11/11(日) 06:53:12その中にで出てこない変な名前の関数があります。
これってどこをみれば実装がみられますか?
0481132人目の素数さん
2007/11/11(日) 08:33:34Rのソース
パッケージならパッケージのソース
そのソースがありませんとか言うなよw
0482132人目の素数さん
2007/11/11(日) 12:47:150483132人目の素数さん
2007/11/11(日) 13:57:02少数は含んでいないのでoptions(digits=10)では対応できないみたいです。
0484132人目の素数さん
2007/11/11(日) 14:54:35何やりたいの?
0485132人目の素数さん
2007/11/11(日) 15:15:35400,000,000 を整数表示するのは異常ですか?
指数表記だと落ち着かないんですよね。
0486132人目の素数さん
2007/11/12(月) 05:02:15ありがとう。
bootライブラリのソースをダウンロードしてくるとその中にありました。
linuxのrpmでinstallした場合って、ライブラリについてはバイナリしか
installされないみたい。
なんかバグっぽいのがあるので(単なる勘違いの可能性も十分あり)ソースを
見てみます。ありがとうございました。
0487132人目の素数さん
2007/11/12(月) 14:22:39一般的に、バイナリのrpmをインストールしてもソースは含まれませんよ。
ソースが必要ならsrc.rpmの方をダウンロードしないと。
0488132人目の素数さん
2007/11/12(月) 16:37:20Windows版のRですが、OS付属のCMDから R(Enter)で起動すると、問題なく動き
ます。しかし、Cygwin の bash から起動すると、
~ $ R
Fatal error: you must specify '--save', '--no-save' or '--vanilla'
というエラーが出ます。
これらのオプションをつけて起動すると、エラーは出なくなりますが、どうも
正常に動いていないようです。例えば
plot(1:10, 1:10)
でグラフが表示されません(CMDならウィンドウが現れてグラフが表示されます)。
これは一体なぜでしょう?そしてどう対処したらよいのでしょうか?
OSはWindowsXPです。
0489132人目の素数さん
2007/11/12(月) 16:59:30Windowsのことは全く知らないで当てずっぽうだが、Rのオプションしては、
初期ファイルへのパスが通っていないと予想。プロットされてないのは、X
window systemがインストールされていないまたはきちんと設定されてな
いないと予想。
0490488
2007/11/12(月) 20:25:47ありがとうございます。
初期ファイルへのパスですが、Cygwin環境のパスは、Windows標準のコマンド
プロンプトのパスにいろいろ付け加えたものなので、パスが通っていないとい
うことは考えにくいのです。
X Window についてですが、Windows版の R は、Cygwin環境から起動すると、そ
れを自分で判断して Xクライアントになるということでしょうか?かなり驚き
です。
確かに私は CygwinのX環境は、使うつもりがないのでインストールしていませ
ん。R にはCygwin環境からでも、通常のWindowsソフトとして起動してもらい
たいものです。何か起動オプションがあるかと思いましたが、見つかりません
でした。
どうしたものかなあ。X環境はかさばるので、できたら導入したくないのですが。
0491132人目の素数さん
2007/11/12(月) 21:58:14Windowsのコマンドライン用にも関わらず、
Cygwinでコマンドを呼びだすとLinuxふうの環境変数が渡されちゃうからそのエラーが出るのでは?
当然Xクライアントにもならないとオモ
やるとしたらCygwinのbashでWindowsのアプリケーションを明示的に呼び出す方法があれば使うくらいじゃね?
0492132人目の素数さん
2007/11/12(月) 23:11:490493132人目の素数さん
2007/11/12(月) 23:21:48自分のところで試したら普通に動いたけど…。
Rのバージョンはいくつ?こちらは少し古くて2.2.1だけど
CygwinのbashからRと打つだけで動いてplotもできたよ。
Xウインドウ環境は入れてないよ。
パスはWindowsの方の環境で設定されてるよ。
0494488
2007/11/12(月) 23:22:16ありがとうございます。分かりませんが、おそらくそれで正解のような気がし
ます。問題は、もう私の今の技術力では解決不能ということです。うう...。
とりあえずは諦めて、Windows標準のCMDから立ち上げます。ありがとうござい
ました。
0495488
2007/11/12(月) 23:28:24>>493
~ $ R --version
R version 2.4.1 (2006-12-18)
こんな感じです。
そちらでは
> plot(1:10, 1:10)
は表示されますか?
実はこちらでは、上の式はダメですが、R-tipsの28ページに載っているrglの図
2.24 のグラフは、不完全ながら表示されました。plotがすべてダメというわ
けではないようです。
単純に、バージョンを上げたら解決するのかも知れません。
すみませんが、今日はこれでPCを離れます。失礼します。
0496488
2007/11/13(火) 11:21:45~ $ R --version
R version 2.6.0 (2007-10-03)
Copyright (C) 2007 The R Foundation for Statistical Computing
ISBN 3-900051-07-0
0497132人目の素数さん
2007/11/13(火) 20:10:41Cygwinの方に問題があるのでしょうかねえ。
こちらのものはだいぶ前に入れたので古いです。
たとえばbashのバージョンは2.05b-16でした。
(今は3.2.25-17なので相当古いですね…。
古い方がうまく動くとかでしょうか?)
0498488
2007/11/13(火) 22:20:43ありがとうございます。
ちょっと分かりませんが、やはりCygwinから起動するとXクライアントになっ
てしまうのかもしれませんね。
まあ、それっぽい情報はぜんぜん見つからないのですが。
他に最新のCygwinとRをお使いの方はいらっしゃいませんか?
もしかしたら、ESSを使えば問題ないのかな、と思ったりしますが。
0499132人目の素数さん
2007/11/13(火) 22:49:03ttp://kavaro.com/mediawiki/index.php/R_project%27s_GNU_R_for_Maemo
動くのかしら?
0500132人目の素数さん
2007/11/14(水) 09:53:31ESSも多分ダメだろw
ありゃshellだから。
ESSならMeadowでやるとすんなり使えるけど。
0501132人目の素数さん
2007/11/14(水) 09:59:47コマンドって無い?
(所謂、統計本の巻末に載っているようなカイ二乗値の
表で任意の自由度、危険率の境界値が得たい)
これって自分で式を組まなければいけないのでしょうか。
0502488
2007/11/14(水) 14:41:47cygwinでRはできる? なんでも掲示板アーカイブ(1)
http://www.okada.jp.org/RWiki/?%A4%CA%A4%F3%A4%C7%A4%E2%B7%C7%BC%A8%C8%C4%A5%A2%A1%BC%A5%AB%A5%A4%A5%D6%A1%CA%A3%B1%A1%CB#content_1_4
Cygwin とR のインストール
http://web.archive.org/web/20060313154358/http://www1.accsnet.ne.jp/~gen/R-rev/cygwin-R.html
http://web.archive.org/web/20060313154421/http://www1.accsnet.ne.jp/~gen/R-rev/cygwin-R.pdf
Cygwin00/Section10 - Windowsで始めるBioinformatics
http://tetralog.mydns.jp:8080/biowin/index.php?Cygwin00%2FSection10
tetraの外部記憶箱 - R on Cygwin
http://tetralog.mydns.jp:8080/t/?date=20060324
> ポイントは、以下の通り。
> Rのインストール先をCygwinと同一にする事。
> Rの設定ファイル(Rconsole)をホームディレクトリに置いておく。
> Rterm.exeを使う場合には、文字コードをShift-jisにする事。ターミナルに
> rxvtを使っているのであれば、「$ rxvt -km sjis」とするか、“.Xdefaults”
> 辺りに「Rxvt.multichar_encoding: sjis」と書き込んでおく。
---------------
ということで、再度挑戦してみました。
・Rの古いバージョン R 2.2.1 (December, 2005)を利用
http://cran.md.tsukuba.ac.jp/bin/windows/base/old/
・Cygwinは最新
・c:\cygwinにRをインストールする
0503488
2007/11/14(水) 14:47:21結果は、やはりダメですた...。
~ $ R
Fatal error: you must specify '--save', '--no-save' or '--vanilla'
上の記事では 2006-03-24 に成功しているのですから、それより昔のバージョ
ンを使ってみたのですが、うまく行きませんでした。Rのバージョンのせいでは
なかったようです。
また、CygwinからだとXクライアントになってしまう、という線も薄くなってき
ました。
-----
それゆけBioinformatics: Cygwin でR & Bioconductorを使う2
http://bioinfo-goto.seesaa.net/article/565719.html
この記事では、>>502の記事とは違い、R を c:\cygwin にはインストールして
いませんが、問題なくRterm が動いているようです。ちょっと古い
(2004-09-08) 記事ですが。
ますます分からなくなってきました。
0504132人目の素数さん
2007/11/14(水) 19:38:14どこの設定で変えれるのでしょうか
R 2.2.0を使っています
0505132人目の素数さん
2007/11/14(水) 19:59:16options(digits=好きな数字)
0507132人目の素数さん
2007/11/14(水) 23:38:22自分は詳しくないんでアレだけど、
もしかしたら >>393->>396 の多倍長整数ライブラリしかないかも。
もしそうなら結構不便ですね。
この辺はPythonでNumpyとかを使ってた方が楽だった。
0508132人目の素数さん
2007/11/15(木) 00:21:07ありがとうございました。
ちょっと不便ですね。
0509132人目の素数さん
2007/11/15(木) 00:58:34まだ解決しないんですね…。
CygwinからRguiと打つとWindowsのRは起動するのでしょうか?
それともそれもだめなのでしょうか?
また、起動オプションで--no-saveだけで動くなら起動時に
画面に無保証であるとかの文言は日本語で出るのでしょうか?
0510132人目の素数さん
2007/11/15(木) 01:06:510511488
2007/11/15(木) 01:22:06>>500
Meadowは重くて、あまり好きではないのです。
>>509
> CygwinからRguiと打つとWindowsのRは起動するのでしょうか?
これはちゃんと起動します。plot(1:10, 1:10)も問題なく実行できます。
> また、起動オプションで--no-saveだけで動くなら起動時に
> 画面に無保証であるとかの文言は日本語で出るのでしょうか?
はい、日本語でちゃんと出ます。
>>510
パスが通っていなければ、そもそもエラーどころか起動しないのでは?
Rguiは問題なく起動できますし。
0512132人目の素数さん
2007/11/15(木) 01:29:26でもなんでRGUIをcygwin経由で呼び出すのかがわかりませんですね
0513132人目の素数さん
2007/11/15(木) 01:30:000514132人目の素数さん
2007/11/15(木) 02:39:05パスがちゃんと通っているかの確認だけ。
さて、Cygwinをバージョンアップしてみたが、Rは問題なく動いた。
(Rは2.2.1のまま)
>>513
setで見る限りLIBの設定などないのだが、ちゃんと動いてる。
さらで入れるのとバージョンアップでは何か違うのか?それとも他の原因か?
0515132人目の素数さん
2007/11/15(木) 03:07:43setってwindowsのほうの話でしょ
0516132人目の素数さん
2007/11/15(木) 03:15:39bashのスクリプトファイル作らずに単純にCygwinからコマンド入力してるだけ?
0517132人目の素数さん
2007/11/15(木) 09:21:46qchisq(0.05,i)
0518132人目の素数さん
2007/11/15(木) 09:28:35とりあえず、bashから
$ export
で出る環境変数一覧、晒してみては?
ただし、個人情報が入る可能性もあると思うので書き込む際は慎重に。
0519132人目の素数さん
2007/11/15(木) 09:42:27exportでもほとんど同じ。LDに関するものはなし。
さて何が問題なのやら。
0521505
2007/11/15(木) 09:52:48見落としてた。すまん。
> a <- 400000000
> a
[1] 4e+08
> formatC(a,format="fg")
[1] "400000000"
> formatC(a,format="fg",big.mark=",")
[1] "400,000,000"
確かに4e+08はScientific notationかもしれないが、分野によっては
400000000や400,000,000の方が歓迎されることには同意。
0522488
2007/11/15(木) 14:12:18こちらは現在、Cygwinが最新、R が 2.2.1。>>514氏と変わらない環境のはず
です。しかし、こちらは動かない。Cygwin と R のバージョンに問題があるの
ではなく、私の環境に問題がある可能性が大きくなってきました。
ちなみにこちらは、Cygterm と PuTTY を使っています。
>>518
$ export で出てくるものは、どう見ても R と関係ないものばかりでした。
>>519氏の環境では、その状態でちゃんと動いているそうですが。
全部で80行以上ありますが、さらしますか?
>>516
たしかに、bash から Rterm を直接呼び出しているだけです。
スクリプトファイルを作る必要があるのですか?
どのようなものでしょうか?
http://web.archive.org/web/20060313154358/http://www1.accsnet.ne.jp/~gen/R-rev/cygwin-R.html
> また、Cygwin の画面から Rterm.exe と入力し、ターミナルモードで起動する
> ことも出来ます。
とあるので、シェルスクリプトなど必要ないと思っていました。
0523132人目の素数さん
2007/11/15(木) 14:40:12計算したいと思っています。今は以下のようにやっているのですが、
なにかもっとよい方法はないでしょうか。
a <- c(1,2,3,4,5,6,7)
b <- c(100, a) # 100は適当な数字。
bb <- c(a, 100)
bb / b
0524132人目の素数さん
2007/11/15(木) 14:47:10やりたいことがよくわかんない。
> a <- c(1,2,3,4,5,6,7)
> a[2:7]/a[1:6]
[1] 2.000000 1.500000 1.333333 1.250000 1.200000 1.166667
↑これを計算しているだけに見えるんだけど。
0525524
2007/11/15(木) 14:50:19> hoge <- function(x) {
+ x[2:length(x)]/x[1:length(x)-1]
+ }
> hoge(a)
[1] 2.000000 1.500000 1.333333 1.250000 1.200000 1.166667
0526132人目の素数さん
2007/11/15(木) 15:04:37ありがとうございます!
なるほど、、、ついついforループ等で回して、
などという処理を考えてしまったのですが、
a[2:7]/a[1:6]
というのは全然分かりませんでした。
0527132人目の素数さん
2007/11/15(木) 15:33:24コマンド入力による起動はただの偶然でしょうね
bachでしっかりpathを設定してexportするだけで問題は解決するんじゃないでしょうか
0528132人目の素数さん
2007/11/15(木) 15:56:22R2.5.0 Cygwinは最新版ですね
plot(1:10,1:10)も問題なく開きます
ただしENTERキーのテンキー側は使えなくなるようです
これはプログラム上の問題でしょうかね
0529132人目の素数さん
2007/11/15(木) 16:12:10RやCygwinにアクセスする権限を持っているでしょうか
0530528
2007/11/15(木) 16:17:16それがこの問題を引き起こす根本的な原因なのかははっきりと断言できません。
0531488
2007/11/15(木) 16:26:00>>527
パスは通っているのです。R のインストール先を c:\cygwin 自体にしている
ので、Rterm.exe 等は c:\cygwin\bin に置かれます。Cygwin環境では /bin
となる場所ですね。
ところで不思議なのは、
~ $ which Rterm の結果が
/usr/bin/Rterm となることです。
/bin/Rterm となるかと思ったのですが。
もしかしたら、これがトラブルの原因と関係あるかもしれません。
ただ、~ $ which Rgui も /usr/bin/Rgui なのに、問題なく立ち上がるので、
関係ないのかもしれませんが。
0532132人目の素数さん
2007/11/15(木) 16:30:36mountで調べると良いでしょう
cygwin内にインストールしていなくても/cygdrive/以降に通常のディレクトリを入れて
PATHを通せばCygwinからアクセスできます
0533488
2007/11/15(木) 16:38:14すみません、確かに関係ないようですね。失礼しました。
http://www.sixnine.net/cygwin/cygwin-doc/binlib.html
~ $ mount
C:\cygwin\bin on /usr/bin type system (binmode)
...
~ $ /bin/Rterm.exe
Fatal error: you must specify '--save', '--no-save' or '--vanilla'
0534132人目の素数さん
2007/11/15(木) 21:02:47R も cygwin も使ったことないのですが、ちょっと興味を持って
R の調べものをしてたら目にとまったので。
>>488
> ~ $ /bin/Rterm.exe
> Fatal error: you must specify '--save', '--no-save' or '--vanilla'
エラーメッセージ中で指示されてる --save だの何だのという
オプションはスクリプトを実行する時に使うオプションのようですが、
このメッセージが出たということは R は tty を勘違いしてる。
スクリプトを実行するときは
$ R --save < a.r
のような感じでリダイレクトしますよね?そういう状態だと R は勘違いをしてるわけです。
例えば --save オプションを付けて plot 命令を実行したとき、
そのフォルダに何か保存されてませんか?
原因は R にあるのではなく、恐らく cygwin のほうにあって、
多分 cygwin の isatty がアヤシイと思いますよ。
回避策は知りません。どうしても解決をしたいのなら cygwin に詳しい人のところに行って
質問するほうが良いかも知れませんね。
0535132人目の素数さん
2007/11/15(木) 21:05:280536132人目の素数さん
2007/11/15(木) 21:10:36だからさ。
・オプションを付けずに実行するとエラーが出る。
・オプションを付けて実行すると動くことは動くがグラフは表示されてない。
というんでしょ。 tty の勘違いの典型例。
0537488
2007/11/15(木) 22:27:33ありがとうございます。
確かに、Rterm --save で plot(0:10, 0:10)を実行したところ、
カレントディレクトリに Rplots.ps というファイルが出来ていて、
GostScriptで開いたところ、まさにそのグラフのPostScriptファイルでした。
isatty はよく知らないので、ちょっと勉強して考えてみます。
0538132人目の素数さん
2007/11/15(木) 22:44:19あ、いや、isatty というのはプログラムの中から呼び出す C のライブラリ関数なわけで。
知らないなら知らないでもいいかと。
問題点は
「R がリダイレクト (<のこと) ではないのに、リダイレクトと勘違いをしてる」
というところにあるかもしれない、ということだけ理解していただければ。
ちょっと調べてみたら cygwin を使う人は emacs を動かすとき
$ CYGWIN=tty emacs
とするらしい。これでうまく動くかどうかは望み薄かもだけど、
そういうふうに環境変数の設定でなんとかできるかも知れません。
上の方で cygwin + R が上手く動いているというかたがおられるようなので、
お願いしてみて、環境変数を付き合わせてみるというのも一つの手カモ。
0539132人目の素数さん
2007/11/15(木) 22:51:460540132人目の素数さん
2007/11/15(木) 22:55:48export CYGWIN=servere
の設定をするとあるね。2004 年ごろの日記だったけど。
0541132人目の素数さん
2007/11/15(木) 23:02:53ttp://phi.med.gunma-u.ac.jp/memo/20071115.html
> 2chへの書き込みはしたくないので,ここにメモするが,整数扱いさせればいい。
> as.integer(400000000)を付値した変数は, printさせても4e+08とはならず,
> 400000000となる。この場合,例えば,as.integer(3)を掛けても整数型のまま計
> 算できるが,as.integer(400000000)*as.integer(400000000)は桁溢れを起こして
> NAとなってしまうので注意が必要。整数型を超える大きさの数になってしまう場
> 合は,以前メモした多倍長演算ライブラリgmpを使うしかないだろう。
だそうですよ。
0542132人目の素数さん
2007/11/15(木) 23:39:09Cygwinの起動方法が違うのかも。
こちらはPuTTYではありません。
よく知らないのですが、バッチファイルで
bash --login -i
というように起動しています。
0543132人目の素数さん
2007/11/15(木) 23:43:27as.integer(400000000)
でもいいだろうし,最近のバージョンだと
400000000L
でいいじゃない?
発言の糸川からぬ。
> x <- 400000000L
> x
[1] 400000000
> as.integer(400000000)
[1] 400000000
> 400000000L
[1] 400000000
0544132人目の素数さん
2007/11/15(木) 23:51:290545132人目の素数さん
2007/11/16(金) 14:32:360546132人目の素数さん
2007/11/16(金) 20:09:05まあ確かに時代遅れだな。でもメインに解析に使うマシンではないので
基本的なことができればいいからな。
Rはインストールする度にパスの変更が必要になるので手軽に
バージョンアップしにくいんだよね。
(それでも必要なマシンはバージョンアップするけど)
0547132人目の素数さん
2007/11/17(土) 22:20:22x1=seq(-5,5,len=1000)
x2=seq(-5,5,len=1000)
plot(x1,x2)
みたいにしたんですが、1次関数みたいになってしまった、欲しいのと違います。
・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・
こんな感じにしたいのです
0548132人目の素数さん
2007/11/17(土) 23:48:20理論的には
x1=seq(-5,5,len=1000)
x2=seq(-5,5,len=1000)
plot(x1,x2,type="n")
for (i in 1:1000) for (j in 1:1000) points(x1[i],x2[j])
とすればできるが、PCがうんともすんとも言わなくなるかもね。
100x100でもそれなりに時間かかるからそれから増やしてみたら。
また、1000x1000ならほとんどまっくろになると思う。
0549132人目の素数さん
2007/11/18(日) 00:01:50実は、2変数のnewton法で、初期値に対する収束値の関係を2次元で図示(どの値に収束するかを色等で明示せよ)するっていうレポをやってるんです。
問題では、(x1 x2)∈[-5,5]×[-5,5]の範囲に10000個初期値をとってやるんですが、その10000個に対する収束値はプログラムで求まってます。
これってどんな風に図示したらいいんですか?収束値によって初期点を色でわけるっていうのを考えたんですが、いまいちうまくかけません。
プログラムの結果は
初期点 収束値
-5 -5 x1 x2
・
・
・
・
・
5 5 x1 x2
みたいにテキストに保存されてます。
ちなみに収束値は解いてるのが2次なんで、2種類しかないです
0550132人目の素数さん
2007/11/18(日) 01:44:42プロットの問題ではなく色分けの仕方が分からないの?
0551132人目の素数さん
2007/11/18(日) 12:02:22そうです!
0552132人目の素数さん
2007/11/19(月) 00:02:50たとえば
x1^2+x^2=6
とかの円をかきたいんですが
0553132人目の素数さん
2007/11/19(月) 20:11:05色分けって
plot(iris[,1],iris[,2],col=ifelse(iris[,5]=="setosa","red",ifelse(iris[,5]=="versicolor","blue","green")))
のこと?
0554132人目の素数さん
2007/11/19(月) 21:34:54> x <- (-20:20)/8
> y <- sqrt(6-x^2)
Warning message:
計算結果が NaN になりました in: sqrt(6 - x^2)
> plot(c(x,x),c(y,-y),type="l")
> symbols(0,0,circles=sqrt(6),add=TRUE,inches=FALSE)
なかなか興味深い。
0555132人目の素数さん
2007/11/20(火) 00:38:17きれいにつなげようと思ったら
x <- (-20:20)/20*sqrt(6)
y <- sqrt(6-x^2)
plot(c(x,-x),c(y,-y),type="l")
だな。
0556132人目の素数さん
2007/11/21(水) 18:11:16bash@cygwinにて
cd /usr/local/bin
ln -s /cygdrive/c/Program\ Files/R/R-2.6.0/bin/R.exe
としてうごかんか?
リンクが張られるからこれでRは動かしてるよ。
セーブがされないのはcygwinとwindowsのパスの取り扱いの違い
が悪さをしてる臭いよ。cygwinは"/"だけどwindowsは"c:\"だか
らね。cygwinとwindowsを混在させて使うときに頭が痛い問題な
のよ。
0557かげちよ
2007/11/24(土) 00:42:280558132人目の素数さん
2007/11/24(土) 16:58:17あるのは知ってるけど、意図的に使ってない。
0559132人目の素数さん
2007/11/24(土) 18:19:46そりゃよかったね
0560132人目の素数さん
2007/11/25(日) 00:03:38多分Cygwin用に何か足されてると思うけど
0561132人目の素数さん
2007/11/25(日) 14:28:43どうやったら使えるのですか?
0562132人目の素数さん
2007/11/25(日) 16:24:05vmware+ubuntuの方でも使ってるけど。cygwinって、
コンパイル速度を見てても遅いんだよね。windows(without cygwin)
版とcygwin版との比較はしてないけど。あとは、vistaでx11が使えな
いという問題もあるが。
0563132人目の素数さん
2007/11/25(日) 16:27:030564132人目の素数さん
2007/11/25(日) 16:40:58C直下にbinだのディレクトリ作ってそこにインストールするけどねえ
ディレクトリ名でけっこう問題出るし
そういうアプリを使うときはcygwinのshellから叩くと一緒に扱えて便利だなあ
0565132人目の素数さん
2007/11/25(日) 16:48:24うん。cygwinとwindowsってその辺がイライラする問題だよな。
だから、基本はvmware+ubuntu+emacs(ess)でやってる。ディス
クアクセス以外はほとんど速さが変わらないから。unix系はunix
上の方が安心して使えるわ。
入れ方は簡単で、vmware playerとubuntuの日本サイトからvmware
用の仮想ファイルを取ってくればそれでおしまいです。そこから、
sympaticを使ってインストールすれば2.5になるし、ソースからコン
パイルするもよしです。
0566132人目の素数さん
2007/11/25(日) 21:15:52あれ、まだハンパだから
0567132人目の素数さん
2007/11/26(月) 10:37:30vmware player + ubuntuの組み合わせでさらに便利にするのはvmware tools
を導入することかな。ちょっと敷居が高いけど、ここまでできれば、
windows/ubuntuでドラッグ&ドロップ、カット&ペーストができるようにな
る。マウスカーソルの移動も全く問題なくなるし。windowsのアプリの一つと
してubuntuが使えるね。大体320M~512Mあればかなり余裕なんで、windows
vista+2Gの環境ならば余裕がある。vmware tools の導入方法は調べたら紹介
してるところが多いから見てみればいいです。
0568132人目の素数さん
2007/11/26(月) 10:42:41ちなみに、メモリ1Gの環境+windowsならば320Mで十分だよ。
設定ファイルを少し書き変えなきゃいけないと思うけど。
0569132人目の素数さん
2007/11/26(月) 16:56:03統計学なんでもスレッド7
http://science6.2ch.net/test/read.cgi/math/1193183539/70-72
と重複になってしまうのですが、こちらで聞いた方が良いと判断し、
書き込みしました。
■Rで学ぶデータマイニングII
ttp://www.amazon.co.jp/dp/4861671981/
を買おうかどうしようか迷っているのですが、
使った方はいらっしゃいますでしょうか。
卒論の時系列解析の参考にしようかと思っています。
SとRは1年間大学で学び、また web の R-tips も活用しています。
上記のIは買っていません。
0570132人目の素数さん
2007/11/26(月) 21:24:55Iは良い本だよ。
IIも買う予定。
0571132人目の素数さん
2007/11/27(火) 02:47:51レスありがとうございます。
レビューはネットに1つも見つからなかったので、他の方の意見が聞けてありがたいです。
明日もう少し立ち読みして、購入するかどうするか決めようと思います。
0572132人目の素数さん
2007/11/27(火) 11:53:30正直「九天社が出版している」ってだけで止めた。
ここは「出したい」って言えば内容の吟味なんか無しで何でも出版する模様。
この出版社の本はろくすっぽ編集が入らない。
従って巻末の索引なんかも出鱈目な場合が多い。
別の出版社から本が出るまで待つ。
何冊も「九天社」の本を買ったことがある経験からの一言。
0574132人目の素数さん
2007/11/27(火) 12:29:08おおよそどんな感じの内容か俺も知りたい。
R関係の本って「Rによる○○統計学」みたいな立派な題名が
ついてても、実際には Introduction to R や R-Tips の焼き直し
みたいな内容のものが多いからなあ。
0575572
2007/11/27(火) 12:41:36でも そんなの関係ねぇ
0576132人目の素数さん
2007/11/27(火) 12:41:57ついてても、実際には Introduction to R や R-Tips の焼き直し
みたいな内容のものが多いからなあ。
同意。
正直、「R云々」と書いた本買うより、「S PLUS」って書いてある本の方が役に立つ。
R関係の本の出版数が増えたのは喜ばしい事だが、内容的にはまだまだ、だと思う。
「自主制作本」とか「ブログを纏めただけの出版」のレベルは越えていない。
0578132人目の素数さん
2007/11/27(火) 15:56:300579132人目の素数さん
2007/11/27(火) 16:05:220580132人目の素数さん
2007/11/27(火) 18:30:02どこかお勧めの例題あつかってるとことか教えてもらえませんか
0581132人目の素数さん
2007/11/28(水) 14:16:25plot3Dを使って、Graph-Rのようなカラー表示できる
方法があったら教えてください。
Grap-Rだと、130万のテータをプロットしたとき
重いし、他のプログラムが落ちることがあり、
移行を考えました。
ただ、今Rで、
> plot3d(y[,1:3], size=5, pch=30)
すると、真っ黒状態で、わかりづらいのです。
0582132人目の素数さん
2007/12/02(日) 03:30:53>ついてても、実際には Introduction to R や R-Tips の焼き直し
>みたいな内容のものが多いからなあ。
基本手順がおなじならしょうがなくね?
つーか、Rさえほとんど使ってない奴とかあるよな
0583132人目の素数さん
2007/12/02(日) 16:48:48series_plus()関数が、入力される数列が大きくなると遅いです。
forは遅いから使うな、とかapply系を使えとか言われたのですが、
(このプログラムに対してではないですが)
以下のプログラムを改良する方法を教えてください。
> series_plus
function(x) {
len <- length(x)
y <- numeric(len)
for (i in 0:(len-1)) {
y <- c(numeric(i),x[1:(len-i)]) + y
}
y
}
> x <- rnorm(10000)
> plot(series_plus(x))
0584132人目の素数さん
2007/12/03(月) 04:45:120585132人目の素数さん
2007/12/03(月) 07:56:23例えば, ylim = c(0,100) でOKかと。
0586132人目の素数さん
2007/12/03(月) 08:58:01ありがとうございます!
これでブラウン運動を観察しやすくなりました。こんな感じです
for (i in 1:10000) {
plot(series_plus(rnorm(1000)),type="l",ylim=c(-100,100))
}
series_plus()はちょっと前のカキコの関数です。
0587132人目の素数さん
2007/12/04(火) 11:14:15demo(graphics)
を実行してみた?
0588132人目の素数さん
2007/12/06(木) 03:00:41ttp://www1.doshisha.ac.jp/~mjin/R/17.html
のほぼ中央の部分
�A 判別関数を求める
〜中略〜
この判別係数を用いた第1判別関数を次に示す。
=
-0.592x1 -1.842x2 + 1.653x3 + 3.564x4 -c
x1,x2,x3,x4はそれぞれirisデータの変数〜を示す。
とありますが、この場合のx1はSepal.Lengthにある5.992、5.024、6.504のどれになるんでしょうか
0589132人目の素数さん
2007/12/06(木) 07:25:40なぜそれらの数値を使おうと思うのか?
x1とは生データのことだろ。
0590132人目の素数さん
2007/12/06(木) 21:18:07ありがとうございます。
みてみました。さすがにキレイだ。
cumsum()というのを使えばよかったんですね。
僕は、ベクトルを1つずつずらしながらたし算してしまったけど、、、
0591132人目の素数さん
2007/12/06(木) 21:30:55linuxのRからplot()の結果を印刷するにはどうすればよいですか?
0592132人目の素数さん
2007/12/06(木) 23:10:34postscript(file="|lpr")
0593132人目の素数さん
2007/12/06(木) 23:35:50でも、いかのようにしたのですが、プリントされません(泣)
> postscript(file="|lpr")
> matplot(x, type="l")
なにかまちがってますか?
0594132人目の素数さん
2007/12/07(金) 07:40:51dev.off()
っていうか、入門書を一度読んだ方がよいのでは。
0595132人目の素数さん
2007/12/09(日) 06:20:09統計解析フリーソフト Rの45%はかわいさで出来ています。
統計解析フリーソフト Rの25%は回路で出来ています。
統計解析フリーソフト Rの18%は陰謀で出来ています。
統計解析フリーソフト Rの7%は魔法で出来ています。
統計解析フリーソフト Rの2%は根性で出来ています。
統計解析フリーソフト Rの2%はスライムで出来ています。
統計解析フリーソフト Rの1%は微妙さで出来ています。
0596132人目の素数さん
2007/12/10(月) 12:43:41ありがとうございました。
はい、読んでみます。でも、もうちょっとだけ。
Rのコマンドをファイルに書いておいて、それをRで読み込んで実行させるには
どうすればよいですか?
load(filename)とか、やってもだめでした。
0597132人目の素数さん
2007/12/10(月) 15:21:17load()はデータセットを読み込むコマンドです。Rスクリプトを読み込むには、source()を使います。
本当にマジで、オンライン文書でよいので入門書を読んだ方がよいと思う。または、30分程度誰
かにレクチャーしてもらった方がよいと思う。
ちなみに、普通のRユーザはsource()を使わずに、エディタからRを実行します。
0598132人目の素数さん
2007/12/10(月) 19:19:29ありがとうございます!
R-tipsとかは読んだんですけどね、、、(読んだつもり?)
本は読むようにします。
> ちなみに、普通のRユーザはsource()を使わずに、エディタからRを実行します。
まわりのRユーザは全員windows版を使ってるのですが、確かにエディタから実行
してました。でも僕はノートパソコンから速めのマシンにsshして、ターミナル内で
Linux版のRを実行しているので、それができませんでした。
なので、教えていただいたsource()コマンドは便利に使えそうです。
ありがとうございました。
0599132人目の素数さん
2007/12/10(月) 19:41:28バイナリパッケージ(フルパッケージ)の2,3倍遅かった。
不思議な事に、どちらのRを起動しようと(もちろんコマンドラインで./R)、
速さは最後にインストールしたバージョンが何かで決まる。
つまり、本来違うバージョンが共存できることになっているのに、そうなっていない。
どこかの共有部分が毎回上書きされているのか?分かる人いますか?
ちなみに、BLASシェアドラブラリを有効にしてるけど、
ライブラリは個々のバージョンのディレクトリにビルドされていたので、これではないと思う。
0600599
2007/12/10(月) 19:58:51バイナリインストール後の状態を見ると、
/usr/lib/libatlas.dylib
/usr/lib/libblas.dylib
/usr/lib/libcblas.dylib
の全てが、"Current"バージョンの libBLAS.dylib のシンボリックリンクだった。
自前のビルドが遅かったのは、atlas, lapackを自分でビルドしていなかったから、当然だと思うが・・・ここまで遅いとは。
Appleの/lib/libcblas.aなどを使っていたのか、それともR内部の別の汎用ルーチンを使っていたのか?
0602132人目の素数さん
2007/12/11(火) 09:31:36R-tipsはマニュアルと言うかオナニー本だからwww
編集がロクに入らないと出版物は「寄稿者の自己満」で終わってしまう、と言ういい見本
0603132人目の素数さん
2007/12/13(木) 12:39:09また、円の方程式と楕円の方程式から交点を直接求めることはできないのでしょうか
0604132人目の素数さん
2007/12/13(木) 17:50:00先日、船○さんが紹介していたRyacasは、もしかすると役に立つのかも知れません。
私は使ったことがないので分かりませんが。
0605604
2007/12/13(木) 17:52:50すみません > ○尾さん
0606132人目の素数さん
2007/12/15(土) 22:30:050607132人目の素数さん
2007/12/16(日) 01:26:020608132人目の素数さん
2007/12/16(日) 03:25:41あ、そうか。つまり、
cumsum(rnorm(1000))+x0
ということですか?
0609132人目の素数さん
2007/12/16(日) 04:04:11(dZtは正規分布のN(0,dt))
がAR(1)と説明してあったので、以下のように書いてみました。
x0は0としています。
ar1 <- function(mu,sig,dt,T,fai) {
x <- numeric(T)
for(i in 1:(T-1)) {
x[i+1] <- -1*fai*(x[i]-mu)*dt + rnorm(1,sd=sqrt(dt))
}
return(x)
}
Rらしくないとおもうのですが、これってもっとRらしくかけませんか?
(Cで書いたみたい)
0610132人目の素数さん
2007/12/17(月) 03:17:41それはAR(1)のMA表現に近い感じだけど違うよ。
係数が考慮されてないし、n→∞でも初期値の影響が残っちゃう。
Rっぽいというか、かなりひねくれてるけど
ar1=function(a,n=100,x0=0,sigma=1)
{
    X <- diag(n)
    e <- c(x0,rnorm(n-1,0,sigma))
    ind <- row(X)-col(X)
    X[lower.tri(X)] <- a^ind[lower.tri(ind)]
    drop(X%*%e)
}
a: AR(1)の係数
n: 生成するサンプル数
x0: 初期値
sigma: イノベーションの標準偏差
とかでも。
結局計算時間はfor文回すのとかわんないだろうから
定義通りの>>609みたいのが分かりやすいくていいんじゃないかな。
他に良い方法あるならオレも知りたいが。
0611610
2007/12/18(火) 04:32:23ar1 <- function(a, n=100, sigma=1, init=0)
{
    X <- diag(n)
    e <- c(init,rnorm(n-1,0,sigma))
    X <- a^(row(X)-col(X))
    X[upper.tri(X)] <- 0
    drop(X%*%e)
}
はメモリ食いの上に計算が遅く、しかもひねた書き方なのでボツにします。
以下のように素直に書くのが計算も速いし、意味が分かりやすいので一番でした。
ar1 <- function(a, n=100, sigma=1, init=0)
{
    x <- c(init, rep(0, n-1))
    for(i in seq(2,n))
        x[i] <- a*x[i-1] + rnorm(1,0,sigma)
    x
}
要素毎アクセスしてるのはやはり気にくわないけど。
0612132人目の素数さん
2007/12/18(火) 04:43:10もしnbsp見えてたらそれはミスなので無視してくれ。
ar1 <- function(a, n=100, sigma=1, init=0)
{
x <- c(init, rep(0, n-1))
for(i in seq(2,n))
x[i] <- a*x[i-1] + rnorm(1,0,sigma)
x
}
0613132人目の素数さん
2007/12/18(火) 11:09:04ありがとうございます。
> a <- ar1(0,n=100000)
> ar(a)
Call:
ar(x = a)
Order selected 0 sigma^2 estimated as 0.9985
やっぱりAR(1)ですね。つかわせてもらいます。ありがとうございました。
0614610
2007/12/18(火) 16:21:53ほんとに何度もすまんが、最もRらしい書き方が分かったよ。
arSeries <- function(a, n=100, sigma=1, init=0)
{
x <- c(init, rnorm(n-1,0,sigma))
filter(x, a, "recursive")
}
おそらくこれがR的にベストでしょう。
係数aはベクトルで与えても可(つまり何次のモデルでもOK)。
> ar(arSeries(c(0.2,0.5,0.3),1e5,sigma=8),order=3,method="burg")
Call:
ar(x = arSeries(c(0.2, 0.5, 0.3), 1e+05, sigma = 8), order.max = 3, method = "burg")
Coefficients:
1 2 3
0.1969 0.5016 0.3016
Order selected 3 sigma^2 estimated as 63.67
0615132人目の素数さん
2007/12/18(火) 16:54:360616132人目の素数さん
2007/12/19(水) 21:51:28その時、取りうる全ての要素を代入したfの和
農{x∈{0,1}^n} f(x)
を計算したいんですが、どのようにプログラムを組めばいいのかぜひどなたか教えてください。
お願いします。
0617132人目の素数さん
2007/12/20(木) 00:57:02fの具体的な説明がないよ。( f:{0,1}^n→ ?)
もしかすると農{x∈{0,1}^n} xのことを言ってるのかな?
まず"1+1=2"なのか"1+1=0"なのかはっきりしたほうがいい。
0618132人目の素数さん
2007/12/20(木) 01:22:37引数で関数fを渡すとか…たぶん考えすぎだろうが。
0620616
2007/12/20(木) 05:38:53すいません、fは{0,1}^nから実数にうつす写像です。
もっと詳しく言うと、f=背_{ij} xi xj (w_{ij}はある実数) です。
0621132人目の素数さん
2007/12/20(木) 08:09:14了解。勘ぐりすぎてたか。
つまり、W=(w_ij)を適当に与えたときのx^TWxを
{0,1}^nにおける2^n個すべての要素のf(x)に関して和をとればよいってことかな?
Wが対称行列などの指定はとくになし?
愚直に書けば2^n回ループまわすことになるけど、
頭使えばほとんど計算機の出番なさそう。
例えばxi xj=1となるものを{0,1}^nのすべてについて調べたとき
その個数がc_ijならΣc_ij w_ij = 農{x∈{0,1}^n} f(x)になる。
つまりC=(cij)さえ分かればあとはsum(C*W)が答え…とかどうですか。
まだ考えてないが、cijはnの関数になりそう。
思いつきで書いてるから間違いがあったり、説明が分かりづらいかも。
しかしこういう計算をRでするのって、何に使うのか興味あり。
0622616
2007/12/20(木) 21:08:28ありがとうございます。
ボルツマンマシンというものの計算をRでやっているところです。
ところで
>愚直に書けば2^n回ループまわすことになるけど、
とありますが、これはどの様にプログラミングを行えばよいのでしょうか?
f=exp(背_{ij} xi xj+買ニ_{i} xi)
というものも計算しなくちゃいけないのですが、この場合だと上の方法だとできないので、
ぜひご教授お願いします。
0623132人目の素数さん
2007/12/21(金) 02:24:59Rで愚直に書くのは案外難しかった。
Rはこういう計算向かないのかなあ…。
sumf <- function(n, FUN, set=c(0,1))
{
X <- expand.grid(replicate(n,set,FALSE))
sum(apply(X, 1, FUN))
}
ただしこれが使えるのはせいぜいnが10程度。
使い方は、最初の関数f(x)=x^TWXなら
> f <- function(x, W) t(x)%*%W%*%x
> W <- matrix(1,4,4)
> sumf(4, function(x) f(x,W))
[1] 80
とか。
0624132人目の素数さん
2007/12/21(金) 02:33:47上のやりかたみたいに一気に(0,1)^nの元を全部生成すると
n×2^nの行列ができるので、nがちょっと大きくなれば
すぐメモリから溢れちゃいます。
となるとfor文の中でひとつひとつxを生成しながら
計算するほうが望ましいけど、Rで毎回それを作るのは面倒だね。
n<=32なら無理矢理
sumf2 <- function(n, FUN, set=c(0,1))
{
res <- 0
for( i in seq(2^n)){
x <- as.numeric(intToBits(as.integer(i))[seq(n)])
res = res + FUN(x)
}
res
}
なんかもありか。ふざけたスクリプトになってきたが。
やはり愚直に書いた指数時間アルゴリズムは
まったく実用的でないことがよくわかります。
0625132人目の素数さん
2007/12/21(金) 03:01:550626132人目の素数さん
2007/12/21(金) 04:49:34なるほどx_i x_j = 1のとき同時発火ね。Σf(x)は分布を求める部分かな。
どうやら正攻法では指数時間は不可避のようです。
最初にいってた単純な二次形式の和だけならまだやれそうだったが。
ともかく一度定義通りに計算してみたいだけなのかな。
0627616
2007/12/21(金) 13:02:23そのプログラムを利用してボルツマンマシンを作ってみたいと思います。
0628132人目の素数さん
2007/12/21(金) 17:09:110629132人目の素数さん
2007/12/22(土) 04:47:26x a1 a2
1 2.419707e-01 1 1
2 5.399097e-02 1 1
3 4.431848e-03 1 2
4 1.338302e-04 1 2
5 1.486720e-06 2 1
6 6.075883e-09 2 1
7 9.134720e-12 2 2
8 5.052271e-15 2 2
こういう形のデータがあったとして(a1,a2 は因子です),
各要因の組み合わせごとの x の平均を出す簡単な方法ってありますか?
0630132人目の素数さん
2007/12/22(土) 18:47:02おもしろそうなので考えてみた。でも for文を使うのしか思いつかなかったorz
> data <- data.frame(x=round(runif(8),2),a1=as.factor(c(rep(1,4),rep(2,4))),
+ a2=as.factor(c(1,1,2,2,1,1,2,2)))
> data
x a1 a2
1 0.73 1 1
2 0.31 1 1
3 0.53 1 2
4 0.69 1 2
5 0.80 2 1
6 0.88 2 1
7 0.94 2 2
8 0.39 2 2
> for ( i in levels(data$a1)){
+ for (j in levels(data$a2)){
+ y <- mean(data[(data$a1==i) & (data$a2 ==j),1])
+ print(c(x.mean=y,a1=i,a2=j))
+ }
+ }
x.mean a1 a2
"0.52" "1" "1"
x.mean a1 a2
"0.61" "1" "2"
x.mean a1 a2
"0.84" "2" "1"
x.mean a1 a2
"0.665" "2" "2"
0631630
2007/12/22(土) 18:55:38> a3 <- paste(data$a1,data$a2)
> for (i in unique(a3)){
+ print(paste(i,"mean = ",mean(data[a3==i,1])))
+ }
[1] "1 1 mean = 0.52"
[1] "1 2 mean = 0.61"
[1] "2 1 mean = 0.84"
[1] "2 2 mean = 0.665"
0632132人目の素数さん
2007/12/22(土) 19:13:46組み合わせって言うけど、1-2と2-1は異なるグループと考えていいの?
> label <- factor(paste(data$a1,data$a2,sep="-"))
> label
[1] 1-1 1-1 1-2 1-2 2-1 2-1 2-2 2-2
Levels: 1-1 1-2 2-1 2-2
> tapply(data$x,label,mean)
1-1 1-2 2-1 2-2
1.479808e-01 2.282839e-03 7.463979e-07 4.569886e-12
異なるグループとするならこんなんでいいと思う。
0633132人目の素数さん
2007/12/22(土) 19:27:16良い方法ありませんでしょうか?
画面上の結果をコピーして、ちまちまエディタでタブを入れることしか
思いついてないのですが・・・もっと簡便な方法ありましたら教えてください。
0634132人目の素数さん
2007/12/22(土) 19:47:45> a$loadings
Loadings:
Factor1 Factor2 Factor3
v1 0.944 0.182 0.267
v2 0.905 0.235 0.159
v3 0.236 0.210 0.946
v4 0.180 0.242 0.828
v5 0.242 0.881 0.286
v6 0.193 0.959 0.196
Factor1 Factor2 Factor3
SS loadings 1.893 1.886 1.797
Proportion Var 0.316 0.314 0.300
Cumulative Var 0.316 0.630 0.929
> library(Hmisc)
> html(a)
これで作成されたa.htmlをexcelで開くとどうなりますか?
>> 632
tapplyに気がついたので書き込もうと思ったら、すでに書かれていた。
書き込む前にリロードしてよかったよ。恥の上塗りをするところだった。
sepを"-"にしたところまで一緒だったorz
0635132人目の素数さん
2007/12/22(土) 20:26:59ありがとうございました。
html(a)ではエラーがでましたが,
html(a$loadings)はとおりました。
できたファイルを,開いてから,全選択コピー,ペーストでうまくいきました。
0636132人目の素数さん
2007/12/23(日) 12:53:57その後も調べまわりましたら、以下のurlにあった方法でも可能でした。
エクセルのテキストファイルウィザードを使えば、「スペース」&「連続した区切り文字は一文字として扱う」
をチェックしてOKです。
ttp://homepage2.nifty.com/nandemoarchive/cyou_nyumon/r_data_Excel_and_R.htm
0637132人目の素数さん
2007/12/23(日) 23:23:55n time
10 0.000001
100 0.00001
1000 0.001
10000 0.1
擬似的にこんなデータがあったときにn=100000の計算時間を推定するんです
0638132人目の素数さん
2007/12/24(月) 03:35:06いろいろ方法はあると思うが、たいていは
目的変数:time、説明変数:nの回帰(lm)でいいんじゃないかな。
ただ、計算時間なら二重ループが入っててn^2のオーダーなんて
よくあるから、モデルの選定は散布図見て適切なモデルを決めるか
プログラムの実装内容を多少知っている必要があるだろうか。
回帰について詳しくないので、フォローがあればどなたかよろしく。
0639132人目の素数さん
2007/12/27(木) 19:41:42http://www.taniguchitomoya.com/diary/?date=20070109
慣れた人には当たり前なんだろうけど、自分のような初心者にはとても参考に
なりました。
ただ、これもほんの導入に過ぎない気がするので、今は↓を読んでいます。
http://cran.r-project.org/doc/contrib/manuals-jp/R-lang.jp.v110.pdf
なんだ、属性が付けられるのはリストに限らないじゃないか。
0640132人目の素数さん
2007/12/28(金) 01:55:150641132人目の素数さん
2007/12/28(金) 13:09:05> m <- month.name
> names(m) <- LETTERS[1:12]
> m
A B C D E
"January" "February" "March" "April" "May"
F G H I J
"June" "July" "August" "September" "October"
K L
"November" "December"
> m["I"]
I
"September"
0642639
2007/12/28(金) 17:05:53> 連想配列って、名前付きベクトルじゃだめなの?
ありがとうございます。それでいいと思います。すごくシンプルになりました
ね。
ところで、数値型のベクトルにうっかり文字列を追加してしまうと、型変換が
起こって、全体が文字列形のベクトルになってしまいます。
> d <- c()
> d["hoge"] = 1
> d["fuga"] = 2
> d["piyo"] = 'a'
> d
hoge fuga piyo
"1" "2" "a"
元に戻そうとして、as.integer() を実行すると名前が消えてしまいます。
> d <- d[1:2]
> d
hoge fuga
"1" "2"
> d <- as.integer(d)
> d
[1] 1 2
これはちょっと不便ですね。名前をバックアップしておくしかないのかな。
うーん。
0643132人目の素数さん
2007/12/30(日) 09:18:56どうか、お願いします。
バリマックス回転したいんですが、エクセルしかなく、
Rをインストールしたんですがさっぱりわかりません。
数学のすの字も知らない仏文学科生ですので、プログラミング言語など
触ったことがありません。相応の入門サイトを見て手探りでやっている状態です。
あるRのサイトで
ttp://aoki2.si.gunma-u.ac.jp/R/src/all.R
が紹介されていて、この関数を入れるとバリマックス回転ができるそうなんですが
ここの関数を使おうとしてもなぜか正常に表示されず、使用することができません。
どうか、何か、妙案を出していただけませんか?
お願いします。
0644132人目の素数さん
2007/12/30(日) 11:16:45RSiteSearch('Varimax Rotation')
0645132人目の素数さん
2008/01/03(木) 13:41:08tol = as.double(tol), coefficients = mat.or.vec(p, ny),
residuals = y, effects = y, rank = integer(1), pivot = 1:p,
qraux = double(p), work = double(2 * p), PACKAGE = "base")
で呼び出される処理の実体は何処に格納されているのでしょうか?
また、そのソースファイルは参照する事はできますか?
0646132人目の素数さん
2008/01/04(金) 06:40:34サイコロを降って三の倍数が出たら100円もらえる
連続で三の倍数が出た場合はもらえる金額が100円ずつ加算されていく
これを50回繰り返した場合の全ての結果とその確率を表示する
こういった作業をする場合Rではどういった式を入力すればよいのでしょうか
個々の式(?)はわかるのですがそれをどう組み合わせたらいいのかがさっぱりわかりません(特に繰り返し文)
もしくはよりシンプルな操作でこういった作業が出来るフリーソフトがあったら教えてください
0647132人目の素数さん
2008/01/04(金) 08:34:51「全ての結果とその確率を表示する」の理解が正しいか分からないが
例えば以下の関数game()を定義して
game <- function(N=50)
{
dice <- sample(6,N,replace=TRUE) # サイコロをN回振る
nwin <- sum(dice%%3==0) # 3の倍数の目の個数
list(dice=dice, prob=nwin/N, money=nwin*100)
}
実行
> game()
$dice
[1] 1 2 4 6 4 2 6 1 6 3 6 5 4 1 6 4 3 3 5 3 4 2 2 3 6 6 6 3 6 3 5 6 6 4 6 2 4 1 4 1
[41] 2 6 3 1 3 6 6 4 2 5
$prob
[1] 0.48
$money
[1] 2400
繰り返し文などいらない。
0648132人目の素数さん
2008/01/04(金) 09:11:16コンパイル済みのオブジェクトだから
例えばWindows版なら関数の実体はR.dllに入ってる。
ソースはRのソースを展開したときのsrc/appl/dqrls.fに入ってる。
0649132人目の素数さん
2008/01/04(金) 15:24:29ありがとうございます。それだとサイコロをランダムに降ってから三の倍数を取り出してるんですよね
そうでなくて例えば二回目終了時だと
1/9(確率) 300円(結果)
4/9 100円
4/9 0円
こういう形で出力したいんです
0650132人目の素数さん
2008/01/04(金) 16:17:23あ、ごめん肝心な「連続で〜」のところ見落としてた。
しかも全然違うことやってたな。
ハズレはまた100円にリセットでいいんだよね。
で、50回終了時の獲得金額とその確率をすべて表示ね。
難しそうだけど、もし思いついたらやってみます。
0651132人目の素数さん
2008/01/04(金) 16:58:50よろしくお願いします
先にあげた例以外でもいいので
・前の結果に影響される繰り返し
・>>649のような形式の結果表示
を考えるヒントがあればぜひご教授を
0652132人目の素数さん
2008/01/04(金) 17:49:15あんまり頭よくないみたいで、うまい策が思いつきません。
既約分数を使いたいなら表示は有理数型使うのが楽じゃないかな。
Rだとgmpパッケージがいいかも。
> library(gmp)
> as.bigq(2^50,3^50)
[1] "4194304/2674378408833789"
「繰り返し」ってサイの目6^50通り
もしくは勝ち負け2^50通りの総当たりするってこと?
0653132人目の素数さん
2008/01/04(金) 18:02:50約分できないのはずなのに約分されてるし。
3^50で桁あふれたか。
こっちが正しい累乗の使い方かなたぶん。
> prod(rep(as.bigq(2,3),50))
[1] "1125899906842624/717897987691852588770249"
0654132人目の素数さん
2008/01/08(火) 14:00:551. 行列の行を一行ずつコンソール出力する。
2. 行列の要素を一つずつコンソール出力する。
には、それぞれどうしたら良いでしょうか?
ネタではなく、本当にわからなくて困っています。
小さい行列なら、print(a)で出力されますが、30x30とかだと、省略されてし
まいます。
0655132人目の素数さん
2008/01/08(火) 16:03:43いまいち、何に困っているのかが理解できませんが、30x30の行列を一行ずつ表示するには、
> a <- 1:900; dim(a) <- c(30,30)
> for (r in 1:30) {print(a[r,]}
これでOKです。1要素ずつなら、これを入れ子する。
でも、こんなことして何か意味があるの?
0656655
2008/01/08(火) 16:04:540657654
2008/01/08(火) 18:35:52>>655
すみません、説明が足りなかったようです。それだと 30というサイズが決め
打ちですので、もっと汎用的な書き方を知りたかったのです。
> d <- matrix(1:900, 30, 30)
> for (r in 1:dim(d)[1]) {print(d[r,])}
これでいいのかしら。なにかもっと、インデックスを使うのではない、
他言語のfor-each文のような書き方があるのかと思っていたのですが。
0658132人目の素数さん
2008/01/08(火) 20:22:03用途を言うとアドバイスしやすいんじゃないかな。
用途がありそうといえばデバック作業かな。
0659654
2008/01/08(火) 21:34:20いだけです。
インデックスを使いたくない理由は、
# 通常のfor文
for (i = 0; i < list.length; i++) {
a = list[i]
...
とやるより、
# for-each文
for (a in list) {
...
とやった方がバグが入り込みにくいからです。
R には for-each文しかないわけですが、>>657では、それを回避して無理やり
にfor文を作っているので、あんまり綺麗なコードじゃないなあと。
0660132人目の素数さん
2008/01/08(火) 22:20:24for(i in seq(ncol(d))) のiで列、行アクセスってRだと普通じゃないかな。
apply(d, 1, print)みたいな操作がしたいわけでもないだろうし。
今思いついたのは、例えば
for(i in data.frame(d)) print(i)
とかね。冗談みたいなコードだけど。
printだけが目的なら添え字アクセスのがよっぽど素直じゃないかなあ。
0661132人目の素数さん
2008/01/08(火) 22:21:44for(i in data.frame(t(d))) print(i)
0662132人目の素数さん
2008/01/08(火) 22:53:40> いだけです。
だったら、単純に
> d
とするか
> page(d,"print")
でいいんじゃない?うちの環境では、page()でemacsが起動する
0663654
2008/01/09(水) 14:25:32>>660->>661
ありがとうございます。確かに微妙ですが、とりあえずそのデータフレームで
行こうと思います。
>>662
>d だけだと、大きな行列が省略されてしまいます。
また、実は対話環境ではなく、rJavaを介してJavaからRをバッチ的に利用して
いて、page() は使うことができません。
0664sage
2008/01/11(金) 17:41:43蜊頑律謗「縺励※謌先棡縺ェ縺励繧ゅ≧縺、縺九l縺セ縺励◆
0665132人目の素数さん
2008/01/13(日) 12:59:130666132人目の素数さん
2008/01/13(日) 16:18:090667132人目の素数さん
2008/01/13(日) 18:13:50pairwise.t.testだと対応のないt検定を繰り返すから間違いですよね。
ボンフェローニ法でやろうとおもうのですが、対応のあるt検定を
普通に群間で繰り返して補正すればいいのか、それとも対応のある
t検定を行うときに全体の分散?をつかってくりかえすのか、分か
りません。田舎の本屋と図書館では限界があって助けてもらえませんか。
0668132人目の素数さん
2008/01/14(月) 00:16:13ボンフェローニを使うならどちらでも構わない。
等分散性が仮定できるなら全体の分散で
いいんじゃない?
0669132人目の素数さん
2008/01/14(月) 16:24:35ありがとうございます!ちょっと滅入ってたのでレスがとてもうれしいです。
2元配置でも3元配置でもpairwiseを使ってる人もいますね。おっしゃるとおり
ボンフェローニでやってました。
問題がひとつ解決してうれしいです♪
0670132人目の素数さん
2008/01/16(水) 13:18:07訳あって判別関数の直線式を求めたいのですが
http://www1.doshisha.ac.jp/~mjin/R/17.html
を参考にscallingと apply(Z$means%*%Z$scaling,2,mean) から式を変形して傾きと切片を求めて
判別直線の式を求めたのですが
その直線の式がどうも実際に群分けをしている直線と切片が違うように思われます(傾きはおそらくあっていそうです)
理由がわかるかたお教えください
0671668
2008/01/16(水) 13:21:01よかったな。お前が嬉しければ俺も嬉しいよ。
けどな、これで極めたと思わないでくれよな。
この道はまだまだ長く険しい。お前はまだいりぐちにたっただけなのだから。
さあ、俺たちと、道の先にあるものを掴みにいこうZee
0672132人目の素数さん
2008/01/16(水) 17:44:03文字化けしてしまいます。
これはRのフォント設定に原因があるのでしょうか?
0673132人目の素数さん
2008/01/18(金) 19:44:25> ps.options()$family
の値を見て、考える。
> ?postscriptFonts
はすでに読んだ?
0674132人目の素数さん
2008/01/25(金) 19:21:11ヘルプを見ても良く分からなかったので、よろしくお願いします。
0675132人目の素数さん
2008/01/25(金) 19:33:08ソースを見ろ
> TukeyHSD
function (x, which, ordered = FALSE, conf.level = 0.95, ...)
UseMethod("TukeyHSD")
<environment: namespace:stats>
> methods(TukeyHSD)
[1] TukeyHSD.aov
> TukeyHSD.aov
function (x, which = seq_along(tabs), ordered = FALSE, conf.level = 0.95,
...)
{
mm <- model.tables(x, "means")
if (is.null(mm$n))
stop("no factors in the fitted model")
以下略
0676132人目の素数さん
2008/01/25(金) 20:38:01methods()ってのがあるんですね。ありがとうございます。
0677132人目の素数さん
2008/01/28(月) 23:56:35で、Tukey-Kramer なんですか???
0678132人目の素数さん
2008/01/29(火) 19:22:57これに入っている関数mulspe()でクロススペクトルが描画できたのですが
図からピークを値として出力するにはどうしたらいいのでしょうか
helpを読んでみてもいまいちよく解らず、identify()も使えなかったので
もしかしてデータから自分で計算するより無いのでしょうか
0679132人目の素数さん
2008/01/30(水) 15:38:312群の経時データの有意差検定をすることになってしまいました・・・
具体的には毎日薬を飲んで,その効果を測定してあるデータです.
多変量分散分析モデルを考えていたのですが,上司からAUCでやるべしとの指示?
AUCってどんなものなのでしょうか?
どこかに,Rのプログラムなどがあれば教えていただけたら幸いです.
0680132人目の素数さん
2008/01/30(水) 16:50:43>上司からAUCでやるべしとの指示? AUCってどんなものなのでしょうか?
なぜ直接上司に聞かないの? 統計手法とは別の意味のAUCかも知れないよw。
0681132人目の素数さん
2008/01/30(水) 23:48:45同意。
そもそもAUCって統計的方法の名前そのものじゃないし。
0682132人目の素数さん
2008/01/31(木) 01:10:52R ver2.2.0を用いています。
上記の検定法の関数 dagoTest(x) は library(fBASIC) にあるとwebで見たのですが
パッケージを見てもfBASICがありませんでした。パッケージの更新を行なったのですが
fbasicはありませんでした。現在dagotestを使おうと思うと、どのパッケージを使えばよいのでしょうか
よろしくお願いします
0683132人目の素数さん
2008/01/31(木) 01:29:50fBASICはココ
http://cran.r-project.org/src/contrib/Descriptions/fBasics.html
ただR-2.4.0以上じゃないと正常に動かないかも
http://www.r-project.org/search.html
で"dagotest"を検索しただけだが。
0684132人目の素数さん
2008/01/31(木) 09:11:40>>680,681
レスありがとうございます
上司も良く分からない様子だったので,ここで聞いた次第です・・
まずは普通にやってみます
0685132人目の素数さん
2008/01/31(木) 12:30:33横からですが、>>675さんのレスがヒントになりました。ありがとうございます。
0686132人目の素数さん
2008/01/31(木) 17:09:36オレ涙がでてきたよ。
0687132人目の素数さん
2008/01/31(木) 18:36:55要求が馬鹿高い割に知識は乏しくて、でも有事の責任を取るためにそこにいるって言う
あれ、もしかして俺が働いている場所ってブラックですか?
0688132人目の素数さん
2008/01/31(木) 20:34:37でなきゃココは誰に聞いてねと権限の委譲wをしないとな。
0689675
2008/02/01(金) 00:05:13役に立って何より。
>>679
ヒントをあげるね。Rはインストール済みだよね?
> RSiteSearch("measures repeated")
医学系だけど、恥ずかしながらAUC(血中濃度曲線下面積)を
知らなかった勉強になったよ。
0690132人目の素数さん
2008/02/01(金) 00:42:11医学系と言っても薬学寄りでないと知らなくても不思議じゃないんじゃない。
そもそも>>679のデータは上司がその程度なら血中濃度のデータかどうかも怪しいけどな。
0691132人目の素数さん
2008/02/01(金) 21:47:400692132人目の素数さん
2008/02/02(土) 01:34:18はい。
0693132人目の素数さん
2008/02/02(土) 01:54:430694132人目の素数さん
2008/02/02(土) 06:19:55ttp://www.okada.jp.org/RWiki/index.php?RExcel
0695132人目の素数さん
2008/02/02(土) 19:06:32それってR本体を呼び出してコマンドとして使うって意味?
(直接関数を呼べるなら便利なんだが。)
0696132人目の素数さん
2008/02/03(日) 00:22:31いつも優柔不断で指示が二転三転します、適切な指示をしてくれる上司にめぐりあいたいものです。
皆様の期待(?)通り、血中濃度のデータではありません。
>>689さんのヒントをもとに、始めます。
どうも、ありがとうございました。
0697132人目の素数さん
2008/02/03(日) 02:52:20学校じゃないなら適切な指示しかしない上司なんていないって。
適当にやらせて結果見て指示し直す、なんて普通。
不適切な指示に対して提案できて方法を示せるようになって半人前。
それが必要な場面で上司を使えるようになって一人前だ。
がんばれ。
0698132人目の素数さん
2008/02/06(水) 18:34:170699679=696
2008/02/06(水) 18:54:37お言葉が身にします。
ご指摘のとおり、まだまだ半人前の手前という感じです。
もっと目線を上にして、がんばります!
ありがとうございました。
0700132人目の素数さん
2008/02/06(水) 19:34:410701132人目の素数さん
2008/02/06(水) 23:14:510702132人目の素数さん
2008/02/06(水) 23:16:49factanalは珍しくRだけで書かれている。CやFORTRANで書かれたのを呼び出している
訳ではないのに、なぜ質問になるのか、よく分からない。
> factanal
function (x, factors, data = NULL, covmat = NULL, n.obs = NA,
subset, na.action, start = NULL, scores = c("none", "regression",
"Bartlett"), rotation = "varimax", control = NULL, ...)
{
sortLoadings <- function(Lambda) {
cn <- colnames(Lambda)
Phi <- attr(Lambda, "covariance")
ssq <- apply(Lambda, 2, function(x) -sum(x^2))
Lambda <- Lambda[, order(ssq), drop = FALSE]
colnames(Lambda) <- cn
neg <- colSums(Lambda) < 0
Lambda[, neg] <- -Lambda[, neg]
[以下略]
0704132人目の素数さん
2008/02/07(木) 00:41:43おおおお。そんな方法でソースが見られるとわ。感激れす。
0705132人目の素数さん
2008/02/07(木) 19:24:57Rの仕様を理解していれば、ごく当たり前のことだよ。
matrixクラスやdata.frameクラスのRオブジェクトの名前だけを
書いてenterを押下すれば、その内容が表示されるだろ。function
クラスのRオブジェクトも同じ。そのRオブジェクトの内容が出力
される。
0707132人目の素数さん
2008/02/08(金) 20:02:52オブジェクトの継承とか、そういった類いの解説があるような…
0708132人目の素数さん
2008/02/09(土) 09:28:42にはそういった話題も載っていたような気がします。
0709132人目の素数さん
2008/02/09(土) 18:07:53MASSパッケージにソース入ってるし。
オブジェクトは入ってたかシラネ
0710132人目の素数さん
2008/02/09(土) 18:46:21ありがとうございます。「Rの基礎とプログラミング技法」が良さそうですね。
言語仕様を理解できそうです。統計手法とか載っていなくても良いので、
他にありましたらよろしくお願いします。
0711132人目の素数さん
2008/02/09(土) 22:31:35相関の最大値(縦軸)とそのときのラグ(横軸)を
出力する方法はありませんか?
0712711
2008/02/10(日) 15:12:190713132人目の素数さん
2008/02/11(月) 13:28:15ってどういう意味ですか。
0714132人目の素数さん
2008/02/11(月) 18:14:070715132人目の素数さん
2008/02/11(月) 23:08:16それから、多項ロジットモデルを選択すると
エラー: 'x' に無限値か欠測値があります
というメッセージが出るのですが、どういうことですか。
0716132人目の素数さん
2008/02/11(月) 23:10:16データセットが対応していない。
0717132人目の素数さん
2008/02/11(月) 23:21:02最終講義を先生が休講にしたから、わからない><
> また、先週行う筈だった授業の簡単な要旨を
> http://bayes.c.u-tokyo.ac.jp/~hoshino/ssa0129.doc
> に記載しておりますので、参考にしてください。
諦めて普通の線形回帰にしようかな・・・。
0718132人目の素数さん
2008/02/12(火) 07:31:24東大だろ。頑張れよw
0719132人目の素数さん
2008/02/12(火) 08:09:47原則はさらっと書いてあるけど、あくまで講義のメモだから、それだけでは分かりにくいのは仕方ない。
グラフ付きの例があると一番いいんだけどな。
つまり、ダミー変数がなければ相関が現れないけど、
ダミー変数を入れて、グループごとにグラフを書いたら、同じような傾きの並行したグラフがグループの数だけ現れる、というような。
ウェブを漁ったけど、分かりやすく説明したものがなかなか見つからなかった。
0720132人目の素数さん
2008/02/12(火) 08:21:16ダミー変数を使った線形回帰にします。
0721132人目の素数さん
2008/02/12(火) 10:15:11点を同定することは出来ないだろうか?
0722132人目の素数さん
2008/02/12(火) 11:29:05三角ダイヤグラムならまだしも、平面に投影した状態で、空間の点を指定できる原理を思いつける?
0723132人目の素数さん
2008/02/12(火) 12:12:05そうか…。3次元のプロット点をクリックして番号を出力する方法はないか…
0724132人目の素数さん
2008/02/12(火) 13:08:15プロット点はいくつある?少なければ、points()でID番号そのものをプロットすれば
判別が着くと思うけど。
0725132人目の素数さん
2008/02/12(火) 18:00:30points 関数は以下の使い道以外にあるということでしょうか?
※赤色の + がプロットされる
plot(-4:4, -4:4, type = "n")
points(rnorm(200), rnorm(200), pch="+", col = "red")
0726132人目の素数さん
2008/02/12(火) 19:51:07申し訳ない。points()のpchにIDベクトルを与えると、最初の1文字を使って、後は無視されるようだ。
> plot(-4:4, -4:4, type = "n")
> points(rnorm(200), rnorm(200), pch=as.character(1:200), col = "red")
素直に、text()を使った方がよさげ。
> plot(-4:4, -4:4, type = "n") #実行後、グラフィック画面をマウスで拡大する
> text(rnorm(200), rnorm(200), 1:200, col = "red", cex=.4)
pdfに出せば、Zoomしながら、目的のIDが読めると思うけど。
適当にcexの値を調整して下さい。
0727726
2008/02/12(火) 20:33:10> dat <- matrix(rnorm(300), ncol=3)
> library(scatterplot3d)
> dat.3d <- scatterplot3d(dat,pch="")
> dat.2d <- dat.3d$xyz.convert(dat)
> text(dat.2d$x,dat.2d$y,1:100)
cexで重ならないように大きさを調整して、PDFに出せばOKだと思う。
っていうか、?scatterplot3dを読んだら即解決だと思うんだけど。
0728132人目の素数さん
2008/02/12(火) 21:12:34やってみますので、出来たら報告します
0729132人目の素数さん
2008/02/13(水) 11:42:57ありがとうございました。ヘルプは読んでみましたが、なかなか難しかったです。精進します。
> scatterplot3d(NR38)
ttp://www.uploda.net/cgi/uploader2/index.php?file_id=0000050578.jpg
> NR38.3d <- scatterplot3d(NR38, pch="")
> NR38.2d <- NR38.3d$xyz.convert(NR38)
> text(NR38.2d$x,NR38.2d$y,1:100)
ttp://www.uploda.net/cgi/uploader2/index.php?file_id=0000050579.jpg
0730726=727
2008/02/13(水) 13:52:490731132人目の素数さん
2008/02/13(水) 14:18:27何を頑張るんだい?
0732729
2008/02/13(水) 15:02:26マイリスト登録数、再生数、コメント数の3つのデータから動画の傾向を調べています。
0733731
2008/02/13(水) 17:27:29今気がついた。オレに当てたレスじゃなくて、オレになりすましていたのね。
初めてオレになりすましているやつに遭遇した。なんかメリットあるの?
ところで、3dのプロットだけど、rglにはtext3d()というのも用意されている。
こっちでグラフィックを書くのもありだよ。scatterplot3dよりもいろいろで
きることが多そうだ。
0734132人目の素数さん
2008/02/13(水) 18:22:37> open3d()
> text3d(rnorm(10)*100,rnorm(10)*100,rnorm(10)*100,text=1:10,adj = 0.5,
+ color="red")
0735132人目の素数さん
2008/02/15(金) 21:46:58f <- expression( a * x^2 );
として、この f をつかった合成関数 g(x) を微分したいのですが、
g <- expression( b * x * f );
として、D(g, "x") とやっても、f が定数として計算されてしまいます。
合成関数はどのように記述すれば良いのでしょうか?よろしくお願いします。
0736132人目の素数さん
2008/02/15(金) 23:46:45機能面では遜色はないのでしょうか?
Lisp-Statによる統計解析入門
http://cluster.f7.ems.okayama-u.ac.jp/~t2/appstat/
0737132人目の素数さん
2008/02/16(土) 00:08:38最新の本が1999年。
察しろ。
0738132人目の素数さん
2008/02/16(土) 03:09:35数値計算をLispでやる意味って何だろ?
0739132人目の素数さん
2008/02/18(月) 01:47:34f1(x)=Af2(x)+Bf3(X)
のうちf1(x)、f2(x)、f3(x)は既知とする。
このとき、AとBを計算したいのですが、
良いパッケージを教えてください。f2(x)とf3(x)は正規分布ではなく
任意な確立モデルの関数という条件でお願いします。
0740132人目の素数さん
2008/02/18(月) 05:58:550742132人目の素数さん
2008/02/19(火) 00:15:39意味がいまいちわかんないけど、数学知識ゼロの俺が答えてみる。
f1(x), f2(x),f3(x)が既知なら、x=x1, x=x2を代入して、
f1(x1)=Af2(x1)+Bf3(x1)
f1(x2)=Af2(x2)+Bf3(x2)
この2連立方程式を解けばAとBが求まると思うんだけど。
0743739
2008/02/19(火) 04:32:28実は、f1〜3(x)は元データを参考に最尤法で出した関数で、
・点でやった場合に元データに対して最大の精度がでるのかどうか
が個人的に分からない。
勝手に最適化してくれるならその方が良いかなと思ってた。
元関数の検定をしろと言われそうな話だが……。
あと確率モデル関数を重ねた場合の挙動が分からない。
積分で考えて多分A+B=1になりそうだ、とは思うけど。
情報後出しの上に明らかに色々勉強不足だね。吊ってくる。
0744132人目の素数さん
2008/02/19(火) 22:44:16ついでに4STEPエクセル統計という本のアドインソフトで、同様にボンフェローニで
行いました。
すると、結果が微妙にちがいます。優位さがある組み合わせは同じですが
Rで<0.01なのにエクセルでは<0.05と出たりするものがあります。
そもそもpairwise.t.testは一元配置につかうもので、2元配置に使ったこと自体
があやまってるのでしょうか。
0745132人目の素数さん
2008/02/19(火) 23:18:22pairwise.t.testのソース見たら単に一元配置の処理しかしてないことは分かるだろ。
エクセルのソフトは持ってないから知らないけど二元配置でちゃんと解析してるなら
結果が違って当たり前だな。
0746132人目の素数さん
2008/02/20(水) 00:02:36ありがとうございます!
…ということはこれは間違ってるんですね
ttp://cse.niaes.affrc.go.jp/minaka/R/R-anova07.pdf
Rで繰り返しのない二元配置の多重比較をする関数はないんでしょうか。
文献あさっても繰り返しなしの二元配置の多重比較は載ってないし…
0747132人目の素数さん
2008/02/20(水) 01:14:01間違ってますね。
多重比較の部分は各要因ごとにしか書いてないですからすべて一要因の多重比較ですね。
0748132人目の素数さん
2008/02/20(水) 20:59:15ありがとうございます。
繰り返しのない2元配置をRでどう多重比較したらよいのでしょう…
統計、Rなど独学で来たんですが、資料もなく
私は家政系なので専門じゃないです
もうこれ以上勉強しても分かりません
0749132人目の素数さん
2008/02/20(水) 22:40:37まず、RjpWikiで検索して
http://www.okada.jp.org/RWiki/
既出でなければ質問すればいいとおもいます。
http://www.okada.jp.org/RWiki/?%A3%D1%A1%F5%A3%C1%20%28%BD%E9%B5%E9%BC%D4%A5%B3%A1%BC%A5%B9%29
ただしネチケットには気をつけましょう。
0750132人目の素数さん
2008/02/20(水) 22:53:22ありがとうございます。
一度ここでも検索、質問させていただいたんですけど、分からなかったんです。
変身もいただけなかったので、ネチケットが悪かったのかもしれません(涙)
もう一度聞いてみます…
0751132人目の素数さん
2008/02/20(水) 23:12:06何を質問しているのか?
処理したいデータは具体的にどういうものか(抜粋で例示など)
どこは自分でわかっていて、どこはわからないか
を明確にして質問した方がイイかも
0752132人目の素数さん
2008/02/21(木) 22:30:50かけると30になるはずだが、エラーが出る。
x <- rep(1:4)
> x
[,1]
[1,] 1
[2,] 2
[3,] 3
[4,] 4
> x*t(x)
以下にエラー x * t(x) : 適切な配列ではありません
どうやったら正確な結果が出せるか教えてください。
0753752
2008/02/21(木) 22:32:23t(x)*x
の間違いです。どちらもエラーなので大勢に影響は無いけれど。
0754132人目の素数さん
2008/02/22(金) 00:18:41できますよ?
> x<-rep(1:4)
> x
[1] 1 2 3 4
> x*t(x)
[,1] [,2] [,3] [,4]
[1,] 1 4 9 16
既に回転済みのxをまた回してませんか?
0755132人目の素数さん
2008/02/22(金) 02:59:41やりたいのはこういうことじゃないかな。
> x <- t(1:4)
> x
[,1] [,2] [,3] [,4]
[1,] 1 2 3 4
> t(x)
[,1]
[1,] 1
[2,] 2
[3,] 3
[4,] 4
> x %*% t(x)
[,1]
[1,] 30
%*% で内積ね。
最初に t() してるのは単に x <- 1:4 だと行も列も設定されないからで、
特に深い意味は無い。
0756132人目の素数さん
2008/02/23(土) 14:57:54名前空間を汚染したくない場合、関数を作るのが普通なのでしょうか?
0757132人目の素数さん
2008/02/23(土) 15:11:01新しい列は既存の列に穴を開けるかも知れません
というエラーが出るのですが、既存の行列の列を増やすためには
何か作法が必要なのでしょうか?
0758132人目の素数さん
2008/02/23(土) 15:28:09すみません天啓が降りてきたので質問を取り下げます。
0759132人目の素数さん
2008/02/23(土) 17:05:310,1
0,2
:
0,10
1,0
1,1
1,2
:
1,10
2,0
:
:
10,10
こういう総当たり用の行列を作れる関数を教えてください。
お願いします。
0760132人目の素数さん
2008/02/23(土) 17:31:55http://www.okada.jp.org/RWiki/?%A5%D9%A5%AF%A5%C8%A5%EBTips%C2%E7%C1%B4#content_1_17
0761132人目の素数さん
2008/02/23(土) 17:41:13ありがとうございます。読んでみます
0762132人目の素数さん
2008/02/24(日) 11:03:47X %*% X %*% X %*% X %*% ....
を簡単に求める事ができる関数ってありますか?
0763132人目の素数さん
2008/02/24(日) 13:55:35ガンバレw
0764132人目の素数さん
2008/02/24(日) 18:19:020765132人目の素数さん
2008/02/25(月) 17:05:59eval(parse(text=...)))とpaste()のcollapseオプションを使うと、例えば
下記のようにできるよ。
> n <- 5
> X <- matrix(1:4,ncol=2)
> eval(parse(text=paste(paste(rep("X %*% ",n-1),collapse=''),"X")))
[,1] [,2]
[1,] 1069 2337
[2,] 1558 3406
0766132人目の素数さん
2008/02/25(月) 19:47:23(X%*%X)%*%(X%*%X)みたいな分業方式でやるか。
0767132人目の素数さん
2008/02/25(月) 23:52:04なにか質問ある?
0768132人目の素数さん
2008/02/26(火) 02:19:090769132人目の素数さん
2008/02/26(火) 20:23:12レスサンクス。内積は*じゃだめなのね。
勉強してきます。
0770132人目の素数さん
2008/02/27(水) 06:36:51sum(x*x)でも結果は内積とるのと同じだけど。
0771132人目の素数さん
2008/02/28(木) 01:54:552元配置の多重比較は分からんな。
繰り返しないならrep.aovでできるぞ。
ぐぐってみるべし。
0772132人目の素数さん
2008/02/28(木) 06:04:45一般的にはこうやってやるみたい。
ttp://omt.med.gunma-u.ac.jp/~tgaku/trivia/jEmalgo.htm
mclustってパッケージでできるみたいだけど、
式が行列を沢山含んでcurveで表示できないし、実際に代入してみても
元のデータと全然数値が合わない。
0773132人目の素数さん
2008/03/17(月) 16:18:58Rで、2.5及び97.5%点を求める場合、どのようにすればよいでしょうか。
(関数や無限大の表示入力方法等)
0774132人目の素数さん
2008/03/17(月) 20:24:59そのnって自由度か?そうなら笑い話ということか。
0775132人目の素数さん
2008/03/21(金) 15:20:100776132人目の素数さん
2008/03/26(水) 11:35:410777132人目の素数さん
2008/03/29(土) 19:47:36微分できない関数などもあるのでしょうか?
全面的に結果を信頼して大丈夫ですか?
0778132人目の素数さん
2008/03/30(日) 02:04:23初等関数に対する微分の公式を与えておけばどんな関数も分解して微分するだけなので
問題ないのでは?積分はそんなに簡単にはいかないけど。
0779132人目の素数さん
2008/03/31(月) 17:31:28qchisqでいいんじゃね?
0780132人目の素数さん
2008/03/31(月) 18:10:46結局実現できたのでしょうか?
0781132人目の素数さん
2008/04/07(月) 02:38:12VCでGUI作ってそこで色々処理させてる途中でRの関数を呼びたいんですけど。
0782132人目の素数さん
2008/04/07(月) 07:06:19あのね、上のテンプレとか確認しましょうよ。
http://www.okada.jp.org/RWiki/?R%A4%AB%A4%E9%C2%BE%B8%C0%B8%EC%CD%F8%CD%D1
0783132人目の素数さん
2008/04/07(月) 12:18:22おお、できるんですか。
ちょっと使ってみます。
とりあえずできる、できないって一言レスを期待してテンプレも見ずに書き込んじゃいました。。。
丁寧にどうも。
0784132人目の素数さん
2008/04/07(月) 13:54:57そのページはRからの他言語利用で>>781がほしいのはその逆のようですが…。
Rをコマンドとして呼び出すことはできるのでそうするんでしょうな。
0785132人目の素数さん
2008/04/09(水) 13:29:58R の遅延評価は、どのように活用すれば良いのでしょうか?
Haskellをちょっとだけかじったので、ああいう感じに使ってみようとしたので
すが、組み込みの遅延リストなどは無いようで(巨大なベクターを作成すると、
メモリ上に全部領域確保され、初期化されてしまう)、どうも勝手がわかりま
せん。
x = 0
for (i in 1:1000000) x <- x + i
print(x)
こういう計算でも、必要になった時点でデータが作られるわけではないようで、
1:1000000 が全部領域確保されてしまいます。
どういう使い方が想定されているのか、お教えいただけないでしょうか?
0786785
2008/04/09(水) 16:44:28「R が遅延評価であることの、うまい使い方を教えていただけませんか?」
よろしくお願いいたします。
0787132人目の素数さん
2008/04/10(木) 03:21:46なんでだろ
0788132人目の素数さん
2008/04/10(木) 11:15:18依存コードが多くなってきてるいい兆候じゃないかな
0789132人目の素数さん
2008/04/12(土) 20:12:56guiから一括ではダウンロードまでしかしてくれないし
0790132人目の素数さん
2008/04/13(日) 18:59:07VC++上からRの関数って実行できますか?
色々と試してみたのですが、コンパイルは通るものの、
肝心のRの関数のコール時にアプリがダウンしてしまいます。
アドバイスをお願い致します
0791132人目の素数さん
2008/04/14(月) 16:25:270792781
2008/04/14(月) 16:51:15RcppTemplateでググった?
まだ試してないんでできるかは分かりませんが・・・
0793132人目の素数さん
2008/04/14(月) 19:15:17頭から呼び出す必要あると思う。
0794132人目の素数さん
2008/04/14(月) 19:38:12多言語=>他言語
0795790
2008/04/14(月) 22:33:24レスありがとう
RcppTemplate は試しました。
pexport,libコマンド使用して Rdllからlibファイル作ったりもした。
一応コンパイルは通るんですけどね、
VC++上でデバッグかけると「AccessViolation」発生しちゃうんですよ。
恐らく、793さんの言うとおり、ライブラリだけの利用はできないような機がします。
RcppTemplateは 「R上で、C++を含んだR関数を作成するためのモノ」だと思いました(多分)
う〜ん、残念。
0796790
2008/04/14(月) 22:44:48本当ですか?
RjpWikiの他言語インターフェース一覧は一応確認してますが、
Cから呼び出せるインターフェースは無かったです。
Rの中にある、 Call_R っていうやつですかね。
あれも「R上でCを含んだR関数を作成するもの」のような機が。
...詳細教えてください m(__)m
0797132人目の素数さん
2008/04/14(月) 22:46:02cat("abc¥ndef")
とやってもコマンド版なら改行されるけどGUI版だと改行されずそのまま¥nが表示されてしまいます。どうしてかわかりませんか?
0798132人目の素数さん
2008/04/14(月) 23:32:46Mathematicaで多変量とか扱うと、とんでもない値を返してくるか、止まるので。
それでも R よりましなら、式をテイラー展開の繰り返しで本当に適当な近似値出すんですが。
0799132人目の素数さん
2008/04/15(火) 09:21:55\とoption+\の違いは分かる?Macユーザなら誰でも一度ははまる。
0800132人目の素数さん
2008/04/15(火) 12:00:47CやC++用のが
0801132人目の素数さん
2008/04/15(火) 14:46:59正直Cのインターフェースが用意されてない理由が分からない
>>796
http://www.okada.jp.org/RWiki/?R%A4%C8%A5%A4%A5%F3%A5%BF%
A1%BC%A5%D5%A5%A7%A1%BC%A5%B9%A4%CE%A4%A2%A4%EB%A5%A2%A5%D7%A5%EA
ここ見た?
CからJAVAを呼び出すのはJNIでいけるし間接的にCからRを呼び出せるんじゃないか?
実行速度は期待できないけど
0802132人目の素数さん
2008/04/15(火) 14:51:450803132人目の素数さん
2008/04/17(木) 22:35:32ありがとう!Mac初心者だから知らなかった。
バックスラッシュと円記号は別なんですね。
0804132人目の素数さん
2008/04/18(金) 09:28:54そう。MacでRjpwikiに書き込むときに、バックスラッシュと円記号
の違いで文字化けが発生してページを壊してしまうときがある。
0805132人目の素数さん
2008/04/18(金) 10:42:01・・・・いわねーな
0806132人目の素数さん
2008/04/18(金) 11:10:020807132人目の素数さん
2008/04/18(金) 13:02:430808132人目の素数さん
2008/04/18(金) 14:56:09>>806
雑なのではなく、むしろ余計なお世話。「円記号とバックスラッシュが同じ」と
いうバットノウハウをもつ人間からは、そこまで細かい配慮はいらんとなるが、
そうではない人向けに両方を出力できるようにしている。そもそもUTF-8では
円記号とバックスラッシュに違うコードが割り当てられているので、UTF-8を
導入した以上は、明瞭に区別するのが正当とおもう。euc-jpなLinuxユーザなの
で、他のutf-8なOSがどうなのか知らないけど。
0809132人目の素数さん
2008/04/18(金) 15:37:250810132人目の素数さん
2008/05/01(木) 19:24:360811132人目の素数さん
2008/05/13(火) 23:56:21何がいけないんでしょうか??
> require(datasets)
> data(iris)
以下にエラー file.info(x) : ファイル名変換に問題があります
> data()
以下にエラー file.info(x) : ファイル名変換に問題があります
> data(iris, package="datasets")
> head(iris)
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 5.0 3.6 1.4 0.2 setosa
6 5.4 3.9 1.7 0.4 setosa
0812132人目の素数さん
2008/05/14(水) 01:19:34ひょっとしてファイル名に問題があったりする?
知らんけど。
0813132人目の素数さん
2008/05/14(水) 02:23:440814132人目の素数さん
2008/05/14(水) 02:48:490815132人目の素数さん
2008/05/14(水) 16:46:29Linux版だとそのエラーはでないね。Rを想定外の場所にインストールしているとか
0816132人目の素数さん
2008/05/14(水) 20:51:122.7.0を再インストールした段階では問題ありませんでした。
そのあと、Rcmdrを追加したあとで、おかしくなりました。
それから、どうにもなりません。
どなたかご解決をお願いします。
0817132人目の素数さん
2008/05/15(木) 12:39:210818132人目の素数さん
2008/05/15(木) 22:59:11以下のもエラーがでるようになっていました・・・何か参考になれば・・
> demo()
Warning message:
In file.show(outFile, delete.file = TRUE, title = paste("R", tolower(x$title))) :
0819132人目の素数さん
2008/05/24(土) 09:41:34plot(hoge.ts, plot.type = "single")
をしているのですが、更に棒グラフ+ラインプロットのように系列によって
プロット方法や色などを変えたいと考えています。
で、?plot,?plot.ts,?plot.default,?parなどを読んだのですが、
系列ごとに変えることがさっぱりできません。これはもしかして
plot一発ではできなくて、低レベル描画関数を組んで自分でデータ系列ごとに
1つづつプロットしないと駄目なんでしょうか?
単に無知・調査不足でできないのか、それとも本当に↑の通りなのか
見極めが付かないままなので、先達の方に道程を指し示していただければと。
0820132人目の素数さん
2008/05/25(日) 02:17:18なんかイラっとくる
0821132人目の素数さん
2008/05/26(月) 01:17:34system()じゃ足りないの?
0822132人目の素数さん
2008/05/26(月) 13:55:59C#自体がどうのこうのという意見は置いといてな。
0823132人目の素数さん
2008/05/26(月) 16:30:55http://science6.2ch.net/test/read.cgi/math/1211786770/
0824132人目の素数さん
2008/06/01(日) 16:36:34エディタで書いてRConsoleにコピペしているのですが
もっと簡単な方法はないですかね?
0825132人目の素数さん
2008/06/01(日) 17:14:08むしろ、そんな面倒なことをしている人の方が少なそう。emacs+essとかTinn-Rとか
Rjpwikiには書いていなかったっけ?
0826132人目の素数さん
2008/06/05(木) 07:52:57個人的には割と満足。
ただエディタがカッコとかクウォートを補完するのを止めたいのだが…
まあもう少し調べるか。
0827132人目の素数さん
2008/06/07(土) 19:07:56epsファイルに出力すれば使えるのはわかりますが,WindowsメタファイルやPDFに直接出力したときに反映されるようにしたいんですが……。
0828132人目の素数さん
2008/06/08(日) 00:17:32Windowsメタファイルは知らんが、pdfはHelveticaになっていないの?
> pdf("tmp.pdf")
> plot(runif(10),runif(10))
> dev.off()
null device
1
> system("/opt/local/bin/pdffonts tmp.pdf")
Error: No paper information available - using defaults
name type emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
ZapfDingbats Type 1 no no no 5 0
Helvetica Type 1 no no no 10 0
Helveticaになっているよ。
0829132人目の素数さん
2008/06/08(日) 02:11:47小塚明朝になってます…
epsをつくるときにフォントファミリーを指定する方法以外調べてもわからなかったんですが,どう設定すればいいのでしょうか?
0830132人目の素数さん
2008/06/09(月) 00:19:32初期設定のどこかで小塚明朝にしているでしょ。
>>828はデフォルトの状態で何にも触っておらんよ。
> pdf.options()$family
[1] "Helvetica"
上記のようになっていなかったら、
pdf.options()$family <- "Helvetica"
でいいじゃね。
0831132人目の素数さん
2008/06/09(月) 01:45:26自由度19,19のデータ列a,bに対してF検定を行なったところ、
以下の結果を得ました。
var.test(c,b,conf.level=0.95)
data: c and b
F = 1.3572, num df = 19, denom df = 19, p-value = 0.512
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
0.5371931 3.4288788
sample estimates:
ratio of variances
1.357192
95%信頼区間は(0.5371931, 3.4288788)とのことです。
しかし実際にF分布から信頼区間を求めると
> qf(0.025,19,19)
[1] 0.3958122
> qf(0.975,19,19)
[1] 2.526451
と、上のF検定結果とは異なる結果になります。
(それ以前に、上の検定結果は(下限)=1/(上限)の関係すら満たしていません)
var.test()の信頼区間とは何を現しているのでしょうか?
0832831
2008/06/09(月) 01:49:470833829
2008/06/09(月) 03:45:43ありがとうございました。
0834132人目の素数さん
2008/06/09(月) 06:00:351/qf(0.025,19,19)=2.526451
=qf(0.975,19,19)
0835132人目の素数さん
2008/06/09(月) 08:25:28信頼区間なんだから非心F分布から求めてるんだろ。
0836132人目の素数さん
2008/06/09(月) 22:15:28そちらは当然逆数の関係にあります。
「上の検定結果が逆数関係を満たしていない」とは、F検定結果の信頼区間のほうをさしています。
>>835
非心F分布ですか…。
勉強不足でしりませんでした…。
0838132人目の素数さん
2008/06/10(火) 02:04:25個別要素ではなくて一括して取り出したいです。
(1,2,3,4,5,6,7)
↓
(3,4,5,6)
1 2 3 4
5 6 7 8
9 10 11 12
↓
6 7
10 11
みたいなかんじです。
0839132人目の素数さん
2008/06/10(火) 09:54:17[1] 1 2 3 4 5 6 7
> a[3:6]
[1] 3 4 5 6
> (b <- matrix(1:12,ncol=4,byrow=TRUE))
[,1] [,2] [,3] [,4]
[1,] 1 2 3 4
[2,] 5 6 7 8
[3,] 9 10 11 12
> b[2:3,2:3]
[,1] [,2]
[1,] 6 7
[2,] 10 11
やりたいことがいまいち分からないが、こういうこと?
0840132人目の素数さん
2008/06/10(火) 19:43:55qf(c(0.025, 0.975), 19, 19) * 1.357192
[1] 0.5371931 3.4288790
0841132人目の素数さん
2008/06/11(水) 23:06:05qf(0.025,19,19) の 0.3958122 と
qf(0.975,19,19) の 2.526451 は
2群の標本分散の比(つまりF値)の棄却域。
95 percent confidence interval:
0.5371931 3.4288788
ってのは、2群の標本分散の比であるところの1.3572(F値そのもの)
から推定すると、2群の母集団の分散の比はこの辺にあるだろうなー、
という幅。つまりは信頼区間。
母分散の比の推定を幅ではなくて一点でしぼるのなら、最も合理的な値は
F値であるところの1.3572。
0842831
2008/06/11(水) 23:33:17なるほど、分かってきた気がします!
母集団のF値が1で仮定したときの帰無仮説における95%信頼区間が0.3958122〜2.526451であり、
これから標本値のF値が外れていると棄却する。
一方、「95 percent confidence interval」は、逆に標本値がF=1.3572であったときの母集団の推測値の95 percent confidence intervalということですか。
これから帰無仮説における母集団のF値=1が外れていると棄却する。
納得いきました。結局は同じことだったんですね。
ありがとうございました。
0843132人目の素数さん
2008/06/12(木) 00:43:15九天社は2008年06月10日に営業を停止しました。
************
このページは、元サイト管理者の判断により一時的にサーバーを移転して公開しています。書籍のデータのダウンロード等、必要な方はなるべくお早めにダウンロードしてください。
--------------------------------------------------------------------------------
Rプログラミング&グラフィックス
[著]高階知巳 [価格]3,990 円(税込)
--------------------------------------------------------------------------------
Rで学ぶデータマイニングII シミュレーションの視点から
[著]熊谷悦生、舟尾暢男 [価格]3,990 円(税込)
--------------------------------------------------------------------------------
R Commander ハンドブック
[著]舟尾暢男 [価格]3,360 円(税込)
--------------------------------------------------------------------------------
Rで学ぶデータマイニング I データ解析の視点から
[著]熊谷悦生、舟尾暢男 [価格]3,780 円(税込)
--------------------------------------------------------------------------------
The R Tips データ解析環境 R の基本技・グラフィックス活用集
[著]舟尾 暢男 [価格]3,675 円(税込)
--------------------------------------------------------------------------------
The R Book データ解析環境「R」の活用事例集
[著]岡田 昌史 [価格]3,990 円(税込)
--------------------------------------------------------------------------------
0845132人目の素数さん
2008/06/12(木) 12:52:50ぬわっんと、倒産ですか。
すみませんが、その移転先を教えて頂けませんか、お願いします。
0846132人目の素数さん
2008/06/12(木) 17:33:11倒産だし
0847132人目の素数さん
2008/06/12(木) 17:41:13これかな
ttp://www.9-ten.com/list/key_rtoukei.php
0848132人目の素数さん
2008/06/12(木) 21:49:10いや、サイトの移転先の話ですw ページトップからは入れなくなっているんで。
>847
ありがとうございます。
0849132人目の素数さん
2008/06/13(金) 11:49:50分解したwaveletを再構成するにはどうしたらいいか教えてください
関数が今一分からないです
0850132人目の素数さん
2008/06/15(日) 22:25:02ところが、Amazonはじめいつも使っているネット書店では在庫なし!
しばらく探し歩いて、今日、無事に届いた。急な出費は痛いけど、
悔やむより良いかなと。
0851hoge
2008/06/15(日) 22:54:04ググったけど分からん!
教えてください。
0852132人目の素数さん
2008/06/15(日) 23:07:43しらん(´・ω・`)
0853132人目の素数さん
2008/06/15(日) 23:31:00クスっときた
0854132人目の素数さん
2008/06/15(日) 23:32:26くらんって言う人が多い気がする
0855132人目の素数さん
2008/06/19(木) 15:07:580856132人目の素数さん
2008/06/19(木) 17:32:09> compare <- height >= 160 & height < 170
> table(compare) #これとか
compare
FALSE TRUE
21 10
> length(which(compare)) #これとか
[1] 10
0857132人目の素数さん
2008/06/20(金) 15:31:21行列データなのですがまずデータフレームにするべきなんですね。
0858132人目の素数さん
2008/06/20(金) 19:07:32それでさあ、くだらないブログが腐るほど引っ掛かるんだよね。
知ったかとか、出鱈目とか鵜呑みにしたような内容の馬鹿ブログ。
いや、早い話がお前らブログ辞めろって。
いや、それだけなのよ。まじで。お願いだから辞めて下さい。
資源の無駄、そして多くの人、社会の利便性と生産性を根こそぎかっさらってますよ。お前達
0859132人目の素数さん
2008/06/20(金) 20:29:23お前のようなタイプが一番生産性低いんだが。
0860132人目の素数さん
2008/06/20(金) 23:12:59データフレームの方が扱いやすいが
それくらいの集計なら行列でもたやすいぞ。
0861132人目の素数さん
2008/06/21(土) 00:21:34> height <- 150:180
> sum(height >= 160 & height < 170 )
[1] 10
これでいいんじゃね。
0862132人目の素数さん
2008/06/21(土) 07:01:21ちゃんと分析するならこんな感じ。
# 分析対象データを乱数で発生させる。
height<-runif(100,min=150,max=180)
# 集計する区切り位置を決める。
breaks<-c(150,160,170,180)
# 区切り位置で区切った結果が因子になって出てくる。
fac<-cut(height,breaks=breaks,right=F)
# 因子の数を集計すると度数分布が出てくる。
table(fac)
# ついでにヒストグラムも描いてみる。
hist(height,breaks=breaks,right=T)
0863132人目の素数さん
2008/06/21(土) 18:13:480864132人目の素数さん
2008/06/27(金) 16:54:251列に限定した度数分布を求めることはできたのですが
heightが160以上170でweightが50から60は何人いるか、という2つ以上の条件を含めた度数分布をもとめるにはどうすればよいでしょうか
0865132人目の素数さん
2008/06/27(金) 18:50:39うーむ……クレクレくんかよ。ちょっとは考えようや。
compareH <- height >= 160 & height < 170
これで、160~170が TRUE/FALSE で取れてくるんでしょ。なら、
compareW <- weight >= 50 & weight < 60
で 50~60が TRUE/FALSE で取れるじゃん。
両方が TRUE の場合のみカウントすれば良いんだから、
length( which(compareH & compareW) )
0866132人目の素数さん
2008/06/27(金) 19:21:22160<=height<170 and 50<=weight<60
とか書けないのかな・・・・
まあいいけど
0867132人目の素数さん
2008/06/27(金) 20:20:13sum(height - 160)%%10 < 10 & (weight - 50)%%10 < 10)
礼ぐらいまともに出来るようになれよ。
0868132人目の素数さん
2008/06/27(金) 22:31:38dataset<-data.frame(height=runif(100,min=150,max=180),weight=runif(100,min=30,max=100))
# 集計する区切り位置を決める。
breaks.height<-c(150,160,170,180)
breaks.weight<-c(30,40,50,60,70,80,90,100)
# 区切り位置で区切った結果が因子になって出てくる。
fac.height<-cut(dataset$height,breaks=breaks.height,right=F)
fac.weight<-cut(dataset$weight,breaks=breaks.weight,right=F)
# クロス表を出す。
table(fac.height,fac.weight)
少し汎用性を持たせるとこんな感じだろうか。僕も勉強し始めだから。
なんでこれをRで集計する必要があるのか、興味あるところ。
0869132人目の素数さん
2008/06/27(金) 22:35:32rcompgenちうものを最近知ったわけで。コマンド補完は
ESSでしか無理だと思っていて、emacs挫折者の僕としては
rcompgenの補完機能だけで泣けた。あまり紹介されていない
機能の様だけれど、R使いの人達には言うまでも
ないことなのだろうか、それとも大穴なのだろうか。
0870132人目の素数さん
2008/06/27(金) 23:26:38少しは自分できちんと調べられるようになります。
0871132人目の素数さん
2008/06/27(金) 23:37:01あ〜勘違いですよ
質問者ではないので、質問者を責めないであげて。
単に冗長だなと思っただけ。
0872132人目の素数さん
2008/06/28(土) 01:02:05沢山の人間が書き込んでいるとは
想像できていなかったんだ、
許してやってくれ。
0873132人目の素数さん
2008/06/28(土) 10:18:190874132人目の素数さん
2008/06/28(土) 17:26:470875132人目の素数さん
2008/06/28(土) 17:38:540876849
2008/06/28(土) 18:22:410877132人目の素数さん
2008/06/28(土) 19:29:220878849
2008/06/28(土) 20:08:47それが分かれば再変換可能
0879849
2008/06/28(土) 20:09:120880132人目の素数さん
2008/06/30(月) 11:03:23罪滅ぼしに、160 <= hoge < 170が出来ない理由を書いておく。
算術演算子なら、演算子の優先度に基づいて左から解釈されていく。
このとき一つ一つの演算結果は数値だ。一方比較演算子はbooleanが結果になる。
例で言うと (160 <= hoge) < 170 で括弧の中身を比較したあとに < 170 の演算を
やるわけだが、括弧内の結果(T/F) と数値の比較はできない。T を1と強制変換
したとしても、それは hoge < 170 の比較ではなくなるので意味が無い。
このため、コードが人間からすると冗長になるのは仕方が無い。
0881132人目の素数さん
2008/06/30(月) 19:10:31> 160 <= hoge < 170が出来ない理由
> hoge <- function(x){
+ a <- unlist(strsplit(x,' '))
+ res <- eval(parse(text=paste(a[1],a[2],a[3]))) &
+ eval(parse(text=paste(a[3],a[4],a[5])))
+ return(sum(res))
+ }
> height <- 150:180
> hoge('160 <= height < 170')
[1] 10
0882132人目の素数さん
2008/06/30(月) 19:24:550883132人目の素数さん
2008/06/30(月) 20:16:16それを>866はコードが冗長だといっているのでは?と思ったのだが。
出来ない訳ではないのは分かっているし、もっと単純にやる事も出来るでしょ。
sum(hoge * (hoge >= 160) < 170)
で出来る。これにしても、人間にとっては冗長だと思うけど。
0884132人目の素数さん
2008/06/30(月) 21:11:30欠かれたコードが冗長と言っているのでなく、
そもそも冗長になってしまう言語面の問題を
言いました。
用意すれば良いのは分かっているのですが。
かといって、テクニックで短くなるの自分だけが
見る時以外は良くないし。
少々冗長でも分り易ければいいんですが。
基本的には、言語として人に優しくないなと思ったまでです。
0885132人目の素数さん
2008/06/30(月) 21:14:20お!主語が抜けてた。再度
またS-PLUSの開発会社が身売りされた
0886132人目の素数さん
2008/06/30(月) 21:59:370887132人目の素数さん
2008/06/30(月) 22:40:11あまり大げさに考えないでください。
逆いえば、まだまだ考えるべき世界が残っている
ということですし。
0888132人目の素数さん
2008/07/01(火) 03:58:520889132人目の素数さん
2008/07/01(火) 10:53:45>>3
0890132人目の素数さん
2008/07/04(金) 03:00:58根気が要るだけで不可能と決まってはいないよね
確か研究者も居て今最中だと聞いたことがある
0891132人目の素数さん
2008/07/04(金) 06:21:56>>881 でも関数定義してるよ
どちらかと言えば、関数定義しながら
作っていく言語
0892132人目の素数さん
2008/07/04(金) 18:47:40foo<-seq(from=100000,to=1000000,by=10000)
plot(foo,foo)
とすると、標準デバイスに散布図が描かれるけど、
x,y軸の数値表記が
2e+05 4e+05 ... 1e+06
と指数表記されてしまう。これを
200000 400000 ... 1000000
と表記させることはできないだろうか。
低水準作図関数で作るまでの必要はないし、
ものすごく簡単なことで実現できそうで、
wikiには恥ずかしくて書けないから、
こっちで誰か教えてくれまいか。
環境は Windows XP SP2 R 2.7.0 です。
0893132人目の素数さん
2008/07/04(金) 18:59:00っていうかwikiのどこかにそれ書いてあると思うけど。
0895132人目の素数さん
2008/07/04(金) 23:40:59options(scipen=2)
http://cse.naro.affrc.go.jp/takezawa/r-tips/r/11.html
0896132人目の素数さん
2008/07/05(土) 17:41:110897132人目の素数さん
2008/07/05(土) 17:43:470899132人目の素数さん
2008/07/07(月) 16:04:57R初心者なんですが、Rcmdr使ってるんですけど
このパッケージで探索的因子分析ってできますか?
因子数を最初に決めるのが困難なですが・・・。
0900132人目の素数さん
2008/07/13(日) 20:03:53Error: cannot allocate vector of size 342.5 Mb
R(2168,0xa01a6fa0) malloc: *** mmap(size=359137280) failed (error code=12)
*** error: can't allocate region
の様なエラーが出てしまうのですが、
これはメモリ割当が足りないという事でしょうか?
MacBookPro/MacOSX10.5.4/2G memory/R2.7.1/Rapp1.25
です。
どのようにしたら回避できるでしょうか?
0901132人目の素数さん
2008/07/15(火) 19:21:55redhatにRをインスコして
「R --vanilla << EOF」
を用いてシェルスクリプト上からバッチ処理したいなと思ったんですが
「以下にエラー check.options(new, name.opt = ".X11.Options", envir = .X11env) :
c("invalid argument name 'restoreConsole' in 'png(str, width = 1920,
height = 980, pointsize = 12, bg = \"white\", '", "invalid argument
name 'restoreConsole' in ' res = NA, restoreConsole = TRUE)'")
Calls: png -> check.options
実行が停止されました」
と出てしまい実行できませんでした。
試しに
「 x <- 1:10
y <- 1:10
plot(x, y)
q() 」
をEOFで挟んで実行すると問題なく画像ファイルが出力されました(PDF形式でしたが。。)
エラー内容を読み解くことすらできません・・どなたかわかるかたいらっしゃいませんか?
0902132人目の素数さん
2008/07/15(火) 20:27:07普通はグラフィックディバイスを開いてからplot()を使うので、グラフィックディバイス
を開かずにいきなりplot()すれば、エラーが出て当然だけど、それでもpdfを吐いてくれる
んだ。親切な仕様だな。
?png
?postscript
あたりを読む。
0903132人目の素数さん
2008/07/16(水) 01:21:04読み解く根性がないと言われたらそれまでだけど・・・
R-tipsの前におすすめの入門書とかないですかね。。。
0904132人目の素数さん
2008/07/16(水) 09:57:51筆者がR-tipsがわかりにくいという評判なので、もっとわかりやすいのを書いたと
言っているデータ解析環境「R」―定番フリーソフトの基本操作からグラフィックス、統計解析まで-
ttp://www.amazon.co.jp/dp/4777511847
を薦めている。「Rによるデータサイエンス」もお薦め。
0905132人目の素数さん
2008/07/16(水) 12:39:59親切にどうもです
今日本屋で見てきます。
0906132人目の素数さん
2008/07/17(木) 15:43:46prcompで主成分分析したときに出てくる値というのは、
分散共分散行列による主成分分析の値ですよね?
この青木先生のページ(ttp://aoki2.si.gunma-u.ac.jp/R/pca.html)
にあるpcaと言う関数の主成分負荷量とはいったい何の値なんでしょうか?
prcompで主成分分析したときの値とだいぶ異なりました。
相関行列による主成分分析の値かと考えたんですが計算したら違うようなので・・・
また、普通主成分分析をするとしたらどちらの値を指すのでしょうか?
0907132人目の素数さん
2008/07/17(木) 19:48:170908132人目の素数さん
2008/07/18(金) 00:16:09固有ベクトルは長さが1で負荷量は長さが固有値という違いですね。
分散共分散行列に基づく主成分分析は変数の測定単位が同じである必要が
あるけど相関行列に基づく方はこだわらなくてよいので青木先生は初期設定を
そちらにしてるのかな。
0909906
2008/07/18(金) 22:40:26なるほど。
prcompの方は分散分析行列によるもので長さが1の固有ベクトル、
青木先生のpcaは相関行列によるもので長さが固有値の負荷量ということですね。
でも今使ってるデータをprcompとpcaで解析すると、
第一主成分の係数の符号は同じなんですが、
第二主成分以降の係数の符号が違くなります。。。
(符号が反転してるわけではないので、たぶん主成分の順番が入れ替わってます。)
分散分析行列に基づいた解析と相関行列に基づいた解析では
主成分の順番が入れ替わることはありえるのでしょうか?
それともやり方が何か間違っているのでしょうか・・・?
説明が下手ですいません
0910132人目の素数さん
2008/07/19(土) 21:37:11分散共分散行列に基づく主成分と相関行列に基づく主成分は
大きく異なることも多いです。特に分散共分散行列に基づく主成分で
第1主成分が総合効果の場合、相関行列ではそれが消えてしまいます。
つまり順番だけとは限りません。
0911132人目の素数さん
2008/07/20(日) 04:12:32に関して教えていただきたいのですが、サンプルプログラムを走らせても
> boxplot2()
windows
2
と表示されるだけで、図が作成されません
何か問題があるのでしょうか?
どなたか、どうぞよろしくお願いします
0912132人目の素数さん
2008/07/20(日) 12:39:57なるほど、全然別のものになってしまうんですね。
疑問が解決しました、ほんと丁寧にありがとうございました。
0913132人目の素数さん
2008/07/28(月) 10:44:550914132人目の素数さん
2008/08/03(日) 22:30:29Excel 用の統計本を買ったら、統計関連関数が山ほどあって、
Ruby から Excel 関数を利用することを試みつつ、
相関、推定、検定と書いてきて、重回帰分析で Excel 関数を使うか、
Ruby の Matrix を使うか、しばし熟考・・・・・
これはムダだと、ようやく気づいた。
「なんか、あるだろ、統計ソフトが」
んで、ググって、ここに来たよ。
マジですごいなコレ(R)。
文法が変だと思ったけど、慣れだな。
自力でやっていたことはムダではなかった。
R の変数名、関数名、引数を見るだけで、もうやりたいことがわかるし。
Web 上に情報がてんこ盛りだし。ありがてー ・゚・(ノД`)・゚・
0915132人目の素数さん
2008/08/04(月) 04:22:33文法は、Cの皮をかぶったLISPだから。RUBY屋ならすぐになれると思うよ。
0916132人目の素数さん
2008/08/05(火) 16:41:38共分散構造分析がやりたいんだけど他の参考書と比べても充実してるし
豊田秀樹先生もRによるSEMマニュアル出してくんないかな
0917914
2008/08/05(火) 22:23:08>文法は、Cの皮をかぶったLISPだから。RUBY屋ならすぐになれると思うよ。
ハハ。その通りみたいだ。
Rgui を起動してみて、Stk(Scheme) みたいだと思ったよ。「なつかしー」
What is STk?
ttp://kaolin.unice.fr/STk/STk.html
STk is a free R4RS Scheme interpreter which can access the Tk graphical
package. Concretely, it can be seen as the standard Tk package where Tcl has
been replaced by a Scheme interpreter. STk embeds also an efficient CLOS
like object oriented system, called STklos, which provides:
The mandatory screenshots page
ttp://kaolin.unice.fr/STk/screenshots.html
The STk Code Editor
This is a specialized editor for Scheme programming.
It do some font highlighting and parenthesis matching.
0918132人目の素数さん
2008/08/06(水) 21:39:49いいですよね、その本。
私も買ってしまいました。
大学の教授の研究室にもありましたよ!
0919132人目の素数さん
2008/08/10(日) 17:23:210920教えてください
2008/08/11(月) 15:21:15例えば次のようなデータ(X,Y,Z)があります。
X Y Z
20 10 120
30 56 201
5 40 150
12 25 96
19 27 115
Zの値がが100未満ならA、Zの値が100以上150未満ならB、Zの値が150以上ならCと変換して、
下記のようにしたいのですが、どなたか教えていただけないでしょうか?
X Y Z
20 10 B
30 56 C
5 40 C
12 25 A
19 27 B
どうぞよろしくお願いいたします。
0921132人目の素数さん
2008/08/11(月) 22:42:20> zc <- ifelse(z<100,"A",ifelse(z>=100 & z<150,"B",ifelse(z>=150,"C",NA)))
> zc
[1] "B" "C" "C" "A" "B"
エクセルと同じかな?
0922132人目の素数さん
2008/08/11(月) 23:12:14> z[z>=150] <- "C"
> z[z>=100 & z<150] <- "B"
> z[z<100] <- "A"
> z
[1] "B" "C" "C" "96" "B"
?????どうしてうまくいかない???
逆では?? うまくいかない??
> z <- c(120,201,150,96,115)
> z[z<100] <- "A"
> z
[1] "120" "201" "150" "A" "115"
> z[z>=100 & z<150] <- "B"
> z
[1] "B" "201" "150" "A" "B"
> z[z>=150] <- "C"
> z
[1] "C" "C" "C" "C" "C"
なぜなのか教えて
0923132人目の素数さん
2008/08/11(月) 23:51:56これみると
"A","B","C"という値は、"150"より
大きいということでしょう。
HEX出力してみるとそうなってんじゃないかな。
0924132人目の素数さん
2008/08/12(火) 02:40:11> z <- c(120,201,150,96,115)
> z2<-z
> z2[z>=150]<-"C"
> z2[z>=100&z<150]<-"B"
> z2[z<100]<-"A"
> z2
[1] "B" "C" "C" "A" "B"
自分自身に入れると途中から数ではなく文字列になるので
>>923のいうように文字列比較になってしまいうまくいかない。
0925教えてください2
2008/08/12(火) 07:41:22条件文を
> zc <- ifelse(data$Z<100,"A",ifelse(datat$Z>=100 & data$Z<150,"B",ifelse(datat$Z>=150,"C",NA)))
を使って、Zに記号をつけた新しいdataNEW=(X,Y,Z)ができますか?
すみませんまた教えていただけませんか?よろしくお願いします。
0926132人目の素数さん
2008/08/12(火) 11:51:07recodeするときは、ifelseよりもcutを使った方が楽だと思うぞ。
> z <- c(120,201,150,96,115)
> z <- cut(z,c(-Inf,100,150,Inf),include.lowest=TRUE)
> levels(z) <- LETTERS[1:3]
> z
[1] B C B A B
Levels: A B C
0927132人目の素数さん
2008/08/13(水) 14:16:120928132人目の素数さん
2008/08/14(木) 08:46:30信頼係数95%のときに、自由度10の両側有意水準は、以下のようにして得られる。
> qt(0.975,10)
[1] 2.228139
> qt(0.025,10)
[1] -2.228139
0929132人目の素数さん
2008/08/15(金) 17:51:35二つの変数があるときの二次計画をときたいのですが。。
ipopでは無理なのでしょうか?
0930教えてください2-1
2008/08/15(金) 22:32:45ifelseよりシンプルに書けそうですね。
申し訳ありませんが下の2行の翻訳をお願いいます。
> z <- cut(z,c(-Inf,100,150,Inf),include.lowest=TRUE)
> levels(z) <- LETTERS[1:3]
A、B、Cの指示はどの部分ですか?
よろしくお願いします。
0931132人目の素数さん
2008/08/16(土) 04:45:38LETTERS[1:3]
0932926
2008/08/16(土) 21:33:49代返ありがと
>>925
ベクトルではなくてデータフレームを扱いたいと言うこと?cbind()で足せばOK
> dat <- data.frame(x=month.name[1:5],y=runif(5),z=c(120,201,150,96,115))
> dat
x y z
1 January 0.63212456 120
2 February 0.19865357 201
3 March 0.31978766 150
4 April 0.88575752 96
5 May 0.01307491 115
> z.s <- cut(dat$z,c(-Inf,100,150,Inf),include.lowest=TRUE)
> levels(z.s) <- LETTERS[1:3]
> dat <- cbind(dat,z.s)
> dat
x y z z.s
1 January 0.63212456 120 B
2 February 0.19865357 201 C
3 March 0.31978766 150 B
4 April 0.88575752 96 A
5 May 0.01307491 115 B
0933教えてください2-2
2008/08/17(日) 10:37:05data=(X,Y,Z)の中でZについてある範囲でいくつかに分類したかった
ので質問させていただきました。
これまではsubset()を何度も繰り返していました。
cbind()はとても便利そうですね。助かりました。
0934教えてください2-3
2008/08/17(日) 16:39:23皆様にもう一つ質問させてください。
次のようなデータがあります。
X Y Z
20 10 120
30 56 201
5 40 150
12 25 96
19 27 115
2 30 165
10 23 85
X,Yの散布図を描きたいのですが、条件としてZ<100のときは赤丸(凡例)、100<=Z<150のとき青丸、
Z>=150のとき緑丸とするにはどのようにしますか?
どうぞよろしくお願いいたします。
0935132人目の素数さん
2008/08/18(月) 03:54:23もはやあなたを相手しているのは私だけのような気がするが、
> dat <- data.frame(x=c(20,30,5,12,19,2,10),y=c(10,56,40,25,27,30,23),z=c(120,201,150,96,115,165,85))
> cols <- c("red","blue","green")
> z <- cut(dat$z,c(-Inf,100,150,Inf),include.lowest=TRUE)
> plot(dat$x,dat$y,col=cols[z],pch=19)
legendは自分で考えてみなさい
0936132人目の素数さん
2008/08/18(月) 18:52:15> 123.05 - 123.02
[1] 0.03
> (123.05 - 123.02) == 0.03
[1] FALSE
で、FALSEが返ってくるのは、なぜ?
色々本を見たんだけど、どこにも理由が出ていないし・・・
俺のOSX版だけかな。
0937132人目の素数さん
2008/08/18(月) 20:42:56> 123.05-123.02
[1] 0.03
> sprintf("%.15e", 123.05-123.02)
[1] "3.000000000000114e-02"
>
どうしてもそこで TRUE が欲しい場合には、
> (1.0 - 123.02/123.05) - 0.03/123.05 < 1.0e-15
などとする。
0938132人目の素数さん
2008/08/18(月) 20:48:46>abs(1.0 - 123.02/123.05 - 0.03/123.05)< 1.0e-15
0939132人目の素数さん
2008/08/18(月) 20:53:12いいところに気がついたね。数値計算の世界にようこそ。
> (123 - 122) == 1
[1] TRUE
> (123 - 122.5) == 0.5
[1] TRUE
> (123 - 122.75) == 0.25
[1] TRUE
> (123.05 - 123.02) == 0.03
[1] FALSE
> (123.06 - 123.02) == 0.04
[1] FALSE
整数は正確に保持され、小数部分を持つ数も,小数部が2進数で表されるもの(0.5, 0.25, 0.125 など
などや,それらの和で表現されるもの)は,正確に保持される。一方、それ以外の数は,"近似値"が保
持され、上記ような結果になる。Execelの計算がいい加減なのは上記問題を無視しているから。Rユー
ザは、きちんと考慮してプログラムを作るべき
0940132人目の素数さん
2008/08/19(火) 04:14:30>>938
>>939
ご親切なご指導ありがとう後います。
何となく浮動小数点関連ではないかなと考えていたのですが
思ってたより、誤差が入ってしまうので正確に計算するのは難しそうですね。
とりあえず、最大小数点二位までのデータなので
全てのデータを百倍して、整数域で扱うことにしました。
ありがとうございました。
0941132人目の素数さん
2008/08/26(火) 22:44:00データフレームでV2は世帯番号、V3は個人番号だとして
$ V2 : int 1 1 1 1 1 1 1 1 3 14 ...
$ V3 : int 1 1 2 2 3 3 4 5 1 1 ...
unique()で重複する要素をのぞいて以下のように各個人の合計を数えたいのですが
1-1,1-2,1-3,1-4,1-5,3-1,14-1,....
どのようにuniqueを使えばよいでしょうか?
また他にやり方があれば教えていただけないでしょうか。。
0942132人目の素数さん
2008/08/27(水) 00:45:41その答えと同じにするなら
VV<-paste(V2,"-",V3)
unique(VV)
とするとよいが。
0943132人目の素数さん
2008/08/27(水) 11:53:312.7.2だな。
0944943
2008/08/27(水) 11:54:430945132人目の素数さん
2008/08/30(土) 03:07:30パッケージってどこかにないでしょうか。
パッケージ名等ご存じの方がいましたら教えてください。
0946132人目の素数さん
2008/09/06(土) 19:08:24------------------------------------
Anova Table (Type II tests)
Response: y
Sum Sq Df F value Pr(>F)
x 91.779 1 88.525 8.19e-05 ***
Residuals 6.221 6
------------------------------------
のようなものをクリップボード経由で
EXCELに貼り付けて表形式にする方法があれば教えてください。m(_ _)m
("Sum Sq","Df","6.221"等をここのセルに整列する方法)
0947132人目の素数さん
2008/09/06(土) 20:21:43write.csv()
0948132人目の素数さん
2008/09/06(土) 22:05:38忙しいなか、初心者の質問にお答え頂きありがとうございます。
------------------------------------
> write.csv(Anova(RegModel.1))
"","Sum Sq","Df","F value","Pr(>F)"
"x",91.7794117647059,1,88.5248226950355,8.1900177580363e-05
"Residuals",6.22058823529412,6,NA,NA
------------------------------------
見事にカンマ区切りになり、感動しているのですが、ここから
どうやってクリップボード経由でEXCELに持ち込んだら良いのでしょうか。
ファイルに一旦書き込まないと無理でしょうか。
書き込むのであれば、画面出力を.txtにしてテキストファイルウィザード
から読んだ方が忠実に再現されるように思います。生意気言ってすみません。
0949132人目の素数さん
2008/09/07(日) 15:48:27------------------------------------
Anova Table (Type II tests)
Response: y
Sum Sq Df F value Pr(>F)
x 91.779 1 88.525 8.19e-05 ***
Residuals 6.221 6
------------------------------------
に対して
------------------------------------
<TABLE>
<TR><TD>Anova</TD><TD>Table</TD><TD>(Type</TD><TD>II</TD><TD>tests)</TD></TR>
<TR><TD>Response:</TD><TD>y</TD></TR>
<TR><TD>Sum</TD><TD>Sq</TD><TD>Df</TD><TD>F</TD><TD>value</TD><TD>Pr(>F)</TD></TR>
<TR><TD>x</TD><TD>91.779</TD><TD>1</TD><TD>88.525</TD><TD>8.19e-05</TD><TD>***</TD></TR>
<TR><TD>Residuals</TD><TD>6.221</TD><TD>6</TD></TR>
</TABLE>
------------------------------------
のように文頭に<TABLE>、文末</TABLE>を付加、行頭に<TR><TD>、行末に</TD></TR>を付加
連続するスペース" "を</TD><TD>に置換すればSum Sqの行がずれますが
EXCEL表として貼り付くと考えました。素人考えですが・・・。
そんな関数ない、もしくは簡単には作れないですかね。
0950132人目の素数さん
2008/09/07(日) 16:44:43EXCELに貼り付けてから「[区切り位置] コマンドを使用してデータを区切る方法」
ttp://support.microsoft.com/kb/214261/ja
板汚し礼しました。(しかもスレチ?)
>>947様
有用な情報、ありがとうございました。逝ってきます。
0951132人目の素数さん
2008/09/14(日) 22:37:50新版マダー?
0952132人目の素数さん
2008/09/14(日) 22:48:07発行元の九天社が倒産したからね。
ここを見ればほとんど補えるよ↓
http://cse.naro.affrc.go.jp/takezawa/r-tips/r.html
0953132人目の素数さん
2008/09/14(日) 23:16:040954132人目の素数さん
2008/09/20(土) 22:10:260955132人目の素数さん
2008/09/20(土) 22:15:52最初は誰もが初心者
0956954
2008/09/20(土) 22:21:03単位を取るとなるとそれなりの知識がないと厳しいのではないかと思い・・・
回帰分析などといったことをやるそうです
0957132人目の素数さん
2008/09/26(金) 23:45:100958132人目の素数さん
2008/09/28(日) 14:36:32傍から見てるとすごい心証わるいんだが。
0959132人目の素数さん
2008/09/28(日) 15:05:04アレは改めないとダメだね
0960132人目の素数さん
2008/09/28(日) 20:09:120961132人目の素数さん
2008/10/05(日) 14:44:50Rによるやさしい統計学って本がお勧め
統計学初心者でもR初心者でも取っ付きやすいと思う
0962132人目の素数さん
2008/10/06(月) 22:51:110963132人目の素数さん
2008/10/07(火) 02:11:24シェルでいう
i=1
filename="${i}.png"
の${}です・
0964914
2008/10/08(水) 18:38:15>filename="${i}.png"
んで、イイんじゃね
> for( i in 1:5 ){
+ filename <- sprintf("%d.png", i)
+ cat(filename, "\n")
+ }
1.png
2.png
3.png
4.png
5.png
0965914
2008/10/08(水) 19:22:55(1) ○
第6章 2つの平均値を比較する
第7章 分散分析
複数の標本、対応のあるなし、3つ以上の平均値の比較
などが、連続的に扱われていて、非常にわかりやすい。
(2) ◎
第18章 人口データの発生
第19章 検定の多重性と第1種の誤りの確率
第20章 検定力分析によるサンプルサイズの決定
この説明の順番は、すばらしい。
(3) ×
第4章 母集団と標本
第5章 統計的仮説検定( の最初の数ページ )
序文(vi)の「対象となる読者」が、この部分を理解できるとは思えない。
初心者に、確率変数、確率分布の説明が不十分。
0966132人目の素数さん
2008/10/08(水) 19:57:143.45%という文字列を0.0345という数字に変換する方法を教えてください。
不可能なのでしょうか?
0967914
2008/10/08(水) 21:15:02>3.45%という文字列を0.0345という数字に変換する方法を教えてください。
こんな感じかな
> s="3.45%"
> n=as.double(substr(s, 1, nchar(s)-1))/100.0
> n
[1] 0.0345
0968132人目の素数さん
2008/10/08(水) 22:56:01ありがとうございました。
0969132人目の素数さん
2008/10/08(水) 23:12:02おそらく、データを取り込むときに
xx.x% 書式を小数データに自動変換する
機能があるんじゃないだろうか。
どこのソフトにもあると思うので、Rにもあるのではないかな
だれか知らない?(R知らないもので)。
0970132人目の素数さん
2008/10/09(木) 04:02:25ありがとうございます。
0971914コテ最後
2008/10/09(木) 18:57:44>Σ(-ロ-)スマートにはいかないみたいですね。
以下は、最近話題ノ全国テスト、都道府県別の「数学A」の正答率(中学生)
第2カラムが、該当箇所(3.45%) ね。
D:\Somewhere>type in.txt
都道府県,正答率
北海道,68.6%
青森県,73.9%
岩手県,68.6%
(1) オレならば、awk でやっちまう。 under Cygwin, Linux
gawk -F, 'NR>1{ sub(/%/,"",$2); $2=$2/100.0; } { print $0; }' in.txt > in2.txt
(2) R でやるならば、あらかじめエディタで % だけを削除しておく。
その後、R の transform で、1/100 する。
> tmp1 <- read.csv("in2.txt")
> tmp2 <- transform(tmp1, 正答率2=as.numeric(正答率)/100)
> df <- tmp2[,c(1,3)]
> df
都道府県 正答率2
1 北海道 0.686
2 青森県 0.739
3 岩手県 0.686
0972132人目の素数さん
2008/10/09(木) 22:18:56ふ〜結構面倒
0973132人目の素数さん
2008/10/09(木) 22:29:490974132人目の素数さん
2008/10/09(木) 23:12:30> rmpercent("3.45%")
[1] 0.0345
> tmp1 <- read.csv("in.txt")
> tmp1
都道府県 正答率
1 北海道 68.6%
2 青森県 73.9%
3 岩手県 68.6%
> tmp1[,2] <- rmpercent(tmp1[,2])
> tmp1
都道府県 正答率
1 北海道 0.686
2 青森県 0.739
3 岩手県 0.686
0975132人目の素数さん
2008/10/09(木) 23:39:40最初からこういうの用意されていないんだろうか?ありそうな気もするが
> rmpercent <- function(x){x<-as.character(x);as.numeric(substr(x,1,nchar(x)-1))/100}
%なら100で割ること決まって居るし、この行はなくても良いくらいだよね。
利用言語というよりアルゴリズム作り用なんだろうな、でも余分が多い。
でも、そうだから仕方ないんだけど
回答頂いた方への不満ではありませんので。もうしわけありませんでした。
ありがとうございます。
0976132人目の素数さん
2008/10/10(金) 01:02:16東大出版会の統計学入門を種本にした授業で単位を取った。
なぜか統計学入門は楽しく読めて、独学して一応
わかった「つもりになった」が、就職後、統計学と疎遠になったら
ほとんど全部忘れてしまった。
で、このたび仕事で必要になったんだが、予算上SASやSPSSには手が出せず、
Rの存在を知って早速インストールし、
関係サイトをあちこち見て回って勉強し直しているのだが、
もしかして、1991年刊の統計学入門で取り上げられている手法は、
WindowsXPがサクサク動くパソコンでRが使える時代には
もう古くさいものが少なからず含まれているのではないか?
0977132人目の素数さん
2008/10/10(金) 07:19:07手で電卓たたいて計算する必要はないんじゃないか?という意味なら
その通りだが、それは1991年でも同じ。教科書は学習用。
統計学を学習するということにおいて統計学入門はまだいい本だと思うよ。
0978974
2008/10/11(土) 08:44:56自分にとって使いやすい統計ソフトであるかどうかという以前に、オープンソースとは何かという視点を
持った方がよいと思うぞ。必要性を感じた人が必要な機能を付加する(付加できる)ということは、逆に
言えば、あなたが欲しい機能が実装されていないのは、誰も必要と考えていないから。あなたが必要なら
あなたがrmpercent()のように追加すればよい。
私自身は%を少数に変換する必要性を感じたことがない。表計算ソフトで%表示されいても実態は小数デー
タだし、CSV経由で読み込んだらnumericになっている。
0979132人目の素数さん
2008/10/11(土) 13:40:19>私自身は%を少数に変換する必要性を感じたことがない。表計算ソフトで%表示されいても実態は小数デー
>タだし、CSV経由で読み込んだらnumericになっている。
質問は、一般的に統計ソフトなどはそういう機能を持ち合わせているので
Rにそういう機能はないの?という質問でしょう。
0980132人目の素数さん
2008/10/11(土) 19:29:58Rをメインで使っている人はデータ加工をどのようにしているの?
0981132人目の素数さん
2008/10/11(土) 20:04:23それはRにデータを読み込んでからのデータ加工場面と、
外部ファイルにあるデータをRに読み込むための場面に分けて
考えた方がいいと思う。
同様に、テキストデータと数値データについても、同じように
場面を分けないと、データ加工についての議論はすれ違いになる
のではないかと思う。
0982132人目の素数さん
2008/10/11(土) 21:08:05あとさ、やっぱり結果の信頼性に欠けるのかなぁ・・・
R歴そんなに長くないのですが、例えばdecomposeの乗法モデル。
Helpでは、Y[t] = T[t] * S[t] + e[t] になってるのに、
実装上は、Y[t] = T[t] * S[t] * e[t] ですよ・・・
無い物は自分で造る、間違っているものは自分で直せの精神ですか?
う〜ん・・・
0983132人目の素数さん
2008/10/11(土) 21:44:550984132人目の素数さん
2008/10/12(日) 20:34:250985132人目の素数さん
2008/10/12(日) 21:44:550986132人目の素数さん
2008/10/12(日) 22:03:36背景にあるSとMatlabの関係で
統計解析主体ならR、シミュレーション系が主であればoctave。
但し、実業界で考えるなら、Matlabは製造系で仕事がらみでの利用は結構
多いが、Sはあまり多くなく(ただし、企業内の研究など個々人の利用はある)
求人は多くない(Rとoctaveに限定すれば、企業内でのoctave利用はほとんど
ない)。
参考に。
>>982
取り込んでからの(数値データの)処理は強いが、前処理として
外部ファイルのあつかいは非常に弱い。その辺のニーズ異なると思われる。
0987132人目の素数さん
2008/10/13(月) 20:13:42これはなんですか?
> local({pkg <- select.list(sort(.packages(all.available = TRUE)))
+ if(nchar(pkg)) library(pkg, character.only=TRUE)})
要求されたパッケージ tcltk をロード中です
Tcl/Tkインターフェースのロード Error : Tcl/Tk support files were not installed
Error : .onLoad は 'tcltk' のための 'loadNamespace' で失敗しました
エラー: パッケージ 'tcltk' をロードできませんでした
>
0988132人目の素数さん
2008/10/13(月) 21:37:07tcltkがインストールされていない、またはパスが通っていないように見えるけど。
0989132人目の素数さん
2008/10/13(月) 21:44:550990976
2008/10/13(月) 23:55:27そうか。ありがとう。
自分にとって「真に新しい」概念は、学生時代に比べて
徐々に頭に入りにくくなってきているから、どんな分野であっても
なじみの教科書が使えるというのは助かる。
今回は、自然科学の統計学まで手をのばすつもり。
実務データが手元にあると、学生時代とは
統計学の理解の深さが違うと実感しているよ。
0991132人目の素数さん
2008/10/14(火) 00:07:320992132人目の素数さん
2008/10/14(火) 21:44:550993132人目の素数さん
2008/10/14(火) 22:58:28トンクス。やっぱり機械学習で統計がらみの作業が多いから
Rかのう・・・octave覚えるとMATLABに強くなれそうだから迷ってた。
0994132人目の素数さん
2008/10/14(火) 23:41:23狭義での機械学習だと、メモリー消費や実行モジュール形態から
どちらも向いているとは言えない。実務で使うレベルが一部可能
と考えた方が良いです。
ただし、広義でとらえて統計手法を含むことを考え、それを
中心に考えればRの方が、事例が豊富にあると思いますよ。
0995132人目の素数さん
2008/10/15(水) 00:58:08C++で書いてるんですがそれの実験のデータなどを調べたりグラフ書くときに
どっちにしようかなーと思ってたんです(院進学予定の学部生です)。
Rスレで聞いたし親切な回答いただけたしRで行くことにします。
ありがとうございますた。
0996132人目の素数さん
2008/10/15(水) 01:02:36外部ソフトとのインタフェイスの良さも考えておいた
ほうが良いと思いますよ。Octaveは分からないんですが
Matlabは組み込みが行いやすいので、ちょっと気になりました。
悩んじゃいますね。
0997132人目の素数さん
2008/10/15(水) 20:28:060998132人目の素数さん
2008/10/15(水) 21:44:560999132人目の素数さん
2008/10/15(水) 21:45:551000132人目の素数さん
2008/10/15(水) 21:46:5810011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。