= 統計解析フリーソフト R 【第2章】 =

このエントリーをはてなブックマークに追加
1132人目の素数さん
R は統計計算とグラフィックスのためのフリーソフト(GNU-style copyleft)
です.簡単なデータ解析から非常に高度・専門的な統計解析まで,さま
ざまな解析が出来る優れたソフトです.またRはSやSplusに操作環境な
どが良く似ており, Sで動作するものはRでもほとんど(90%以上)変更な
しに動作します.
2132人目の素数さん:2006/07/09(日) 21:50:31
★RプロジェクトのHP

「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
3132人目の素数さん: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
4KingOfUniverse ◆667lnVUqRY :2006/07/09(日) 21:52:07
人の能力を読む脳を悪用する奴を潰せ。
5132人目の素数さん:2006/07/09(日) 21:52:34
「R - 統計解析とグラフィックスの環境」
http://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
6132人目の素数さん:2006/07/09(日) 22:56:40
参考サイトに追加。

「JIN'S PAGE」
http://www1.doshisha.ac.jp/~mjin/R/

7KingOfUniverse ◆667la1PjK2 :2006/07/09(日) 23:54:22
talk:>>4 人の脳を読む能力を悪用する奴を潰せ。

人の脳を読む能力を悪用する奴を潰せ。
8132人目の素数さん:2006/07/10(月) 22:43:18
>>7
リスパダールという薬を服むと、脳を読まれなくなるよ。
9KingOfUniverse ◆667la1PjK2 :2006/07/11(火) 14:16:29
talk:>>8 ?
10132人目の素数さん:2006/07/16(日) 23:36:45
age.
11132人目の素数さん:2006/07/22(土) 21:34:53
関数を定義する際に、値を返すのにreturnを使いますか?
個人的には使うのが礼儀だと思うのですが・・・・
12132人目の素数さん:2006/07/23(日) 00:37:42
>>11
条件分岐のときは使うけど、最後の行で返すときは使わない方です。
return文使わないようにするとオブジェクト指向してる気分になれるので。

それに、
f <- function(x) x^2
みたいに一行で定義が済むときはわざわざ書きたくないですよね。
Rの言語仕様はかなりルーズだけど、そこが好きです。
13132人目の素数さん:2006/07/23(日) 10:42:01
>return文使わないようにするとオブジェクト指向してる気分になれるので。

??そうですか?
14132人目の素数さん:2006/07/24(月) 22:24:41
age
15132人目の素数さん:2006/07/28(金) 18:03:38
790
16132人目の素数さん:2006/07/30(日) 11:30:25
age
17132人目の素数さん:2006/08/03(木) 23:57:09
EXCELデータをRに読み込むときってどうしてます?
私はRODBC使ってますが.
18132人目の素数さん:2006/08/04(金) 02:34:36
>>17
1.
範囲選択
2.
read.delim("clipboard")
19132人目の素数さん:2006/08/06(日) 12:36:44
>>18

データが大きいと・・・.
20132人目の素数さん:2006/08/11(金) 02:19:37
age
21132人目の素数さん:2006/08/12(土) 13:49:20
>>19
csvで保存、もあしくは、メモリ増設

正直なところ、excelからRにデータを移すっていう機会がどういうときにあるのかが理解できない。
22132人目の素数さん:2006/08/12(土) 15:59:39
>>21
Excel で保存したデータを解析するよう依頼され、何かの事情で断れないとき。
常々、理解力不足を自覚していませんか?
23132人目の素数さん:2006/08/13(日) 00:01:44
>>22
自覚してる。
24KingOfUniverse ◆667la1PjK2 :2006/08/20(日) 19:02:30
25132人目の素数さん:2006/08/30(水) 01:44:36
age
26132人目の素数さん:2006/09/01(金) 19:39:01
Firefox用のR-site search extensionが出来てます
27132人目の素数さん:2006/09/01(金) 19:59:15
>>11の文章って論語にありそうだよね
関数定義少なし仁、みたいな
28132人目の素数さん:2006/09/01(金) 23:12:07
>>26
kwsk!
29132人目の素数さん:2006/09/02(土) 14:55:32
http://addictedtor.free.fr/rsitesearch/
サイドバーで検索できるのかな?
30132人目の素数さん:2006/09/03(日) 18:38:19
gfth
31132人目の素数さん:2006/09/13(水) 11:51:59
age
32132人目の素数さん:2006/09/15(金) 21:48:19
実験計画も対応しているの?応答曲面解析などはできるのでしょうか
33132人目の素数さん:2006/09/18(月) 01:16:29
できますが何か?
34132人目の素数さん:2006/09/18(月) 19:50:35
SPSSに比べて、このソフトはどーなんよ?
35132人目の素数さん:2006/09/18(月) 20:56:06
同じだろ
36132人目の素数さん:2006/09/18(月) 21:33:44
同じではない。タダだw
3734:2006/09/18(月) 23:08:29
タダという響きが怪しい。
マニアックな操作感覚とか?
38132人目の素数さん:2006/09/19(火) 01:47:13
>>37
GUIとCUI
3935:2006/09/19(火) 07:55:47
フリーだから信用できるのかという話は既出。それを疑う人には勧めない。
38の言うとおり操作性が違うのでコマンド入力を嫌う人にも勧めない。
40132人目の素数さん:2006/09/20(水) 01:56:31
Cambridgeの"Data Analysis and Graphics Using R"買ってもーた。
ちまちま読みつつExercisesを解いていってみよう。
41132人目の素数さん:2006/09/23(土) 17:20:19
>>33
どのパッケージをインストールすればよいのでしょうか。
RSMらしき名前のが、見つからないのですが。
42132人目の素数さん:2006/10/01(日) 01:30:29
>>17
Rで、Excelのようなスプレッドシートを画面に表示するには、
何と入力すればよいのですか?
43132人目の素数さん:2006/10/01(日) 05:27:00
>>42
edit()
44132人目の素数さん:2006/10/01(日) 19:50:00
>>43
すでに存在するデータを操作するならfix()の方がいい。
でもこれらはデータの修正のみで表計算ソフトのように
式を入力したりできるわけではない。
45132人目の素数さん:2006/10/03(火) 06:17:39
305
46132人目の素数さん:2006/10/04(水) 09:02:58
Amazon で入門書をあさってたら、ヨサゲなのを3っつほど見つけたんですけど、
どんなモンなんでしょ?読まれた方いらっしゃいます?

『データ解析環境「R」―定番フリーソフトの基本操作からグラフィックス、統計解析まで』
『フレッシュマンから大学院生までのデータ解析・R言語』
『はじめてのS‐PLUS/R言語プログラミング―例題で学ぶS‐PLUS/R言語の基本』
47132人目の素数さん:2006/10/04(水) 09:19:56
>>46
「The R Book」 と 「The R Tips」 でよかろう。高いが払う価値はある。

「工学のためのデータサイエンス入門―フリーな統計環境Rを用いたデータ解析」もオススメ

『データ解析環境「R」―定番フリーソフトの基本操作からグラフィックス、統計解析まで』
ほんのさわり。プログラム脳があるなら応用可。

『フレッシュマンから大学院生までのデータ解析・R言語』
確か読み難くて立ち読みでパスした

『はじめてのS‐PLUS/R言語プログラミング―例題で学ぶS‐PLUS/R言語の基本』
わかり易そうな例題がゴロゴロあるが、応用が効かない話が多い。

48132人目の素数さん:2006/10/04(水) 09:57:53
>>47
うは。こんなに早くレスポンスいだたけるとは思ってなかったス。サンクス。
やっぱり「The R Book」 、 「The R Tips」が一番なのか…
どちらも『入門部』と『応用部』と言う感じの構成になってるみたいですが、
どちらがより初心者向け、つまり教科書的ですかね?
49132人目の素数さん:2006/10/04(水) 10:23:20
なんとなく始めてみたけど、難しいソフトですね。本当にGNUのプロジェクトなんですか?
かなり、初心者に対して敷居が高いように思われます。EMACSのLIPS位キツいかも。
ざっといじっただけなので、これから慣れるかもしれませんが、とっつきにくいです。
わざわざ、こんなソフト使うよりEXCELを使う方が遥かに生産的ですね。
本当はこのGNU Rプロジェクトって何がしたいのでしょうかね?
50132人目の素数さん:2006/10/04(水) 10:28:47
>>49
GNU系のプロジェクトと言うことと、ソフト操作の難易度には何の相関性も無いと思われるが…
51132人目の素数さん:2006/10/04(水) 11:05:41
>>48
入門だけならThe R BookだがTipsの方が研究なり仕事なりに応用が効く話が多い。

>>49
どうせ釣りだろうがsum()しか使わないならExcelにしとけ
52132人目の素数さん:2006/10/04(水) 12:11:34
>>51
どもです。
なるほど、即戦力として利用したいときにはTipsの方で、
じっくり基礎からと言う時にはBookの方という感じですか。
有り難うございます。
53132人目の素数さん:2006/10/04(水) 12:51:39
>>49
俺も取っ掛かりはpdfをダウンロードした。
偏っていない良い文献だと思う。
54132人目の素数さん:2006/10/05(木) 01:30:03
>>49
『データ解析環境「R」』を読んでもダメ?
これ読みながらざっといじっただけでも使えるようになると思いますが。
55132人目の素数さん:2006/10/06(金) 07:34:56
>>54
一番最初はそれでよいと思う。R Tipsはわかりにくいと批判があったので
『データ解析環境「R」』を書いたと筆者が行っている
56132人目の素数さん:2006/10/06(金) 07:56:22
教科書・参考書としてのベストセレクションは
『データ解析環境「R」』+R Tipsのセットってことでおk?
57132人目の素数さん:2006/10/06(金) 07:58:22
『データ解析環境「R」』はプログラミング経験がある人には立ち読みレベル。
58132人目の素数さん: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")などと読ませて
行列として扱うにはどうすればよいでしょうか
59132人目の素数さん:2006/10/06(金) 16:41:36
自己解決しました。すみません
d <- read.table("hoge.dat")
as.matrix(d)
で出来ました。

最初に試して出来なかったように思い込んでいたのですが、
そのときは手順を間違えていたようです。
60132人目の素数さん:2006/10/14(土) 22:05:23
age
61マカオ:2006/10/16(月) 17:58:45
Two-factor repeated measures ANOVAをRを使って実行したいのですが、どのような式を入力したら良いか教えていただけませんか。
ネットで探し回ったのですが、これといって有力な情報にたどり着くことが出来ませんでした。

よろしくお願いします。
62132人目の素数さん:2006/10/17(火) 21:54:16
ここ
http://mat.isc.chubu.ac.jp/R/tech.html
なんかどう?
63132人目の素数さん:2006/10/18(水) 14:13:43
クラスター解析のフリーソフトを無料でできる場所はどこが一番いいですか?
64132人目の素数さん:2006/10/19(木) 22:09:19
65132人目の素数さん:2006/10/21(土) 07:50:56
質問です。
目的変数が、0〜1の連続変数で、
説明変数が、連続変数やカテゴリ変数のモデルをつくりたいと思っています。

目的変数が0と1のカテゴリ変数の場合は、glm(ロジスティック回帰)でモデル化が出来ると思うのですが、
0.2や0.8等も含む連続変数の場合は、どの関数を使えばいいのでしょうか?
66132人目の素数さん:2006/10/22(日) 17:37:47
>>65
その0〜1という変数が比率であるなら
逆正弦変換(角変換)して普通に回帰すればいいのでは?
角変換は
http://aoki2.si.gunma-u.ac.jp/Yogoshu/33.html
を参照。
67132人目の素数さん:2006/10/22(日) 18:56:34
>>66
レスありがとうございます。
目的変数は、0〜1の確率を表す連続変数です。
比率と言えば比率なのですが、少し違う気もしています。

0〜0.5は0、0.5〜1は1としてロジスティック回帰をする方法も思いついたのですが、
これでは情報を捨ててしまっている気がして、もう少し上手い手法があるのではと思い質問させて頂きました。

角変換というのも始めて知りました。勉強させていただきます。
68132人目の素数さん:2006/10/23(月) 00:12:50
>>67
0と1が出てこないならばロジット変換かプロビット変換をして
回帰という方法もあります。

プロビット変換は同じく青木先生のページに説明がありますね。
http://aoki2.si.gunma-u.ac.jp/Yogoshu/130.html
ロジット変換はここを見つけました。他にもあるでしょう。
http://datamining.jp/vocabular/yougo.htm#66

どちらも0や1が出てくるならなんらかの補正が必要です。
69132人目の素数さん:2006/10/23(月) 00:15:18
↑補足。
ロジット変換はロジスティック回帰のリンク関数と同じですから
同じようにしたいというのならこちらが親和性が高いです。
70132人目の素数さん:2006/10/23(月) 21:09:04
普通にロジスティック回帰をしたらいけないんですか?
ロジスティック回帰の目的変数は確率あるいは比率ではないんでしょうか?
確率が0.5を超えれば「あり」、超えなければ「なし」等と判断することによって
目的変数が2値変数の場合に「使える」のではないのでしょうか。
71132人目の素数さん:2006/10/24(火) 19:26:17
Rを使って,ウェーブレット解析をしようと試みています.
Rwaveとwaveletsというライブラリがあることまでは分かりましたが,みたい現象をどうやって解析すればいいのか分かりません……
Rは,統計ソフトだけど,ウェーブレットを使用してよいのでしょうか??
他によいソフトがありますか??
72132人目の素数さん:2006/10/24(火) 22:56:45
RGuiのConsole窓に拡張子rのスクリプトアイコンをドラッグすると途中経過の表示がないのでめっちゃ速いです。手間とお金をかけずにこの速さを超えたい。
73132人目の素数さん:2006/10/25(水) 23:39:12
>>70
Rで小数のデータにロジスティック回帰をかけると警告が出ますね。
元々二項分布を前提にしているわけですから小数のデータは
おかしいわけですが、一応出る出力は何をしているのか分かりません。
74age:2006/11/03(金) 01:13:14
age
75132人目の素数さん:2006/11/04(土) 02:51:57
やっぱRじゃないとねぇ・・・とか、Rサイコーとか
言ってる椰子らに限って仕事できねぇんだよな、まったく。

って、言っている漏れも窓際だがorz

無難にSPSSとか使っているやつがスターだったりするからな。
うらやまP!
76132人目の素数さん:2006/11/04(土) 09:17:51
苦肉の策でRというのがいいみたいだな
77132人目の素数さん:2006/11/04(土) 10:01:49
統計ヲタ
仕事できない
ビンボー

・・・そんなあなたにお勧めします。最高のRを!!(;。;)
78132人目の素数さん:2006/11/04(土) 10:15:57
そこにRマンセーが加わるだけだろ
79132人目の素数さん:2006/11/04(土) 10:18:41
うちの分野だと1Clientでも5000万超えるんだよな。
だからSPSSには手が出ない。
80132人目の素数さん:2006/11/04(土) 11:48:13
ま、てをださんほうが無難だな。SPSSは子供のおもちゃ。
81132人目の素数さん:2006/11/04(土) 18:00:07
SPSSは玩具だね。
でも、えせ分析屋が大量発生させることに功をなした。
82132人目の素数さん:2006/11/04(土) 21:23:15
複雑な統計処理をしないといけなくなりそうなので
MATLABからRに乗り換えようか検討しています

google code

Wilcoxon Matched-Pair Signed-Rank Test
と検索すると
cとoctaveのコードしかひっかかりません

google codeはRを無視してるのでしょうか?

83132人目の素数さん:2006/11/04(土) 22:15:20
Testの「t」が大文字だから?

「R Wilcoxon Signed-Rank Test」

と「R」を追記するだけでも結果が随分かわりますね.
84132人目の素数さん:2006/11/04(土) 23:13:47
85132人目の素数さん:2006/11/05(日) 00:02:13
ほとんどの分野では似非分析屋と言われようと、収益が上がればいいだけだからね。
大学でSPSSをやろうと言うのなら確かに似非になるが。
86132人目の素数さん:2006/11/05(日) 08:49:21
似非分析屋のモデル・分析が収益に大打撃を与えることがある。
見ていて笑えるぜ!
87132人目の素数さん:2006/11/05(日) 21:12:39
重回帰分析で、説明変数をそのまま投入する場合と、
基準化してから投入する場合ではモデルの精度に違いが出ますか?
88132人目の素数さん:2006/11/07(火) 00:53:35
>>79
うちの分野だと1顧客で1億近いけどSPSSで十分やってます。
必要に応じてJMPとRも使いつつ。

>>80-81
SPSSのどこらへんが玩具なのかな。
不満はあるけど、玩具とまでは思ってなかったので。

>>85
2行目で何を言いたいのかよく分からん。
噛み砕いて教えてくれるとうれしい。

>>86
それは面白そうだね。
どこで見られるのか教えてくない?

>>87
それはやってみれば分かるでしょ。
89132人目の素数さん:2006/11/07(火) 11:52:06
>>88
> それはやってみれば分かるでしょ。
やってみても、違いが出ることが分かるだけで、精度が違うかどうかの返答になっていない。
90132人目の素数さん:2006/11/07(火) 19:23:24
微妙にRじゃなくSの質問なのですが・・・

finmetricsを読み込んででDowJones30の分析をしているんだけど、いくつかの銘柄で
Daily Closing Pricesが実際の(YahooのUS financeで確認)と合わないんだけど
多分 stock splitの関係のような気はしてるんだけど
誰か教えて下さい・・・
91132人目の素数さん:2006/11/08(水) 00:39:27
>>89
それじゃあまず、>>89の言うところの「精度」の意味を明確にしてくれ。
たとえばそれがR^2のことならば、やっぱりやってみればわかること。
汎化性のことを言っているのならCross-Validationでもしてみればいい。

R^2もCross-Validationもわからんようならこの本を一読することをお勧めします。
http://www.amazon.co.jp/gp/product/4274066142/
意外といい本よ、これ。
92132人目の素数さん:2006/11/08(水) 12:22:53
>>91
きもちわるい
9389:2006/11/08(水) 12:27:48
数値計算論的な精度。計算機で実際に計算した結果と算数的に計算した数値とのギャップ。
R^2やCross-Validationっていってみたかっただけとちゃうんかいと小一時間。。。
94132人目の素数さん:2006/11/13(月) 06:32:36
227
95132人目の素数さん:2006/11/16(木) 14:50:17

-0.889 を計算するのってそんなに大変なんだろうか... > 某Wiki

96132人目の素数さん:2006/11/16(木) 20:09:00
age
97132人目の素数さん:2006/11/21(火) 00:45:27
Meadow+ESSな方いらっしゃいますか?日本語変数名が使えません.

データファイルとして

身長体重性別
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です.たすけて〜
9897:2006/11/21(火) 00:47:09
data.datの内容はタブ区切りになっています.投稿するとタブ消えるんですね気をつけます.
99132人目の素数さん:2006/11/21(火) 16:42:08
>>97
お気の毒だけど、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は関数の名前とかぶるので変数名にしない方がいいよ。
100132人目の素数さん:2006/11/23(木) 01:27:02
私もずいぶんやりました。。。

Rtermですでに文字化けしてませんか。よく紹介されている「setq ess-pre-run-hook...」をやめて、以下に書き換えで如何。

(add-hook 'ess-post-run-hook (function (lambda ()
(set-buffer-process-coding-system 'shift_jis 'shift_jis))))
101age:2006/11/26(日) 01:58:20
age
102age:2006/11/30(木) 09:39:31
age
10397:2006/12/01(金) 02:45:49
書き込んだことをすっかり忘れてました.

>dfは関数の名前とかぶるので変数名にしない方がいいよ。

これでした.かぶらない変数名を選んでやったらイケマシタ.ありがとうございます.
104132人目の素数さん:2006/12/02(土) 00:07:09
>>103
どういたしまして。

ところで、Rって多重比較検定が弱い気がしてきた。SPSSにある検定方法ぐらいは
用意しておいてくれよぉ。シェッフェとかライアンとかゲイムスーハウエルとか。
105132人目の素数さん:2006/12/02(土) 01:14:23
>>104
ここに
http://aoki2.si.gunma-u.ac.jp/R/index.html
シェッフェとライアンはあるな。
ゲイムス−ハウエルは流石にないな。
106132人目の素数さん:2006/12/03(日) 19:23:09
てかなかったら自分で組めばいいだろ。
107132人目の素数さん:2006/12/04(月) 14:00:31
フリーソフトに何でもかんでも期待するほうが間違っている。
だいたいSPSSの価格を知っているのか?
それをふまえていればそんな台詞は吐けないと思うが。
むしろタダでここまでの機能を使えることに感謝すべきだろう。
しかもプログラム組めば無限に機能を拡張できるし。
108132人目の素数さん:2006/12/04(月) 20:30:26
>>105-107
コメントありがと。もちろん、自分で関数書いているよ。
青木先生のところはパクッて書き直しているのは内緒だけどね。
# 後ろめたいのでCRANには投稿できないし、公開もできない。
109132人目の素数さん:2006/12/04(月) 23:36:25
>>108
青木先生にお世話になるのは普通ですね。自分で使う分には下敷きにして改良しようが、
無問題でしょう。(先生もそのつもりで公開してくれていると思うし。)

それにしても自分で書いてるんだったら愚痴る必要はなかったと思うね。
ユーザのための発言だとしてもゲイムス−ハウエルほどマイナーな方法まで
上げることはなかったと思う。SPSSにはよく入ってるよな。SASにはないと思うけど。
110132人目の素数さん:2006/12/05(火) 04:10:22
>>109
> 自分で書いてるんだったら愚痴る必要はなかったと思うね。
関数を書くのが目的ではなく、解析するのが目的なので、自分で書いて無駄な時間を
使ったと思っているよ。R以外の統計パッケージを使うつもりはないので、これからも
必要に応じて書くけど、家を建てるために植林から始めているもどかしさがある。
111132人目の素数さん:2006/12/05(火) 04:22:40
木が育ち終えるのを待つのが嫌なら、金払って余所から材木を仕入れればいい。
112132人目の素数さん:2006/12/05(火) 08:57:59
>>110
自分で書くのも勉強のうちだ。そうすれば誤った手法を使うことも少なくなる。
それに全て手作りだった昔と比べたらはるかにましなんだけどね。
(植林どころか家を建てる道具すら作ってたよ。orz)
113132人目の素数さん:2006/12/05(火) 16:40:14
>>110

それでは他の人が無駄な時間を使わずにすむよう、公開してくれると
みんな幸せになれるのでお願いしますです。
パクってるところは、「パクったよ」とちゃんと言っておけば問題ないと
思いますよ(R関係の公開物の多くはそういう系のライセンス or 作者かと)
114age:2006/12/14(木) 01:27:29
統計数理研究所共同研究「Rの整備と利用」研究会
http://jasp.ism.ac.jp/kinou2sg/list.html#R
115132人目の素数さん:2006/12/14(木) 09:39:46
Rの超基礎的な入門マニュアル本かったけど、
基礎がついたら、R-Tipsのサイト見れば十分だね。
116132人目の素数さん:2006/12/15(金) 00:41:48
> Rの超基礎的な入門マニュアル本

って??
117132人目の素数さん:2006/12/15(金) 01:15:30
本屋にならんでるだろ
118132人目の素数さん:2006/12/17(日) 19:51:28
なんてやつ?
文系高卒でも理解できそうですか?
119132人目の素数さん:2006/12/17(日) 20:33:40
お前のレベルなどしらん。
素直にSPSSでも買っとけ。
120132人目の素数さん:2006/12/18(月) 21:45:47
コンパイルでこの2つの警告が消えない…
何を入れたらいいかわかる人よろしくお願いします

configure: WARNING: you cannot build info or html versions of the R manuals
configure: WARNING: I could not determine a browser
121132人目の素数さん:2006/12/18(月) 21:46:25
>>119
役立たず乙
122132人目の素数さん:2006/12/19(火) 07:25:25
このスレ、くだらんレスをするやつが一人いるな
123132人目の素数さん:2006/12/19(火) 10:08:40
>> 120

1行目: makeinfo
2行目: firefox mozilla netscape galeon kfmclient opera gnome-moz-remote open
のどれか。
openはMacOS Xのためだろう。

124132人目の素数さん:2006/12/19(火) 10:17:07
>>118

はじめてのS-PLUS/R言語プログラミング
とか
I/O Booksの データ解析環境「R」
とかだと、さすがに文系だと事前に統計の勉強が必要そうだけど、
理系なら高校程度の知識でもある程度は使えるようになれそうな
気がする。
125115:2006/12/19(火) 10:51:07
私は後者の本を使ってる>>124
126132人目の素数さん:2006/12/19(火) 15:42:55
>>123
tetexとfirefox入れたら全部消えたよ

ありがとう
いい人だな
127132人目の素数さん:2006/12/19(火) 19:57:42
このスレはいい人もいるな
128132人目の素数さん:2006/12/20(水) 00:07:36
このソフトってmathematicaみたいに、ある関数を微分させたり、ある連立方程式を
解かせたりできますか?
129132人目の素数さん:2006/12/20(水) 00:33:45
>>126
tetex→texinfo
130132人目の素数さん:2006/12/20(水) 23:26:42
>>128
できません。
扱える変数はスカラー、ベクトル、行列などで(文字列としてではない)式そのものというのはありません。
131132人目の素数さん:2006/12/20(水) 23:36:26
一応答えを求めるのは可能。
ただ直接求められないだけ。
132132人目の素数さん:2006/12/21(木) 02:10:11
133128:2006/12/21(木) 02:32:14
>>132
ありがとうございます
134132人目の素数さん:2006/12/21(木) 09:01:38
>>132
数値計算じゃなく微分できるんだ。初めて知ったよ。
135132人目の素数さん:2006/12/21(木) 09:42:29
http://aoki2.si.gunma-u.ac.jp/R/Rstat.pdf
見しました。
帰無仮説、対立仮説と言う言葉が出てこなく残念!



うちの大学の先生のコアセッション用の本の書き出しが
『統計学は数学である。』
となっており、困っています。
136132人目の素数さん:2006/12/21(木) 09:54:32
>>135
卒論で忙しいのは分かるが一旦寝ろw
137132人目の素数さん:2006/12/21(木) 10:34:34
なんか壊れる寸前だなw
138132人目の素数さん:2006/12/21(木) 20:20:35
>>135
確かに出てこないな。自明だからじゃないか?
139132人目の素数さん:2006/12/22(金) 08:10:20
iccだとコンパイル通らないな
gccは問題ないのに、あれがないこれがないで進まない
readline入ってるのにないといわれる
140132人目の素数さん:2006/12/22(金) 18:53:29
>>135
有意水準もない。
p値はあるけど…

TeXでやっているから索引があってもいいのに…
141132人目の素数さん:2006/12/22(金) 22:58:52
教科書買えよ。
142132人目の素数さん:2006/12/23(土) 00:01:22
>>140
それってギャグで言ってるのか?
そうでなきゃ>>141に禿同
143132人目の素数さん:2006/12/23(土) 00:09:31
お前らCore2Duoでコンパイルする時のオプションどうしてる?
144132人目の素数さん:2006/12/23(土) 13:38:45
このスレにはそんなスキルのあるやつはいないよ
145132人目の素数さん:2006/12/23(土) 22:02:48
test
146132人目の素数さん:2006/12/24(日) 10:06:13
            _|_
          /_\
           ̄|U ̄  
   /⌒ヽ    /ミヽ、 
   ( ^ω^)  ノミシ三 `~゚
   (っ ≡つ=つ゚  ゚ 
   ./   ) ババババ
   ( / ̄∪


             _|_
           /_\
  ヒュン        ̄|U ̄  
  /⌒ヽ 三⌒ヽ /ミヽ、 
((( ^ω^)三ω^)ノ ヽ  `~゚ ))
  (_っっ= _っっ゚   ゚ 
   ヽ   ノ ヒュン
   ( / ̄∪
147132人目の素数さん:2006/12/25(月) 02:16:09
 / / /// ./ /  /j  / // 〃!|| | ||ll| | | ヽヽ ヽ   |     |       |,  -──- 、    /
  i  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時間」です。

貴方の知り合いや友人ももれなくセックスをしています。
普段はあどけない顔して世間話してるあの娘もセックスをしています。
貴方が片想いしているあの綺麗な女性もセックスをしています。
貴方にもし年頃の娘さんや姉・妹がいて、いま家にいないのでしたら間違いなくセックスしてます。
貴方と別れたあの娘も貴方がその娘にやってきたことを別の男にやられています。
貴方の将来の恋人や結婚する相手は、いま違う男のいちもつでヒィヒィ言っています。
148132人目の素数さん:2006/12/25(月) 19:55:58
メリクリ
149132人目の素数さん:2006/12/27(水) 18:12:07
うう、Cの関数とうまく繋がらない・・・死にたい
150132人目の素数さん:2006/12/29(金) 01:09:32
>>149
↓の中に例が載ってるよ.ダメなら↓で紹介されている本に解説があるよ.

http://cwoweb2.bai.ne.jp/~jgb11101/files/log.html
151132人目の素数さん:2006/12/29(金) 06:59:51
論文以外で日本語の中に「 , . 」は使わないな…
使い分けられないと頭の悪い人みたいだし
152132人目の素数さん:2006/12/29(金) 07:10:34
おちんちんが小さいのはだあれ?
153132人目の素数さん:2006/12/31(日) 14:12:01
ヌッシー
154age:2007/01/04(木) 21:42:02
age
155132人目の素数さん:2007/01/06(土) 13:29:21
Window+R+Meadw+ESSな環境でhelp()したとき,Linuxみたいに
Meadowにhelp文章を表示させる方法はわかりますか?
(Windowsだと別のヘルプ用のフレームが開いてしまいます。)
156132人目の素数さん:2007/01/06(土) 18:57:12
おまえバカだろ
157132人目の素数さん:2007/01/06(土) 19:07:17
>>155
Winodwsは周囲にないので試せないけど、ダメ元で
M-x ess-help ENTERキー
(Help on) ヘルプ表示させたいコマンド名
をやってみて。essユーザはhelp()の代わりにess-help-modeを便利に使うよ。
ess-helpコマンドはRプロセスが動いていないと使えないよ。
158132人目の素数さん:2007/01/06(土) 21:49:04
>>157
ダメでした。同じようにヘルプ用のフレームが起ち上がります。
159132人目の素数さん:2007/01/07(日) 00:07:15
高校の教科書にのってるような正規分布を使った区間推定や検定は
できますか? t.test()があるのでnorm.test()もあるかと思ったらなかったので。
160132人目の素数さん:2007/01/08(月) 00:14:54
>>155
Meadowの設定の問題じゃないの?
手元ではデフォルトで大丈夫だし。

>>159
できるよ。具体的な問題書いたらいいと思うよ。
気が向けば誰か答えてくれるよ。

ていうか今高校の教科書で区間推定とか検定とかやるの?
161132人目の素数さん:2007/01/09(火) 23:43:50
>>160
Meadowでの設定は
(setq inferior-R-program-name
"c:/Program Files/R/R-2.4.1/bin/Rterm.exe")
(require 'ess-site)
以外に何をおこなってますか?
よかったら教えてください。
162132人目の素数さん:2007/01/11(木) 00:10:03
(load 'ess-site)
(setq inferior-R-program-name
"c:/Program Files/R/R-2.4.1/bin/Rterm.exe")

だったかな。
もしかして新しいフレームが出てくるって、同じウィンドウが2分割されて、下側にhelpが出てくるってことをいってんの?
それとも新しいウィンドウが開いちゃうってことをいってんの?
163132人目の素数さん:2007/01/12(金) 22:27:31
>>162
新しいフレームというのは,WindowsでESSからではなく,普通にRを起動する
と,RGuiが開きますよね。そのR Consoleでhelp()したときに起動するフレー
ムのことです。
ちなみに当方のessはversion5.3.3です。
164132人目の素数さん:2007/01/15(月) 07:15:43
FreeBSD-6.2R(i386) で R を ports から入れようとしているのですが,
WITH_ATLAS=yes とすると

...
...
mkdir ../../../../library/grDevices/libs

というところでビルドが止まってしまいます.
atlas は
WITH_OPTIMIZED_FLAGS=yes
WITH_STATICLIB=yes
して作ってあるのですが...
どなたか解決法をご存知ではありませんでしょうか?
165132人目の素数さん:2007/01/21(日) 04:45:51
多変量正規分布の相関行列を求めたいのですが、
プログラム落ちてないですかね?
ご存知の方教えてください。
166132人目の素数さん:2007/01/21(日) 09:49:21
>>165
意味不明です。データの相関行列とは違うのですね?
167132人目の素数さん:2007/01/21(日) 23:33:48
RからSQLサーバーにしまってるデータにアクセスしたいんだけど、なんかいいチュートリアルない?
168132人目の素数さん:2007/01/21(日) 23:35:43
>>165
正規分布って言ってる時点で、パラメータとしての相関係数は与えなくちゃ駄目なんじゃないのか?
標本データからの推定値を求めたいのなら話はわかるが、、、。
169165:2007/01/22(月) 20:14:00
言葉足らずですみません。
自分も理解不足でした。

標本のデータがありまして、多変量正規分布と多変量楕円分布のパラメータをそれぞれ求めろといわれたのですが、
いまいちやり方がわかりません。
Rをつかってやるというのがいまいちわからなくて・・・

ヒントだけでもいいので教えてください。
170132人目の素数さん:2007/01/22(月) 22:50:14
ar関数を使ってVARモデルを求めましたが、(こんな感じです。(USe.ar<-ar(df,order.max=2,aic=F))
モデル推計値とサンプルの値が全然フィットしません。
どのような問題点が考えられるでしょうか?
171132人目の素数さん:2007/01/23(火) 02:41:57
>>170
データが少ないか定常でないか。
172132人目の素数さん:2007/01/23(火) 11:21:13
>>169
パラメータの推定量を調べろ。式のないものは計算できん。
Rは式を計算しているに過ぎんからな。
173132人目の素数さん:2007/01/24(水) 23:42:27
Rでの分析を頼まれたのですが、初めて使うのでR−tipsも見ても使い方がよくわかりません。
初歩的な質問ですみませんが、わかる方ご教授のほうをお願いいたします。

データがテキストの改行区切りで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)
でやればいいのかなと思うのですが・・・

宜しく御願い致します。
174132人目の素数さん:2007/01/25(木) 00:15:45
>>173
なぜhistがうまくいかないのかはデータを見ないと分かりません。
見出しの変数名がついていたりしませんか?
x<-scan("data.txt")
でエラーが出るなら数値データ以外の何かが含まれています。
175173:2007/01/25(木) 00:24:22
>>174さま
データはたしかに数値データのみです。
> hist(x([,1])
エラー:syntax error in "hist(x(["
のようなエラーがでました。
176132人目の素数さん:2007/01/25(木) 07:34:32
>>175
scanは試したの?試してエラーがなかったのならhist(x)でうまくいくはずだけど。
(2列以上データがあって1列だけ使いたいならread.tableしかだめだけどね。)
なお、数値データと思いこんでる場合もあるよ。たとえば「1,000」なんてコンマを
入れたりするけどRでは文字列にされちゃうよ。
177173:2007/01/26(金) 00:02:26
>>176
scanは試しました。特にエラーは出ませんでした。
データが8列500行ぐらいあるのでread.tableしかだめなようですね。
エラーがsyntax errorなので、文法的に間違っているのかとかいろいろ考えたのですが・・・
もう少しがんばってみます。ありがとうございました。
178132人目の素数さん:2007/01/26(金) 01:30:42
>>177
scanが使えるなら
x <- matrix(scan("data.txt"),ncol=8)
で十分じゃないの?
まさかと思うけどx[,1]のコンマをピリオドと間違ってたというような
落ちじゃないよね?
179173:2007/01/26(金) 12:03:37
>>178
8列入ったデータをそのままやるとどうしてもエラーが起きるので、
プログラム的にはかっこ悪いですが、手作業で1列だけのデータを8つ作り、
それを動かしてみたらうまく動きました。
2列以上のデータに対してhist(x[,1])とかは使えないのでしょうか?
いやそんなわけないですよねぇ・・・

とりあえず、提出用のものができました。
ありがとうございました。
180132人目の素数さん:2007/01/26(金) 12:07:42
>>179
> 2列以上のデータに対してhist(x[,1])とかは使えない
意味わかんない。
> x <- cbind(a=runif(10),b=runif(10))
> hist(x[,1])
やってみな。
181132人目の素数さん:2007/01/26(金) 17:52:14
まずは落ち着け

>>175
> hist(x([,1])
エラー:syntax error in "hist(x(["

scanとかそんなことはどうでもよくて、xの後の括弧が余計なんだよ
182173:2007/01/26(金) 23:43:02
>>181
うまくいきました。ありがとうございました。

ご教授してくださった皆様どうもありがとうございました。
183132人目の素数さん: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'です


184132人目の素数さん:2007/02/01(木) 00:15:06
>>183
ここに貼り付けた通りなら綴りが違うんじゃあ…。
clipboardっすよ。
185132人目の素数さん:2007/02/01(木) 07:45:25
>>184
どうもありがとう!ぶじ出来ました!!
しかしなんて初歩的な・・・。穴にもぐりたいです。
186132人目の素数さん: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 のベクトルを割り当てることができません。
187132人目の素数さん:2007/02/01(木) 21:01:05
そんな膨大なデータをフリーソフトにかけるとは…
188132人目の素数さん:2007/02/05(月) 18:16:19
219
189132人目の素数さん:2007/02/16(金) 04:33:01
Rの最大の不満点は、「R」でググりにくいこと。
単語にしてくれと切に願う。
190132人目の素数さん:2007/02/18(日) 11:10:24
>186
1.24000からランダムに非復元抽出で1000くらい抽出する
2.1000掛ける107の行列で変数選択,たとえば10個くらいの残る
3.24000掛ける12のデータで確認する,2と殆ど変わらんゾ

無作為に1000抽出すれば,元のデータと
相関係数は0.005以下のズレしかないから,実用的には
これで十分

むしろ24000で変数選択するとNが多すぎて
ゴミみたいな変数を拾いがちになるよ
191132人目の素数さん:2007/02/20(火) 14:56:34
windowsでR使ってるんですけど
csv形式で8000行9列程度のデータをインポートしようとするとRがフリーズします.
データを少なくして2000行9列程度でやってみるとかろうじて読み込んでくれるようなんですけど
8000行で読み込みたいので教えてください
192132人目の素数さん:2007/02/20(火) 16:40:04
メモリーは関係無いのかな?
193191:2007/02/20(火) 16:53:51
>>192
メモリのサイズはほとんど関係ないです.
194132人目の素数さん:2007/02/20(火) 18:18:31
何でこれはcygwinのパッケージに入ってないの?
195132人目の素数さん:2007/02/20(火) 18:39:59
>>191
かわいそうに。。。
196132人目の素数さん:2007/02/20(火) 19:39:07
Windowsみたいな糞OSつかっているからしかたないのかも
197132人目の素数さん:2007/02/20(火) 20:59:25
ノートパッドは固まるよ。ワードでインポートすれば?
198132人目の素数さん:2007/02/25(日) 22:36:36
199132人目の素数さん:2007/03/05(月) 15:32:08
詳しい人教えてください。
Rでモンテカルロシミュレーションをやろうと思っています。
ファクターは、2種類で、
ひとつは対数正規分布にもうひとつは正規分布な乱数にて数字を出し、
最後に両者を掛け合わせる形になります。

具体的な手順、ソースに参考になるページなどご存知の方は、
ぜひ情報をいただけると幸いです。
200132人目の素数さん:2007/03/11(日) 21:27:30
750
201132人目の素数さん:2007/03/14(水) 14:37:04
>>199
そのくらいなら、R-tips みれば一発じゃね?

http://cse.naro.affrc.go.jp/takezawa/r-tips/r.html
202132人目の素数さん: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が残ったままの形で定義されてしまいます。

ちなみに定義したい理由は、
別の関数の引数として用いるためです。
203132人目の素数さん:2007/03/21(水) 16:20:18
>>202
2変数関数じゃだめなわけ?
204132人目の素数さん:2007/03/21(水) 19:41:22
>>202
おれも>>203と同意見
hoge <- function(x,n) {
return(x+n)
}
205202:2007/03/22(木) 05:35:47
すんません。説明不足でした。

Rに boot() というbootstrap関数があって、
(私の理解では)この関数は一変数の関数を引数とする関数です。
なので、あくまで1変数の関数のを定義したいのですが。
206132人目の素数さん:2007/03/22(木) 11:23:50
>>205
だったらベクトルを引数にしてc(x,n)で対応することはできない?
その一変数ってスカラー限定?
207132人目の素数さん:2007/03/22(木) 14:15:39
あんま好きじゃないけど

f<-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,"}")))

とか
208202:2007/03/22(木) 17:45:46
>>206
確かにそうですね。その関数はデータフレームを引数とする関数
なのですが、そのデータフレームに新たに列を追加して、その全ての
行の値をnにしておけば、対応できそうな気がします!

>>207
おー、これはすごい。保存させていただきます。
eval や paste を使って...と自分でも思っていたのですが、
細かい仕様をきちんと理解していないためできませんでした。

お二方、どうもありがとうございました!
209132人目の素数さん:2007/03/26(月) 13:06:33
R-tipsに書いてあることはだいたいやれるようになったのですが、もう一段ステップアップしたい。
Rでインライン関数や構造体、クラスは使えるのでしょうか。
210132人目の素数さん:2007/03/28(水) 18:58:12
U. リゲス『Rの基礎とプログラミング技法』
http://www.amazon.co.jp/exec/obidos/ASIN/4431712186
211132人目の素数さん:2007/03/31(土) 10:26:35
誰か同じ経験した人がいましたら教えてください。

WINDOWS 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'
と表示され、なにも起こりません。

このトラブルに対処できる方法を
誰かご存知ありませんか?




212132人目の素数さん:2007/04/01(日) 02:56:15
誰でも参加可能なRまたはSの講習会はないでしょうか?
どなたかご存じでしたら教えて下さい。
213132人目の素数さん:2007/04/07(土) 23:26:34
お金はかかるが、数理システムのトレーニングコースはどうでしょうか。
Sではなく、S-Plusになってしまいますが。

「誰でも参加可能な無料の講習会」をお探しかもしれませんが、何のメリットにも
ならないことをしてくれる奇特な人はいないでしょう。
214132人目の素数さん:2007/04/08(日) 02:51:40
>>212
 平成19年はどうなるかわからないけど、統計数理研究所が公開講座を開いています。
215212:2007/04/08(日) 21:38:52
213さん、214さん情報をいただきありがとうございます。
当方、万年予算不足の九州の小さな研究所に勤務しているため、教えていただいた2つの講習会に参加できるか分かりませんが、休暇が取れれば自費ででも参加してみたいと思います。
216132人目の素数さん:2007/04/11(水) 15:15:01
>>215
九州の大学教員だけど、Rの講習会をすれば需要があるのかな?
217212:2007/04/12(木) 18:50:43
>>216
自分の周囲ですが、Rを使い始めた、または興味をもっている人は多数います。
もし講習会を開いていただけるのであれば、ぜひ参加させていただきたいと思います。
218132人目の素数さん:2007/04/12(木) 20:46:04
九州でやったら、久留米の学生さんが押しかけそうな予感。
219132人目の素数さん:2007/04/16(月) 09:15:53
Rを日本語の論文で引用したい時って皆さんどうされていますか?
R言語・環境って書いたら先生にもっとマシな言いよう無いか調べてくれと言われました。
220132人目の素数さん:2007/04/16(月) 10:17:23
>>219
データ解析環境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形式が分からなかったら、適当な文献ソフトに読み込ませろ。
221132人目の素数さん:2007/04/16(月) 17:38:31
>>220
データ解析環境R ですね。
早速先生に聞いてみます。

どうも有り難うございました。
222132人目の素数さん:2007/04/17(火) 10:35:00
R scriptをwindowsで実行可能なファイル形式(exeファイルとか)に変換できますか?
223132人目の素数さん:2007/04/18(水) 00:33:58
>>222
Rがインストールされていないところでも動くようにということ?それは無理だろ。
224132人目の素数さん:2007/04/19(木) 20:29:38
>>222
Rソースをコンパイルして(実行バイナリにして)利用する方法
がRjpwikiで以前に話題になった。ひょっとしたら関係あるかも。
225132人目の素数さん:2007/04/20(金) 00:12:12
>>224
探してみたが見あたらない…。
Rそのもののコンパイルの話かRからCなどで作った実行ファイルを呼び出す方法
なら見つかるのだが、それとの勘違いではないの?
226132人目の素数さん:2007/04/20(金) 12:36:01
少し話がそれますが、Excelのコマンド操作のみで
Rを呼び出すことは可能ですか?
Rをインストールしてある前提です。
227224:2007/04/20(金) 12:53:58
228132人目の素数さん:2007/04/20(金) 20:40:24
>>226
RExcelというのがあるが、
http://www.okada.jp.org/RWiki/?RExcel
これはExcel上にRのコマンドを書いて呼び出していたと思う。
Excelのコマンド操作のみというのがマウスで選ぶだけというような
意味ならそれからほど遠い。
229132人目の素数さん:2007/04/21(土) 15:50:05
VBAからRを呼び出すことは可能?
230132人目の素数さん:2007/04/21(土) 18:38:40
>>229
Rをコマンドとして呼び出して標準入出力で計算させることができるみたいだよ。
231132人目の素数さん:2007/05/03(木) 14:07:36
Rの Fisher's exact test (fisher.test(M), M:matrix)って、
列ベクトルが定数倍の関係になくても、
p-valueが1になっちゃうことが多いのはどうしてなのかしら?
232132人目の素数さん:2007/05/03(木) 22:42:22
統計学/グラフィクス向け開発言語/プラットフォーム「R 2.5.0」登場
2007/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/
       ↑
どうやって落とすの?
233132人目の素数さん:2007/05/04(金) 12:26:21
>>232
フツーに落として
tar xzf R-2.5.0.tar.gz
cd R-2.5.0
./configure; make; make install
234132人目の素数さん:2007/05/04(金) 12:28:21
95%信頼区間の出し方教えて
235132人目の素数さん:2007/05/04(金) 15:22:06
かな入力だったら、きゅうじゅうごぱーせんとしんらいくかん と打って
何遍かスペースバーを押す。

ローマ入力の場合はローマ字入力の人に聞いてね♪
236132人目の素数さん:2007/05/04(金) 17:27:21
ぜーんぜん
237KingOfUniverse ◆667la1PjK2 :2007/05/04(金) 18:03:42
人の脳を読む能力を悪用する奴を潰せ。
238132人目の素数さん:2007/05/04(金) 22:32:49
おもしろいなキミ  >>234
239132人目の素数さん:2007/05/06(日) 23:19:33
>>231
まずp値が両側で計算されていること、
また、その計算がデータを含めて超幾何分布でそれより確率の小さなものの
合計で求められていること、が理由です。
それにより定数倍から多少ずれてもそのデータが確率的に一番起こりやすいもので
ある限り表示されるp値は1となるようです。
240132人目の素数さん:2007/05/22(火) 01:50:50
javaからRの関数を使いたいんですけど
参考になるサイト知りませんか
241132人目の素数さん:2007/05/23(水) 12:01:22
>>240
> RSiteSearch('java')
とりあえず、これを実行する。
242132人目の素数さん:2007/05/23(水) 15:07:24
SJavaなるものを見つけました
Cygwinで使えますか?
243132人目の素数さん:2007/05/24(木) 15:56:46
すみません
RJAVAでうまくいきました
NETBEANSからのコントロールも可能になりました
お騒がせしました

これで関数ライブラリが自在に使えます
244132人目の素数さん:2007/05/24(木) 16:28:58
MATLABのSIMLINKみたいなことも可能かもしれませんね
誰か作ってくれないかな、楽しみです
245132人目の素数さん:2007/05/28(月) 12:38:49
計算時間を調べる方法ってありますかね?
1000個程度のデータの判別分析にかかる時間を調べたい、って時とかに
246132人目の素数さん:2007/05/28(月) 22:29:11
start_time = unclass(Sys.time())

やりたい計算

run_time = unclass(Sys.time())-start_time



247132人目の素数さん:2007/05/29(火) 01:44:39
>>246
おまいオモロイな

>>245
system.time
248132人目の素数さん:2007/05/31(木) 13:21:14
すみませんが、質問です。

SJava, 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)はエラーに。
249248:2007/05/31(木) 13:25:09
・rJava : http://wiki.r-project.org/rwiki/doku.php?id=packages:cran:rjava
 >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インストールしてあります。
250132人目の素数さん:2007/05/31(木) 15:01:17
Sjavaはwindows版のときもエラーが出ました
低レベルのjavaでの操作ならrJavaのjri.jarを使ったほうが
すんなり運用できます
rJavaパッケージのjriホルダに生成されます
docが無いようなのですが、サンプルを見ればすぐ分かると思います
JDKをSUNかIBMにしないとエラーを吐き出すようです
251248:2007/05/31(木) 15:34:56
>>250
なるほど、rJavaが比較的導入しやすいが、BEAのJavaではうまく行かないとい
うことなのですね。ありがとうございます。
252132人目の素数さん:2007/05/31(木) 16:53:38
時系列のarima分析をしたいんですが
aicは$AICでしか算出できないんでしょうか
総当りになり時間がかかるため、もう少し早い方法がないか
知りたいんですが
253248:2007/05/31(木) 18:35:59
すみません、JRIのインストールをされた方はいらっしゃいませんか?
Java から 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: 警告: 異なるサイズの整数からポインタにキャストされました

(略)
254132人目の素数さん:2007/05/31(木) 18:44:37
JGRをパッケージのインストールを使ってインストールして
付属するパッケージがインストールされたら読み込んで
もう一度JGRをインストール
一回じゃうまくいきませんでした
付属するパッケージは3つ位あってその中にrJavaがあります
JRIはrJavaに入っていますのでjri.jarにClasspathを通せば使えるようになります
255248:2007/05/31(木) 19:02:50
ありがとうございます。
Sun のJava1.5に替えたところ、rJavaはインストールできました。
/usr/lib64/R/library/rJava/jri/ に、JRI.jar が出来ていました。
今から試してみます。
256132人目の素数さん:2007/05/31(木) 21:09:52
それは良かったです
ちなみに私はNetBeansでjavaを書いてますが
順調に動いてます
JRIとjavaのアプリケーションとの間にコマンド用のインターフェース
をかませたりもしてます。
少し速度が遅くなるように感じますがその辺の対策があったら
是非教えてください
257132人目の素数さん:2007/06/11(月) 02:50:38
gettimeofday から取れる秒数(整数型)を、POSIXlt/POSIXct に変換するには
どうしたらいいでせうか?

as.POSIXct とかだと普通に変換する方法がわからないとか言われます・・・
258132人目の素数さん:2007/06/14(木) 11:54:51
x <- as.integer(Sys.time())
ISOdatetime(1970, 1, 1, 0, 0, "UTC") + x
259132人目の素数さん:2007/06/20(水) 14:21:21
初心者なんですけど教えて下さい。
重回帰分析(lm関数)でモデルを作成した後に、
モデルから算出される推定値を出力させたいのですが、
どのようにやるのかわかりません。

残差については、「resid」で出せるのですが。。
後、ベクトル自己回帰分析(VaR分析:ar関数)の際の推定値も同様なのでしょうか?

知っている方がいらっしゃったら、ご教示ください。
260132人目の素数さん:2007/06/22(金) 18:22:53
Rでホワイトテストっていうのはどうやるのでしょうか?
white.test(x,y)という引数が2つ必要なことはわかるのですが、
それぞれに何をいれたらいいのかがわかりません。

使っている方がいらっしゃいましたら、ご教示下さい。
261132人目の素数さん:2007/06/23(土) 20:06:28
>>260

なぜヘルプを見ない?

> ?white.test

262132人目の素数さん:2007/06/23(土) 20:09:51
>>259

model <- lm(.....)
predict(model)

ベクトル自己回帰はやったことないのでパス.

263132人目の素数さん:2007/06/24(日) 13:38:12
>>261 >>262
ありがとうございます。

ヘルプを見てもいまいちピンとこなかったもので。。
ようやく理解できました。
predictは予測だけにしか使えないと感違いしてました。
よくよく考えると同じ理論値を出しているものですもんね。
非常に助かりました。ありがとうございます。
264132人目の素数さん:2007/06/28(木) 02:43:24
欠損値の「NA」は何の省略形ですか?
265132人目の素数さん:2007/06/28(木) 09:50:08
>>264

?NA として出るヘルプのタイトルみてみ。
266132人目の素数さん:2007/06/28(木) 21:21:49
>>265
ありがとうございました.
やっぱり,not availableだったんですね.
これの訳が,欠損値になると想像できませんでした.
267132人目の素数さん:2007/06/29(金) 02:01:42
age
268132人目の素数さん:2007/06/29(金) 08:56:55
2のべき乗を1乗,2乗のように,50乗まで計算し,その中に2n = n2 を満たす組み合わせ
をすべて求めたいんですが、Rではどのようにしたらいいんですか?
269132人目の素数さん:2007/06/29(金) 10:41:17
>>268

あんまりよくないんじゃないかと思う答え:

> e <- 1:50
> for(n in e ) if(2^n == n^2) print(ex)

forとかapply系使わないでももっときれいに書けそうだな。
270132人目の素数さん:2007/06/29(金) 10:43:43
>>269

まちがえた。最後のprint(ex)はprint(n).
271132人目の素数さん:2007/06/29(金) 17:17:51
>>269よりも原始的(直感的)に

> 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個しかないんだな。
272132人目の素数さん:2007/06/29(金) 18:54:01
本質的に >>271 と同じだけど
> n <- 1:50; n[2^n == n^2]
[1] 2 4
== を使った判定が正確かどうかは知らない。
273132人目の素数さん:2007/06/30(土) 04:11:34
自明な問題を計算させるな!
274132人目の素数さん:2007/06/30(土) 12:21:38
a<-c(1,1,2,3,5,8,13,21);a[-1]-a[-length(a)]
これって何を計算してるんですか?
275132人目の素数さん:2007/06/30(土) 14:42:57
>>274
diff(a)
276132人目の素数さん:2007/06/30(土) 18:46:51
>>274

a[-x] は、x番目の要素だけを除いた残りの要素を示すことに注意。
277132人目の素数さん:2007/07/01(日) 15:25:59
> mynet = nnet(X[,-10],X[,10],size=s,maxit=it,MaxNWts=30000,lineout=T)
# 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

このエラーが取れなくて困ってます。。。
彼は何にご不満なんでしょうか?
278132人目の素数さん:2007/07/01(日) 17:11:21
?predict.nnet

Value:

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').

ヘルプぐらい嫁
279132人目の素数さん:2007/07/01(日) 19:40:45
なるほど。ありがとうございます。
まだ未解決なので、続投をお許しください。
分かったことは、このnnet.formulaが肝っぽいということと、
ヘルプはとても便利だということの2つ。

example(predict.nnet)で実行サンプルを見てみました。
species ~ .
↑このあたりを真似て書きたいと思うんですが、そのためには
colnamesなどで名前を付けてあげないといけないんでしょうか?
nnet.formulaってこのあたりの話ですよね。
280132人目の素数さん:2007/07/01(日) 22:44:36
>>279
?nnet.formula
ヘルプ嫁。

んでcolnamesで名前付けてあげないといけないと思ったんだったら試せ。
試してわからなかったら質問しろ。
そのときはコードも書け。
データすべて乗せる必要はないがデータ構造はわかるように。
281132人目の素数さん: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
}
}
282132人目の素数さん:2007/07/02(月) 00:46:49

Y<-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種類のクラスに分類させたいとです。

丸投げ状態。。。 もういやん。
283132人目の素数さん:2007/07/02(月) 00:51:30
colnamesで教師信号のcolをlabelと名づけて、
label~.とかやってみてるんですが。同じエラーから逃げられませんでした。。。
284132人目の素数さん:2007/07/02(月) 23:02:21
> array(1:12,c(2,3,2))
の意味を教えてください!
285132人目の素数さん:2007/07/03(火) 22:58:08
平均m 、分散s 2 の正規分布(関数名はdnorm)
<ヒント>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が分散なんですか?
286132人目の素数さん:2007/07/04(水) 21:05:25
> a<-c(1,1,2,3,5,8,13,21);a[-1]-a[-length(a)]
[1] 0 1 1 2 3 5 8

これってなにをやってるんですか??
287132人目の素数さん:2007/07/05(木) 02:05:43
>>274以降嫁
288132人目の素数さん:2007/07/05(木) 03:14:29
ヘルプを見たんですがわからずに質問します

先にもやり取りがあったpredict(lm())の件なのですが
一期先予測をしたいときにpredictの引数をどのように設定すればいいのか教えてください
289286:2007/07/05(木) 13:15:27
>>287
274みたけどわかりません。分からなくて困ってますお願いします
290132人目の素数さん:2007/07/05(木) 14:35:12
>>289
c(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)とか、その他いろいろ変えて試してみろ。
291286:2007/07/05(木) 15:01:45
>>290
cによらず同じ答えが返ってくるのはわかりましたが、
そのルールがわからないです・・・

292132人目の素数さん:2007/07/06(金) 01:13:43
>>291
> 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
293132人目の素数さん:2007/07/06(金) 06:37:11
どこの学校の宿題だろうな...
もう少し自分で試行錯誤しないとものにならないよ。
294286:2007/07/06(金) 20:45:16
いまだにわからないです。教えてください・・・
295774ワット発電中さん:2007/07/06(金) 22:08:53
>>294
Rを何に使うつもりで質問していますか?
296132人目の素数さん:2007/07/08(日) 23:38:43
>>288
の件わかる方いらっしゃらないでしょうか
297132人目の素数さん:2007/07/09(月) 00:33:04
わかる人はいても答える気になった方がいらっしゃらないだけでしょうか
298132人目の素数さん:2007/07/09(月) 17:45:07
>>296
お前の頼み方が気に入らない
299132人目の素数さん:2007/07/12(木) 00:33:00
そんなこと言わないで答えてやれよ
300132人目の素数さん:2007/07/12(木) 06:57:38
age厨を直さない嫌われものw。
301132人目の素数さん:2007/07/13(金) 03:44:27
粒子フィルタのパッケージはまだないの?
302132人目の素数さん:2007/07/14(土) 18:26:46
R 起動時に自動的に前回のワーキングディレクトリに移動してそこの .Rdata を読み込むように設定したいのですがどうすればよいでしょうか。
303132人目の素数さん:2007/07/14(土) 20:22:06
>>302
実行環境くらい書かないとな。
質問のしかたが悪いと答えを得られる確率はとても低くなるよ。
304302:2007/07/14(土) 21:03:59
>>303
失礼しました.
Mac OS X Tiger i386 で R 2.5.1 です.
R は macports からインストールしています.
305303:2007/07/14(土) 22:53:38
Mac使ってないので詳しくは判らないが(間違ってたら誰か指摘すると期待して書く)
Rのバージョンでどんどん変わるかも知れないのでリンクで示します。

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
作業ワークスペースの内容を任意のファイルからリロードするのは実行パラメータで指定すれば簡単みたいだ。
306132人目の素数さん:2007/07/16(月) 12:53:36
>>304
未検証だけど、普通に~/.Rprofileにsetwd()を書いたらあかんの?

私の場合、MacOSX 10.4 だけど、emacs+ess使っているので、>>304のようなことを
したければ、essの設定をちょこっと変更する
307132人目の素数さん:2007/07/18(水) 22:11:55
グラフの図
一度書き加えたもの(例えばxlabelとか)
を書き換えたりできないのですか?
全消去しなきゃならないの?
308132人目の素数さん:2007/07/18(水) 22:36:04
>>307
上書きはできるはずだがうまくいったためしない。素直に書き直すのが吉。

初めはラベル入れないでグラフと凡例の図形だけ作って
Excelとかに貼り付けた後で入れるという手もある
見栄えを良くするために良く使っているが管理間違えると捏造になる。
309307:2007/07/18(水) 23:03:44
まじですか?
一度できたものの
書き換えができないのは
グラフ描画としては完全に致命的ですね
又、コマンドちまちまうてってか?
いやならわざわざスクリプトかけってのか?
完全に失望しました
310132人目の素数さん:2007/07/18(水) 23:50:31
質問
統計で言うところのLDってなんですか
311774ワット発電中さん:2007/07/19(木) 00:22:32
>>309
グラフ描画ソフトじゃなくて統計解析ソフトだからな。
不満なら文句言ってないで自分で描画ルーチン書けばいいだけだな。
312132人目の素数さん:2007/07/19(木) 01:14:39
javaに繋ぐ簡単な方法もあるしな
313132人目の素数さん:2007/07/19(木) 01:18:08
>>312
>>307はオリジナルデータを持ってないと予想w。
314132人目の素数さん:2007/07/19(木) 09:31:04
リスト項目へのラベル付けの方法についてなんですが

例えば40人のデータがあって、テストの点数59点以下を不合格群、60点以上を合格群といった具合に
分けたい場合、何かいい方法ありますか?

リストに論理式を用いてと規定の行のみを抽出して加工しようとも思いましたが
行の値だけ抜き出しても、その値の行の値を変えるとか別次元のベクトルでラベル付け
しようかと試みましたがなかなかうまくいきません
315132人目の素数さん:2007/07/19(木) 10:50:05
>>307
全部消去の意味が不明だが、複雑な図を作るときは関数化して作図すると思うので、
コマンド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()))を使わないとできないと思う。


316132人目の素数さん:2007/07/19(木) 22:38:48
>>314
40人くらいだったらExce○のフィルタとかでやった方が簡単にできるw。
RExcelというアドインを使えばExce○からRを呼び出すこともできるし。
317132人目の素数さん:2007/07/20(金) 22:35:14
314です
>>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)

という値が返ってくる、つまりラベル項目に欠損値があった場合
その行のデータを取り除いたデータフレームを出力したいといった場合どうすればよいでしょう?
318132人目の素数さん:2007/07/21(土) 00:34:30
↑自己完結しました
subset( data,!is.na(label) )
ですね
319132人目の素数さん:2007/07/21(土) 16:22:18
320132人目の素数さん:2007/07/21(土) 23:05:02
1986年1月20日スペースシャトル,チャレンジャーは24回目のフライトを迎えた.発射後
2分もたたないうちに宇宙船は爆発事故をおこし,乗組員は全員死亡した.次のデータは事故の原因
とされている,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回破損?
321132人目の素数さん:2007/07/23(月) 16:32:01
>>320
全くの人頼みだな。
自分で考えろよ。
322132人目の素数さん:2007/07/24(火) 09:45:08
数字がいくつか入ったベクトルがあって、ある指定された値に近い値をいくつかとりのぞきたい場合
どういう処理をしたらいすかね

ソートしてからabs関数使うとか?でも元の並びは変えたくないす
323132人目の素数さん:2007/07/24(火) 12:41:47
>>322
ソートとかabsとか意味が分からんが、
> haba <- 0.2
> aruatai <- 0.5
> a <- runif(100)
> a[((a> aruatai + haba) | (a < aruatai - haba))]
こういうこと?
324132人目の素数さん:2007/07/24(火) 20:37:04
>>321
破損割合の推定の仕方だけでも教えてもらえませんか?
325132人目の素数さん:2007/07/25(水) 10:32:26
R初心者なんだけど

[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
って感じにしたいんだけど、どうすればいいんかな?

326132人目の素数さん:2007/07/25(水) 11:27:44
>>324

この書き込みについてる表だけじゃ列の意味もよくわからないよ。問題文の読み取り方から
間違っているんじゃないの?先生に直接きいてみたら?

>>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
327132人目の素数さん:2007/07/25(水) 18:41:06
>>326
アリガdです
328132人目の素数さん:2007/07/25(水) 18:52:09
重回帰分析を使った一期先予想の仕方を教えてください
329132人目の素数さん:2007/07/25(水) 20:44:26
>>327
                 γ⌒/^^/^-
               ,ゝ`/~ /~ /~  /⌒ 
           _  〈(_|  | |~  |~  /^ )
            (/~ /~ /~ /~ ~ /~ /^\
           ()/)/~ /~ |~    .|~ |~ |~ /)
           へ^〈,|,,、,,|,,、,,,,,|~,,,,、〈~,, 〈~ /⌒|)\
          |:::::::   ゛  ゛          ,,,,;;::'''''ヽ
          |::::::::      ,,,,;;:::::::::::::::       __ ヽ
          |::: "   __    ::::     <'●, |
         ┌―. - '"-ゞ,●>   ::::::...         |  
          | | ̄..          :::::::          |
          ヽ.\{_           ( ○ ,:○)   |  . '・,.、 .
           \\/.                 ,'・, ,'・, . '・,.、、 .
             \_ヽ.        __,-'ニニニ,',ヽ . '・,.、 . '・,.、
..                ヽ.        │    /,'・,.、’、′’、′′′‘‘‘、 .
                \        │   │’、′′,.、 . '・,.、
                 |       ヾニ二ン"|・ '・,.、’、
                 |              /
                 ヽ\             /  
                  l  `ー-::、_       ,,..'|ヽ. 
                 :人      `ー――'''''  / ヽ
              _/  `ー-、          ,.-'"   \ー-、
           ,.-'"  \:      \      .,.-''"     |
         /.     \        ~>、,.-''"      |
    ,,..-‐'''""        ヾ    ,.-''"|    /――――、/
330132人目の素数さん:2007/07/25(水) 22:39:41
>>326
一番左のはRでデータ表示したときの行番号なんで無視してください

53 2
57 1
58 1
63 1
66 0



76 0
78 0
79 0

左側が打ち上げ時の温度で、右側が破損個数だそうです!
331331:2007/07/25(水) 22:43:17
3/3=1
332132人目の素数さん:2007/07/26(木) 10:25:53
>>330

お、きちんと調べてきましたね。
これならわかるかな。
Oリングは合計で6つあるんだから、破損割合は破損個数を6でわればOkだね。
あとは破損割合と温度の間に関係があるか?という仮説に対して、
統計学的な答えを与えられれば、いいレポートになるんじゃないの。

333132人目の素数さん:2007/07/26(木) 10:28:48
>>328

「一期先予想」という言葉は聞いたことがないんだけど、
predict(model, newdata=data.frame(説明変数=xxx)) のこと?

334132人目の素数さん:2007/07/26(木) 11:53:43
重回帰ってn個からなる時系列のn+1番目の値の予測には使わないのが一般的?
335132人目の素数さん:2007/07/26(木) 12:26:16
>>332
単純にそれでいいんですね。推定せよなんて立派な事書いてあったので、最尤推定とかするのかと思いました

横軸に温度,縦軸に破損割合をとったグラフを書くんですが、破損回数がゼロ回のときを抜いたものも
書かなきゃいけないんですが、Rではどうやるんですか?

実はこれだけじゃなくて、温度でグループわけして破損割合の区間推定なんかもしないといけないんですがw
336132人目の素数さん:2007/07/27(金) 11:21:26
>>334

一般的かどうかは業界によると思われ。
まぁいずれにせよpredictで。

>>335

1回の打ち上げにつきデータ一組しかないからmleとかfitdistrはないな。
破損回数がゼロ回をのぞくのは、データ抽出の問題。データフレームから、特定の変数が
特定の値になっている行だけをとりだす関数、あったよね。

逆に温度をカテゴリ化して,特定のカテゴリの破損割合を抽出して、その母平均の信頼区間...
という流れか。
337132人目の素数さん:2007/07/27(金) 22:22:14
>>336
カテゴリわけってどうやるんですか?

if(temp>=66){
g1=temp}
else{
g2=temp

みたいにすると 条件が長さが2以上なので,最初の一つだけが使われますって出てできないんです
338132人目の素数さん:2007/07/27(金) 22:26:34
すいません。普通に抽出の関数で場合わけしたらできました・・・

温度が低いほうのグループがこんな風になったら、このグループでの破損割合pでどうやって求めるんですか?
(2+1+1+1)/6でいいんですか?
53 2
57 1
58 1
63 1
339132人目の素数さん:2007/07/28(土) 23:58:19
>>338

subsetとかで抽出するのも正解ではあるけど、
cutでファクタに変換してからx[temp=="(50,55)",]とかで抽出するほうが
Rらしいかな。

(2+1+1+1)/6 って、まさかとは思うが、
((2+1+1+1)/4)/6 のミスタイプだよな?

破損割合の平均値が求まったら、1標本t検定に使う関数で、平均値の
信頼区間を求めてみれば?

340名無しさん@そうだ選挙に行こう:2007/07/29(日) 10:35:06
>>339
温度が低いグループと高いグループでそれぞれp1,p2の破損確率が求まりました。

t.testを使った方法がわかりません。t.testの引数は一つですよね?

また気温がたとえば60度の時の破損確率を予測する方法もわかりません
341132人目の素数さん:2007/07/30(月) 19:27:47
読み込むCSVデータの列が大きすぎて読み込めない場合、なにかいい方法はありますか?
データのほうは手をつけずに
342132人目の素数さん:2007/07/30(月) 23:51:05
>>340

t.test(c(2,1,1,1)/6) とかで破損確率の95%信頼区間をだせば?
予測は...このレベルの学生さんにlm()をやらせるとは豪気なw

343132人目の素数さん:2007/07/30(月) 23:54:45
>>341

列が大きい場合って経験したことがないですが、Rの制限でしょうか。
何列ぐらいのデータですか?

RでだめだとExcelでもだめだろうと思うので、あとはRubyとかPerlとかawkとかに
頼るしかないかと...
344132人目の素数さん:2007/07/31(火) 00:01:52
大規模データを扱うhugeパッケージとかなかったけか?
そもそもRで駄目ならRubyもPerlもawkも基本的に駄目でしょ。
SASはデータをメモリに読み込まないから大丈夫だと思うけど。
345132人目の素数さん:2007/07/31(火) 06:56:50
>>344

ん?1行をどういう方法で読み取るかによるので、Rではだめでも、Ruby等で
簡単に1つのCSVをいくつかのファイルに分割するスクリプトを書いて、分割した
ファイルをRで読み込めばよいのでは?

SASって読み込めるCSVファイルの列数も制限ないのかな...
まぁ、一度データセットになってしまえば確かに大規模データはマイニングソフトである
SASの得意分野だと思うけど。
346132人目の素数さん:2007/07/31(火) 20:16:51
>>345
複数のCSVファイルに分割しても結局Rに読み込むんでしょ?
デフォルトのRはオンメモリだから何も変わりません。
分割したファイル毎に分析を行い結果を統合…まず有り得ませんね。

SASはデータをHDにガリガリ書き込んでメモリを使わないのさ。
一部のプロシジャは別だけど。
347132人目の素数さん:2007/08/05(日) 14:06:41
Rはデータハンドリングが弱すぎだね。ちょっと致命的。
348132人目の素数さん:2007/08/05(日) 14:40:52
>>347
具体的に
349132人目の素数さん:2007/08/05(日) 21:35:59
>>347

そういう分野もあるかもね。さようなら。
自分の分野ではまったくそういう印象を受けないので、想像できないけど。
350132人目の素数さん:2007/08/05(日) 23:37:33
データハンドリングが一切必要の無い分野・・・研究室かw
351132人目の素数さん:2007/08/07(火) 19:54:28
これ大量のグラフ書き用にはつかえないよね
一体何行書けば足りるのかって気になってくる
凡例書くのでさえ一苦労
352132人目の素数さん:2007/08/07(火) 22:20:41
なんというゆとり脳
353132人目の素数さん:2007/08/07(火) 23:19:51
そうか...スクリプトという概念そのものがないのか...
これがゆとりということか。
354132人目の素数さん:2007/08/08(水) 22:15:38
Rにファジーのパッケージありますか
355132人目の素数さん:2007/08/08(水) 22:36:15
は?おかしなこと言うもんだね
凡例書くのにどれだけ手間とられてると思ってるんだよ!!!
プロット点の数字、色の数字、配置!(場所が座標指定w)
更に数式表現さえexpression
でわざわざ調べて書かなきゃいけない煩雑さ!
冗談じゃないよ!つくってるやつはなにやってんだ!
スクリプト?
いっとくがおれはzshとPerlマスターだ
その俺が頭にきてるんだ
猛省しろ
356132人目の素数さん:2007/08/09(木) 05:10:50
例えばどういうグラフをどれだけの「行」で描いて欲しいのか
具体的に書いてみたら?
357132人目の素数さん:2007/08/09(木) 05:48:58
>>355
>いっとくがおれはzshとPerlマスターだ

( ゚∀゚)アハハ八八ノヽノヽノヽノ \ / \/ \
358132人目の素数さん:2007/08/09(木) 16:23:19
ゆとりやろうども354に答えてやれ!
359132人目の素数さん:2007/08/09(木) 20:40:57
>>354

gcl: Compute a fuzzy rules or tree classifier from data
fuzzyRankTests: Fuzzy Rank Tests and Confidence Intervals

>>355

まだ若い君の経験での評論と、世界中の第一線の統計学者が愛用している実績と、
どちらが信用できるかよく考えてみるといい。
効率的な使い方がわからなければ、質問することは恥ではないよ。
たとえばpdf()やpng()を使ってグラフの主要部分だけを書いて、凡例等は他のソフトでつける
テクニックとか、locator()関数で場所を指定する方法とかね。
360132人目の素数さん:2007/08/09(木) 21:59:39
まぁオサーンの>355は手書きの方が速そうだw
361361:2007/08/09(木) 22:11:28
√(361) = 19 才は未成年
362132人目の素数さん:2007/08/09(木) 23:00:08
Rって扱えるデータ数は何個なんですか?
363132人目の素数さん:2007/08/10(金) 01:57:31
まあ広く浸透させるためには
もうちょっとグラフを簡単に書けるようにしなきゃいけない、
っては事実だと思うよ。

グラフの書式は、エクセルみたいに手でいじれるようにするとか。

数式とかも、せめてTEXと同じ書式で入力できたら楽なのに。

364132人目の素数さん:2007/08/10(金) 02:54:35
>>363
頑張って作ってくれw
365132人目の素数さん:2007/08/10(金) 03:27:20
java通してJFREECHART使えばEXCELより綺麗なグラフが作れる
366366:2007/08/10(金) 22:13:11
√(36)=6
367132人目の素数さん:2007/08/12(日) 00:43:29
packageをインストールして関数定義を見ると
.call("○○")
とかなっているんですが、この場合cのソースとかはどこを調べればいいんでしょう?
また、cのコードを編集するにはどうすればいいんでしょう?
368132人目の素数さん:2007/08/12(日) 01:23:44
>>367
> この場合cのソースとかはどこを調べればいいんでしょう?
CRANへ行ってソースファイルを見る
> cのコードを編集するにはどうすればいいんでしょう?
テキストエディタで編集する

ソースを検索したいなら、例のgonzuiサイトが便利。
369132人目の素数さん:2007/08/27(月) 02:47:43
あけ
370132人目の素数さん:2007/09/03(月) 18:18:43
タブ区切りのデータフレームを、CSVファイルへの書き出しについて質問です

処理を行って、データフレームを生成すると、出力時に1列目に

1
2
...

と番号を振ってくれるのですが、そのデータフレームをファイルの保存する際に
その振ってくれた番号を一緒に保存してしまい、列がひとつ右にずれてしまいます


また、空のデータ項目があった際、たとえば
"aaa"\t""\t"bbb"\t
のような時にCSVファイルに書き出そうとしたらaaaからbbbまでをひとつの文字列として認識してしまい
結果項目数がおかしくなり、これまたずれが生じてしまいます

何かよい解決方法ご存知の方、ご教授お願いします
使用しているのはVer2.50です
371132人目の素数さん:2007/09/03(月) 18:35:09

しかもずれるのは行数によってマチマチです
aaa,\t,bbb をひとつの文字列として認識したり
AAA,\t までをひとつとして認識したり

前後のaaaやbbbのアスキーコードとかの関係かもしれませんが
372132人目の素数さん:2007/09/03(月) 20:11:34
>>359
多くで使われてることと使いやすさはほとんど関係ないよ。

これはソフトウェアインターフェイス設計では常識。
373132人目の素数さん:2007/09/03(月) 22:58:38
>>370
データの書き出し関数のオプション弄れば消せなかったっけ?
英語が苦手なので…ってのはナシな
374132人目の素数さん:2007/09/04(火) 16:05:14
>>373
オプションで番号問題は解決しました
write.table(x, file=" ",row.names=FALSE)

が、文字列データの区切りは相変わらずうまくいきません
NAでなくても、連続する日本語データでも、区切りがなくなる文字があるようです
375答えは100:2007/09/04(火) 22:23:37
linuxでコマンドラインで使ってます。
表示をlessみたいにページ単位でやらせるには、どうすればよいですか?
376132人目の素数さん:2007/09/06(木) 08:41:52
>>374
write.tableでオプションをがしがしつけていいけど、write.csvとかwrite.csv2を使わないのはなぜ?
>>375
lessがページャだとしっていれば
?page
linuxならemacs+essを使うとらくだよ。
377132人目の素数さん:2007/09/07(金) 01:27:52
Vine Linux 4.1のフルインストールした後Rをapt-getで追加インストールできるんですけど
X11()を行うとフォントパスがおかしいと言われて表示できないんですが、
何が足りないか分かる人いますか?
コマンドオンリーでウィンドウは開けないとか?
378132人目の素数さん:2007/09/07(金) 09:32:52
>>377
役に立たなくて申し訳ないが、こちらは問題なし。
379132人目の素数さん:2007/09/07(金) 23:28:16
>>378
情報ありがとう!
実はあの後別のマシンで試したら確かに普通にX11ウィンドウが使えた。
やはりRのソフトそのものには問題はなさそう。
しかし、もう一方のマシンではなぜ同じように入れたのにフォントパスが
おかしいと言われるのだろう?謎は深まるばかりです…。
380132人目の素数さん:2007/09/08(土) 14:52:39
Rの入門講習ってのもあるんだね。
"R" 実習で学ぶ統計的シミュレーション入門セミナー 大阪大学 坂本亘准教授
日時:2007年9月18日(火) 12:30-16:30 会場:大井町きゅりあん4階
http://www.johokiko.co.jp/seminar_medical/AA070911.php
381132人目の素数さん:2007/09/09(日) 02:56:32
結果格納するために日付の入ったディレクトリを作りたいのですが
Rで新しく動的にディレクトリ作成するにはどうしたらよかですか?
write.csv(x,paste(sys.date(),"kekka"))
382379:2007/09/11(火) 00:07:37
あれからもう一度試したら普通に動きました。
一体あのエラーは何だったんだろう…。
383132人目の素数さん:2007/09/11(火) 19:53:46
>>381
環境をかきなよ。
system("mkdir $(date +%Y%m%d)")
で今日なら20070911というディレクトリが出来るけど。
384132人目の素数さん:2007/09/19(水) 11:27:19
皆さんはWindows上で R を書くのにどんなエディタを使っていらっしゃいますか?
前スレでは Meadow + ESS が紹介されていましたが。
また、xyzzy で R を書くのに適したモードはありませんか?
385132人目の素数さん:2007/09/20(木) 11:31:46
R立ち上げたら
2007-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です。
386132人目の素数さん:2007/09/20(木) 16:45:36
どうして
for (i in 10:20) {
shapiro.test(1:i)
}
と書くと、ループ内の行の出力がでなくなるのですが、
これはどうしてですか?
387132人目の素数さん:2007/09/20(木) 17:32:15
>>385

うちの環境では出ないので、Application EnhancerとかGrowlとか、
アプリの起動時に何かさせる拡張系が組み込まれている環境特有な
現象のような気がする。

388132人目の素数さん:2007/09/21(金) 04:21:33
>>386
for (i in 10:20) {
print(shapiro.test(1:i) )
}
でいけるかと

Rってソートは遅いみたい?ですねPHPで組んだプログラムより遅いくらいな気が
結果だけ出してCでソートするモジュール書いたほうがいいですかね?
みなさんソートとかするときどうしてます?
389385:2007/09/21(金) 09:06:22
>>387
一旦終了してから起動し直すと出なくなります。
でも、システムを起動し直し、Rを動かすと(一回目に限り)やはり出てきます。

実害は無さそうなので、気にはなるけれど、目をそらすことにします。
ありがとうございました。
390132人目の素数さん:2007/09/22(土) 15:38:19
構造方程式(sem)パッケージを利用して、潜在変数を仮定するモデルを推計することは可能でしょうか。
391132人目の素数さん: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
392132人目の素数さん:2007/09/22(土) 19:13:22
64bit版WindowsでR使ってLinuxより制限されてるとこって何処かあるかな

Open厨からは回答いらね。
393132人目の素数さん:2007/09/25(火) 22:16:57
すみませんが、質問です。
R で多倍長整数(桁数に制限のない整数)を扱うことはできますか?
たとえば 1000!を正確に計算する、といった用途です。
394132人目の素数さん:2007/09/26(水) 04:09:59
>>393
多倍長整数を操作する関数群、パッケージ gmp

2chで聞く前に
http://www.okada.jp.org/RWiki/?cmd=search
で検索くらいはしませう。
395393:2007/09/26(水) 09:43:01
>>394
何だコラ!上から目線で物言ってんじゃねえぞ!
俺が馬鹿だからってなめんなよ。ひとこえで20人はあるまるからな。
396393:2007/09/26(水) 12:32:43
>>394
おお、ありがとうございます!
たしかに検索したらあっさり見つかりました。すみません。
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
数学板にも騙りとかやる人がいるんですねえ。
まあ、馬鹿は当たってます。
397132人目の素数さん:2007/09/27(木) 00:58:19
>>396
「あるまる」
398132人目の素数さん:2007/09/27(木) 08:27:48
R丸ってそれはR言語じゃなくてコピーライトマークだな。
399132人目の素数さん:2007/09/29(土) 02:31:04
MacOSX10.4+R 2.5.1を使っております。
Quartzではグラフで日本語が通るのですが(青木先生の.Rprofile設定)、
Carbon Emacs+ESS 5.3でX11上で日本語をグラフ出力すると文字化けしてしまいます。
どなたか対策をご存じの方いらっしゃいますでしょうか。。
400399:2007/09/29(土) 02:48:24
お騒がせしました、X11fontsの設定でいけました。感動です。。
401132人目の素数さん:2007/09/30(日) 12:26:45
RはGUI機能がまともではない
いったい何十年前の機能しかもってないのかっての
402132人目の素数さん:2007/09/30(日) 13:37:04
GUIは今後Rcmdrが少しずつ進展するかと。
SPSSやSASでもGUIでは出来ないこと多いかと。
それより、Rでは変数が多い場合のデータハンドリングに結構工夫が求められるかと。
403132人目の素数さん:2007/10/01(月) 18:50:22
>>399
MacOSXでessを使っている仲間を発見!
エラーメッセージなどの字化けはどうやって回避しているの?
こちらはあきらめてLC_ALLをCにして使っています。
404132人目の素数さん:2007/10/01(月) 18:57:40
>>401
オープンソースの文化では、いいだしっぺの法則というのがあります。
> RはGUI機能がまともではない
不満ならあなたが作りなさい。
> RSiteSearch("widget")

私は不満ではないです、っていうか、Rcmdrみたいなのならいらん。
405132人目の素数さん:2007/10/04(木) 15:06:57
現在PHPで解析結果閲覧画面を作ってます。
ページ閲覧中に、Rを再呼び出しして、再び解析を行い、ファイルを生成したものを画面表示したいのですが

<?php
system("R < rscript.R");
?>
としましてもうまく動いてくれません

ためしに書き出す先のパーミッションを777にしてみたり、パスをすべてフルパスに記述し直したりもしたのですが
うまく動きません

PHPの話題も織り交ざってますが、識者の方回答のほうよろしくおねがいします。
406405:2007/10/04(木) 15:18:35
自己解決しました。ありがとうございました。
407132人目の素数さん:2007/10/04(木) 15:22:31
↑騙りです
引き続き回答よろしくお願いします
408132人目の素数さん:2007/10/04(木) 18:15:19
エクセルVBAからRの関数を利用する方法はありますか
409774ワット発電中さん:2007/10/05(金) 01:54:25
RExcelの関数がVBエディタから使えるかも知れない。
410132人目の素数さん:2007/10/05(金) 12:45:29
>>405
そもそもそのWebサーバのターミナルで R < rscript.R が期待通りになる?
411405:2007/10/05(金) 12:58:39
モチロンそうよ!
412132人目の素数さん:2007/10/07(日) 11:18:26
貧乏な基礎医学系はともかく、臨床でIFの高い論文誌だとSASかSPSSじゃなきゃ
通用しないみたいな印象があるんですが、臨床疫学論文でR使ってもアクセプトされるんでしょうか?
413132人目の素数さん:2007/10/07(日) 12:17:55
ソフトのせいにすんなよw
414132人目の素数さん:2007/10/07(日) 23:31:23
>>412
別に問題ないが、医療機器買う金ある所なんだからS−PLUS位は買えばいいと思うし
必要なら有償の追加パッケージも購入すれば楽だ。
それだけの費用出してもらったら研究にもプレッシャーがかかってモチベーション上がるし。

結果だけが必要ならわざわざ無理してRを使う必要はないと思う。
415132人目の素数さん:2007/10/08(月) 03:30:39

せっかくRExcel入れたけど、R Startさせるとマクロの文字列関数のとこでボロボロに落ちる
Left$やMid$が使えねえってどういうことだ? 文字コードが対応してないのかなあ。
416132人目の素数さん:2007/10/09(火) 01:40:15
EXCELの対応バージョンがあるみたい私も出た
2003はどのREXCELで対応してるのか誰か教えてください
417132人目の素数さん:2007/10/12(金) 15:38:54
418132人目の素数さん:2007/10/12(金) 15:42:56
クリップボードからコマンドを一気にRにコマンドを入力したときに、
文字(データ300個×42項目)がゆっくり入力されてしまい、かなり時間が掛かります。
何かよい方法はないでしょうか?
419132人目の素数さん:2007/10/12(金) 21:21:22
使いやすいように
早く改良しろよ!
420132人目の素数さん:2007/10/13(土) 05:56:35
>>418

普段使いでない入力用機械を一台用意する。

クリップボードからではなく、ファイルから読み出すようにする。
421132人目の素数さん:2007/10/13(土) 21:22:36
以下のようなデータがあるファイルがあるとき、

2005-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])
などという変換は必要でしょうか。
もしくは何か意味があるのでしょうか?

どうかよろしくお願いします。
422132人目の素数さん:2007/10/14(日) 01:46:51
421です。
というか、質問したかったのは、as.XXX という
変換ってなんのためにあるのでしょうか?
as の意味がよくわかりません。C言語でいう
キャストみたいなものでしょうか?
でも、無しでもなんとなくできてしまいそうな感じがするので、、、、
423132人目の素数さん:2007/10/14(日) 12:19:33
関数によってはfactorが存在しないデータセットは受け付けない場合もあるし、
逆にStringやfactorが入っていると動かないものもある。

as.Dateは使った事ないが、
関数の中でDate形式だけに特化した機能を持たせるor厳密な設計がされている場合は必須になる。
>421の2列目のnumericに関してはis(tbl[2])でnumericなら不要だろ。
424132人目の素数さん:2007/10/15(月) 09:02:50
>>423
ありがとうございました!
なるほど、as.Dateがどういう意味なのか分かったような
気がします。とりあえず、もともとついていたので、as.Date
はつけて、as.numericは外してやってみようとおもいます。
425132人目の素数さん:2007/10/16(火) 15:37:11
いまRの関数の書き方を勉強してるのですが、
適当な数字を10個返す関数を作るとき、print()を
使うと画面に表示はされますが、返り値としては
扱われませんでした。

samp = function(x) {
for (i in 1:10) {
print(x)
}
}
これってどのように書くべきでしょうか
426132人目の素数さん:2007/10/16(火) 16:32:22
samp = function(x) {
a = 1
for (i in 2:10) {
a = c(a,i)
}
a
}
こう書いたらできたけど、正しいですか?
427132人目の素数さん:2007/10/17(水) 07:01:46
426です。これはseq()とかを使わずに書こうとしたものです。
どなたかお教えください。
428132人目の素数さん:2007/10/17(水) 07:17:53
429132人目の素数さん:2007/10/17(水) 07:48:37
>>428
ありがとう!
カスと言われても全然いやじゃない。とてもうれしいよ、そのリンク先。
430132人目の素数さん:2007/10/18(木) 08:59:17
foo <- function(x) {
if (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以上なので,最初の一つだけが使われます

431132人目の素数さん:2007/10/18(木) 09:09:05
>>430
foo()以前に、plot(0,-1,1)でエラーになる時点で気づけよ
432132人目の素数さん:2007/10/18(木) 09:40:51
>>431
でもplot(sin,-1,1)ができるのに、定数関数が描けないのはなんで
でしょうか?
というか、foo()をプロットする方法はないでしょうか。
foo(1:10)とかやってもダメでした。
(sin(1:10)はできた。)
どうかお教えください。
433132人目の素数さん:2007/10/18(木) 11:26:11
>>432
自己レスです。
わかりました。ベクトル化ということですね。
foo <- function(x) {
temp <- function(x) {
if (x == 0) {return(1)}
else {return(0)}
}
sapply(x,temp)
}

と書けばplot()できました。
434132人目の素数さん:2007/10/18(木) 13:46:14
質問です。
R にはマルチスレッドを扱う機能はあるのでしょうか?

JavaのWEBアプリから呼び出そうかと思っているのですが、呼び出すたびに新し
いプロセスが立ち上がってしまうと、リソースを食いすぎて困ると思いますの
で、何とか一つの環境で複数のスレッドを実行させたいのです。
435434:2007/10/18(木) 16:54:57
自己レスです。過去ログにこんな記述が。
RVPMを調べてみます。

http://science4.2ch.net/test/read.cgi/math/1062650510/561
R本体にはスレッドコントロールをするAPIはないような感じ。
マルチスレッド版のBLASを使うぐらいか。
R-helpにはRVPMっていう名前がでてきたけど、ぐぐってもひっかからない...
436434: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のプロセスで処理するのは、無理ということかなあ。
437132人目の素数さん:2007/10/18(木) 19:02:01
MPIでもPVMでもいいが、プロセスレベルで並列化してもいいんじゃん。snowとかつかえば簡単ぽいし。単にマルチスレッドのJavaプログラムからブロッキングなしでよびたいだけならRSOAPだっていいし。
438132人目の素数さん:2007/10/18(木) 19:29:32
>>433
Rをさわり始めた頃の自分を見ているようだ
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
439434:2007/10/18(木) 21:16:44
>>437
> 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自体をマルチスレッドで動かす機能があるのでしょうか?
440132人目の素数さん:2007/10/19(金) 07:22:04
マルチスレッド化考える前に、1つのスレッドでどの位データスペース消費するか考えるほうが先じゃねえ?
実メモリにワークスペース置ききらないマシンに実行させても嬉しくない気がする。
441132人目の素数さん:2007/10/19(金) 09:37:23
>>438
自分はC++はそこそこ使えて、schemeはなんとか読めて、というくらいなのですが、
Rは両方のいいとこをとったような文法と、ライブラリが充実してるのがいいです。

ifelseはベクトル化されているからそっちを使えということですよね。
ありがとうございます。


442434:2007/10/19(金) 12:24:27
>>440
一つ一つのスレッドは、せいぜい50X50の行列を解くだけなので、そんなにメモ
リは食わないはずなんです。少なくとも25MBは行かないと思う。
443132人目の素数さん:2007/10/19(金) 18:40:57
処理内容がわからないのであてずっぽうですが
そのくらいだったら直接R使わないで一旦行列演算ライブラリでマルチスレッド化したほうが良くないかな?
その結果をユーザースレッドID付きでRのデータスペースに戻してきてRで処理した方が効率的な気がする。
まあ作る手間とのトレードオフだけど。
444132人目の素数さん:2007/10/20(土) 02:01:14
>>443
そうですね。全部Javaで済ませることも検討します。
445434:2007/10/20(土) 02:02:16
失礼、名前欄が抜けてました。
446132人目の素数さん:2007/10/20(土) 22:08:31
スクリプト書くとき
自動補完してくれる機能はないのですか?
447132人目の素数さん:2007/10/22(月) 17:18:56
>>446
そのためのess
448132人目の素数さん:2007/10/22(月) 22:37:13
>>447
あれ?なんで俺が・・・?
449132人目の素数さん:2007/10/24(水) 10:18:34
2x2行列がxy平面上の点をどう動かすかを図示するスクリプトを
書こうと思ってます。そこで質問なのですが、plot()で線分を表示する
のってどうやればいいですか?
450132人目の素数さん:2007/10/24(水) 11:15:36
>>499
add=TRUEでもlines()でも好きなのを使え
451132人目の素数さん:2007/10/24(水) 11:32:37
>>450
ありがとうございます。でもlines()でうまくいきません。
c(1,1) -> c(3,4)
c(1.1,1.1) -> c(4,5)
...
という感じの点から点への対応のリストがあって、これを図示したいのですが、
lines()って点を2つ与えると線をかいてくれるのですか?


452132人目の素数さん:2007/10/24(水) 14:07:32
>>451
> plot(runif(10)*10,runif(10)*10)
> lines(c(1,3),c(1,4))
> lines(c(1.1,4),c(1.1,5))
普通に線を引けるけど。
453132人目の素数さん:2007/10/24(水) 14:23:26
>>452
ありがとう。たしかに452が書いてくれた順序でやるとlines()も動きました。
でも、plot()よりも先にlines()を実行すると、lines()が正しく動きませんでした。

> lines(c(1,3),c(1,4))
以下にエラー plot.xy(xy.coords(x, y), type = type, ...) :
まだ plot.new が呼ばれていません

とか出ます。
でもとりあえずこれでできそうなので、やってみます。
ありがとうございました。
454132人目の素数さん:2007/10/24(水) 23:05:55
CSVデータ読み込みについて。
形が不規則でちゃんとした四角形になって
ないとき全データを含んだ
Matrix型にしたい(所々の空白はNA)
んだけどどうしてもできない
なにかよい方法は?
かなりの大きさだし
縦横の大きさは前もって決めておきたくない(なぜなら数知る必要があるから)
あくまでソフト側で自動で判別できてくれて
全データを含んだMatrix型がほしい
どうすればいいのか?
455132人目の素数さん:2007/10/24(水) 23:18:31
>>454
先にExcelで整形しておいてRExcel使え
456454:2007/10/25(木) 18:05:38
RExcelエラーでまくり
マクロの文字列関数がおかしい
Excel2003で最新のやつインスコ
してこれだ
完全に>>455にだまされた
457132人目の素数さん:2007/10/25(木) 18:40:13
3群のnon-parametricなdataが有ります。
これをpower analysis出来ますか?
458132人目の素数さん:2007/10/26(金) 05:16:49
>>454
そういうケースならcsvを直接読み込むんじゃなくて、sdf(固定長)に変換
してからread.table()にすれば?俺ならCPANにあるText::CSV_XSまたは
Text::CSVのお世話になるな。もし、与えられたデータ形式がCSVという
縛りがないなら、最初からsdfを使った方がいいんじゃね。

もし、文字列データの中にカンマを決して含まないとか、ごく単純なCSVに
限定した話なら、Rだけで何とかなるけどね。
459132人目の素数さん:2007/10/26(金) 06:08:50
>>455-456
おまえらカスだな。
RExcelだめなのは>>415-416で既出だろ。
460132人目の素数さん:2007/10/26(金) 08:34:50
質問させて下さい。
グラフを上下逆転表示したいのですがそのようなコマンドはありますか?

仕入値、売上値を同時にグラフ表示するのですが重なってしまって見難いので
仕入値は下から上に向かって正
売上値は上から下に向かって正
というようにしたいのですが・・・

ちょっと考えたのは、売上値の最大値から各売上値のデータを引き算したデータを作って
それを描画するという事なんですが、もう少し簡単な方法がないかと・・・
461132人目の素数さん:2007/10/26(金) 17:03:25
>>460
折れ線か棒グラフか?棒グラフの1つのカテゴリーを逆さにするのはアリだと思うけど、
折れ線グラフだと、そんな変な図はかえって見にくいと思う。
462132人目の素数さん:2007/10/27(土) 18:58:04
レスありがとうございます。
par(new=T)してplotで点として描いてるんだけど、点の数が数万〜数十万になるので前に描いたグラフが新しく描かれたグラフの下に消えてしまい・・・上下逆転できればいいなと思いまして。
463132人目の素数さん:2007/10/28(日) 12:41:43
複数個のデータフレームからなるリストがあって、そこに新たに
データフレームを追加したいとき、どうすればよいですか?
list <- c(list, data_frame)
とするとlistが変になってしまうし、

list==> (df1, df2, df3, df4)
データフレームを追加
list==> (df1, df2, df3, df4, df5)
となってほしいのです。どうかよろしくお願いします。
464132人目の素数さん:2007/10/28(日) 12:53:08
>>463

x <- list(NULL, NULL, NULL, (目的の数だけ))
としておいて、
x[[i]]としてアクセスする、

とできますが、これだと追加ができないのと、NULLの数が増えたときに
Rの中だけではスクリプトを作成できない(難しい?)です。
今はemacsのマクロでやってます。


465132人目の素数さん:2007/10/28(日) 19:07:28
>>463,464
ん?
list <- data.frame(list, new_data_frame)
ってだけじゃない?
466132人目の素数さん:2007/10/29(月) 03:56:37
>>465
ありがとうございます。
そうやると、データフレーム同士のデータが混ざってしまって
うまくいかないようなのですが。。。
とりあえず今はl <- list(NULL, NULL, .......)というのを手動で作成して
l[[i]]という感じで使っています。
467132人目の素数さん:2007/10/29(月) 04:13:20
>>466
l <- 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
とすればよいだけ。
468132人目の素数さん:2007/10/29(月) 19:41:20
>>466
混ざったらだめだったんだね…。
ならば
list <- c(list,list(data_frame))
ではどう?
469132人目の素数さん:2007/10/30(火) 09:32:35
>>468
よくそんなの思いつくな。感心した。
470132人目の素数さん:2007/10/30(火) 10:13:23
>>468
すげえ、、、、できました!
ありがとうございます!

でも、なんかトリッキーな感じですね。
471132人目の素数さん:2007/10/30(火) 12:23:07
みんな、よくそんな難しい方法を考え付きますね
lst<-list()
lst[[1]]<-data.frame(x=1:10,y=runif(10))
lst$df2<-data.frame(x=1:10,y=runif(10))
472467:2007/10/30(火) 13:03:39
>>470
>>471と同じく>>467の方法が正当派だと思うんだけど。。。
説明が回りくどかったのか?>>468の表記をまねれば、
番号なら、
list[[length(list)+1]] <- data_frame
名前付きなら、
list$hoge <- data_frame
473132人目の素数さん:2007/11/03(土) 20:40:15
>>336
業界によるということは、重回帰分析を時系列のn+1番目の値の予測には
使わない>>334使うはその業界の慣習に過ぎず、当否の理論的裏づけは
ないのですね?
474132人目の素数さん: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)行列を生成するようなもの。
475132人目の素数さん:2007/11/06(火) 00:33:59
何がしたいのか分からんが、
AtamaTsukaeTako<-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

こんなんか?
476132人目の素数さん:2007/11/06(火) 13:04:30
>>475
ほんとに純粋な疑問なので気分を悪くしないで欲しい。
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
477132人目の素数さん:2007/11/06(火) 23:18:08
山形浩生が頼みごとをしている。
http://cruel.org/other/rumors2007_2.html#item2007110501

> 求む求むウェーブレットのグラフ (eps形式)! メキシカンハットと
> Meyer. ファンシーなものは不要で、リンク先にあるのと同じ単純なものを
> eps 形式でいただければ幸甚。形式そろえたいのでセットでくださいな、と
> いうより両者を左右ならべて(メキシカンハットが左)横長のeps一本にし
> てくださいな。matlabかなんか持ってる人は一瞬で出るでしょ。

本に名前を載せる、または R の名を売るチャンスか?
478132人目の素数さん:2007/11/06(火) 23:21:53
>>476
出力を明確にする。
デバッグが容易。
個人的趣味。

そんだけ
479132人目の素数さん:2007/11/10(土) 15:05:04
ちょっと、技術的な話になりますが、
詳しい方教えて下さい。
残差にAR(1)過程を仮定したFGLSってこのソフトでどのようにやるのかご存知の方はいらっしゃいますか?
480132人目の素数さん:2007/11/11(日) 06:53:12
関数名を()なしで実行するとそのソースが見られますが、
その中にで出てこない変な名前の関数があります。
これってどこをみれば実装がみられますか?
481132人目の素数さん:2007/11/11(日) 08:33:34
>>480
Rのソース

パッケージならパッケージのソース

そのソースがありませんとか言うなよw
482132人目の素数さん:2007/11/11(日) 12:47:15
.Primitiveとかどうしてくれんねん!w
483132人目の素数さん:2007/11/11(日) 13:57:02
指数表示(4e+8)を整数表示にするにはどうすればいいのでしょうか?
少数は含んでいないのでoptions(digits=10)では対応できないみたいです。
484132人目の素数さん:2007/11/11(日) 14:54:35
そんなのが必要な状況の方が異常な気がするが。
何やりたいの?
485132人目の素数さん:2007/11/11(日) 15:15:35
特に何がやりたいわけではないのですが、
400,000,000 を整数表示するのは異常ですか?

指数表記だと落ち着かないんですよね。
486132人目の素数さん:2007/11/12(月) 05:02:15
>>481
ありがとう。
bootライブラリのソースをダウンロードしてくるとその中にありました。
linuxのrpmでinstallした場合って、ライブラリについてはバイナリしか
installされないみたい。
なんかバグっぽいのがあるので(単なる勘違いの可能性も十分あり)ソースを
見てみます。ありがとうございました。
487132人目の素数さん:2007/11/12(月) 14:22:39
>>486
一般的に、バイナリのrpmをインストールしてもソースは含まれませんよ。
ソースが必要ならsrc.rpmの方をダウンロードしないと。
488132人目の素数さん:2007/11/12(月) 16:37:20
すみませんが、質問です。

Windows版の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です。
489132人目の素数さん:2007/11/12(月) 16:59:30
>>488
Windowsのことは全く知らないで当てずっぽうだが、Rのオプションしては、
初期ファイルへのパスが通っていないと予想。プロットされてないのは、X
window systemがインストールされていないまたはきちんと設定されてな
いないと予想。
490488:2007/11/12(月) 20:25:47
>>489
ありがとうございます。

初期ファイルへのパスですが、Cygwin環境のパスは、Windows標準のコマンド
プロンプトのパスにいろいろ付け加えたものなので、パスが通っていないとい
うことは考えにくいのです。

X Window についてですが、Windows版の R は、Cygwin環境から起動すると、そ
れを自分で判断して Xクライアントになるということでしょうか?かなり驚き
です。
確かに私は CygwinのX環境は、使うつもりがないのでインストールしていませ
ん。R にはCygwin環境からでも、通常のWindowsソフトとして起動してもらい
たいものです。何か起動オプションがあるかと思いましたが、見つかりません
でした。
どうしたものかなあ。X環境はかさばるので、できたら導入したくないのですが。
491132人目の素数さん:2007/11/12(月) 21:58:14
>>490
Windowsのコマンドライン用にも関わらず、
Cygwinでコマンドを呼びだすとLinuxふうの環境変数が渡されちゃうからそのエラーが出るのでは?
当然Xクライアントにもならないとオモ

やるとしたらCygwinのbashでWindowsのアプリケーションを明示的に呼び出す方法があれば使うくらいじゃね?
492132人目の素数さん:2007/11/12(月) 23:11:49
あれ、>>485って答えるに値しないぐらい基本的な質問ですか?(汗
493132人目の素数さん:2007/11/12(月) 23:21:48
>>490
自分のところで試したら普通に動いたけど…。
Rのバージョンはいくつ?こちらは少し古くて2.2.1だけど
CygwinのbashからRと打つだけで動いてplotもできたよ。
Xウインドウ環境は入れてないよ。
パスはWindowsの方の環境で設定されてるよ。
494488:2007/11/12(月) 23:22:16
>>491
ありがとうございます。分かりませんが、おそらくそれで正解のような気がし
ます。問題は、もう私の今の技術力では解決不能ということです。うう...。

とりあえずは諦めて、Windows標準のCMDから立ち上げます。ありがとうござい
ました。
495488: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を離れます。失礼します。
496488: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
497132人目の素数さん:2007/11/13(火) 20:10:41
試したのはまさにplot(1:10, 1:10)です。
Cygwinの方に問題があるのでしょうかねえ。
こちらのものはだいぶ前に入れたので古いです。
たとえばbashのバージョンは2.05b-16でした。
(今は3.2.25-17なので相当古いですね…。
古い方がうまく動くとかでしょうか?)
498488:2007/11/13(火) 22:20:43
>>497
ありがとうございます。

ちょっと分かりませんが、やはりCygwinから起動するとXクライアントになっ
てしまうのかもしれませんね。
まあ、それっぽい情報はぜんぜん見つからないのですが。

他に最新のCygwinとRをお使いの方はいらっしゃいませんか?
もしかしたら、ESSを使えば問題ないのかな、と思ったりしますが。
499132人目の素数さん:2007/11/13(火) 22:49:03
R project's GNU R for Maemo - Theory of Measurements Wiki
ttp://kavaro.com/mediawiki/index.php/R_project%27s_GNU_R_for_Maemo
動くのかしら?
500132人目の素数さん:2007/11/14(水) 09:53:31
>>498
ESSも多分ダメだろw
ありゃshellだから。

ESSならMeadowでやるとすんなり使えるけど。
501132人目の素数さん:2007/11/14(水) 09:59:47
自由度=i、P=0.05 のカイ二乗境界値を求める
コマンドって無い?
(所謂、統計本の巻末に載っているようなカイ二乗値の
 表で任意の自由度、危険率の境界値が得たい)
これって自分で式を組まなければいけないのでしょうか。
502488:2007/11/14(水) 14:41:47
いろいろ参考リンクを見つけてきました。

cygwinで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をインストールする
503488: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) 記事ですが。


ますます分からなくなってきました。
504132人目の素数さん:2007/11/14(水) 19:38:14
計算結果を小数点以下までずらずらと表示させたいのですが
どこの設定で変えれるのでしょうか
R 2.2.0を使っています
505132人目の素数さん:2007/11/14(水) 19:59:16
>>504
options(digits=好きな数字)
506132人目の素数さん:2007/11/14(水) 23:15:25
>>505

>>485はどうでしょう?
507132人目の素数さん:2007/11/14(水) 23:38:22
>>506
自分は詳しくないんでアレだけど、
もしかしたら >>393->>396 の多倍長整数ライブラリしかないかも。

もしそうなら結構不便ですね。
この辺はPythonでNumpyとかを使ってた方が楽だった。
508132人目の素数さん:2007/11/15(木) 00:21:07
>>507
ありがとうございました。
ちょっと不便ですね。
509132人目の素数さん:2007/11/15(木) 00:58:34
>>503
まだ解決しないんですね…。
CygwinからRguiと打つとWindowsのRは起動するのでしょうか?
それともそれもだめなのでしょうか?
また、起動オプションで--no-saveだけで動くなら起動時に
画面に無保証であるとかの文言は日本語で出るのでしょうか?
510132人目の素数さん:2007/11/15(木) 01:06:51
CYGWIN側でパスを通してないんじゃないでしょうか
511488:2007/11/15(木) 01:22:06
みなさん、ありがとうございます。

>>500
Meadowは重くて、あまり好きではないのです。

>>509
> CygwinからRguiと打つとWindowsのRは起動するのでしょうか?
これはちゃんと起動します。plot(1:10, 1:10)も問題なく実行できます。

> また、起動オプションで--no-saveだけで動くなら起動時に
> 画面に無保証であるとかの文言は日本語で出るのでしょうか?
はい、日本語でちゃんと出ます。

>>510
パスが通っていなければ、そもそもエラーどころか起動しないのでは?
Rguiは問題なく起動できますし。
512132人目の素数さん:2007/11/15(木) 01:29:26
そだね
でもなんでRGUIをcygwin経由で呼び出すのかがわかりませんですね
513132人目の素数さん:2007/11/15(木) 01:30:00
LIBが通ってないのでは?
514132人目の素数さん:2007/11/15(木) 02:39:05
>>512
パスがちゃんと通っているかの確認だけ。

さて、Cygwinをバージョンアップしてみたが、Rは問題なく動いた。
(Rは2.2.1のまま)

>>513
setで見る限りLIBの設定などないのだが、ちゃんと動いてる。

さらで入れるのとバージョンアップでは何か違うのか?それとも他の原因か?
515132人目の素数さん:2007/11/15(木) 03:07:43
cygwinでexportしてないんじゃないのLIB関係のディレクトリ
setってwindowsのほうの話でしょ
516132人目の素数さん:2007/11/15(木) 03:15:39
ひょっとして
bashのスクリプトファイル作らずに単純にCygwinからコマンド入力してるだけ?
517132人目の素数さん:2007/11/15(木) 09:21:46
>>501

qchisq(0.05,i)
518132人目の素数さん:2007/11/15(木) 09:28:35
>>511

とりあえず、bashから
$ export
で出る環境変数一覧、晒してみては?
ただし、個人情報が入る可能性もあると思うので書き込む際は慎重に。
519132人目の素数さん:2007/11/15(木) 09:42:27
>>515
exportでもほとんど同じ。LDに関するものはなし。
さて何が問題なのやら。
520501:2007/11/15(木) 09:46:46
>>517
初心者の質問なのにありがとー。
おかげで助かりました。
521505:2007/11/15(木) 09:52:48
>>506
見落としてた。すまん。
> 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の方が歓迎されることには同意。
522488: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 と入力し、ターミナルモードで起動する
> ことも出来ます。

とあるので、シェルスクリプトなど必要ないと思っていました。
523132人目の素数さん: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
524132人目の素数さん:2007/11/15(木) 14:47:10
>>523
やりたいことがよくわかんない。
> 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
↑これを計算しているだけに見えるんだけど。
525524: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
526132人目の素数さん:2007/11/15(木) 15:04:37
>>524,525
ありがとうございます!
なるほど、、、ついついforループ等で回して、
などという処理を考えてしまったのですが、
a[2:7]/a[1:6]
というのは全然分かりませんでした。
527132人目の素数さん:2007/11/15(木) 15:33:24
Cygwinにwindowsのpathは自動的には渡されないので
コマンド入力による起動はただの偶然でしょうね
bachでしっかりpathを設定してexportするだけで問題は解決するんじゃないでしょうか
528132人目の素数さん:2007/11/15(木) 15:56:22
試しにRとRGUIをPATH設定しEXPORTした上で起動しましたが問題なく開きます
R2.5.0 Cygwinは最新版ですね
plot(1:10,1:10)も問題なく開きます
ただしENTERキーのテンキー側は使えなくなるようです
これはプログラム上の問題でしょうかね
529132人目の素数さん:2007/11/15(木) 16:12:10
最後に考えられるのは権限の問題ですね
RやCygwinにアクセスする権限を持っているでしょうか
530528:2007/11/15(木) 16:17:16
おそらく、それらにアクセスするための明確な権限はもっていないと思われますが、
それがこの問題を引き起こす根本的な原因なのかははっきりと断言できません。
531488: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 なのに、問題なく立ち上がるので、
関係ないのかもしれませんが。
532132人目の素数さん:2007/11/15(木) 16:30:36
Cygwinの仕様でRootが/usrになります
mountで調べると良いでしょう
cygwin内にインストールしていなくても/cygdrive/以降に通常のディレクトリを入れて
PATHを通せばCygwinからアクセスできます
533488:2007/11/15(木) 16:38:14
>>532
すみません、確かに関係ないようですね。失礼しました。
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'
534132人目の素数さん:2007/11/15(木) 21:02:47
通りすがりです。
R も 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 に詳しい人のところに行って
質問するほうが良いかも知れませんね。
535132人目の素数さん:2007/11/15(木) 21:05:28
オプションつけずにそのエラーが出てるんだからちがうべ
536132人目の素数さん:2007/11/15(木) 21:10:36
>>535
だからさ。

・オプションを付けずに実行するとエラーが出る。
・オプションを付けて実行すると動くことは動くがグラフは表示されてない。

というんでしょ。 tty の勘違いの典型例。
537488:2007/11/15(木) 22:27:33
>>234->>236
ありがとうございます。

確かに、Rterm --save で plot(0:10, 0:10)を実行したところ、
カレントディレクトリに Rplots.ps というファイルが出来ていて、
GostScriptで開いたところ、まさにそのグラフのPostScriptファイルでした。

isatty はよく知らないので、ちょっと勉強して考えてみます。
538132人目の素数さん:2007/11/15(木) 22:44:19
>>537
あ、いや、isatty というのはプログラムの中から呼び出す C のライブラリ関数なわけで。
知らないなら知らないでもいいかと。

問題点は

「R がリダイレクト (<のこと) ではないのに、リダイレクトと勘違いをしてる」

というところにあるかもしれない、ということだけ理解していただければ。

ちょっと調べてみたら cygwin を使う人は emacs を動かすとき

$ CYGWIN=tty emacs

とするらしい。これでうまく動くかどうかは望み薄かもだけど、
そういうふうに環境変数の設定でなんとかできるかも知れません。
上の方で cygwin + R が上手く動いているというかたがおられるようなので、
お願いしてみて、環境変数を付き合わせてみるというのも一つの手カモ。
539132人目の素数さん:2007/11/15(木) 22:51:46
postgreSQL用に使ってたからCygserverとか動くようになってるけど関係あるかな
540132人目の素数さん:2007/11/15(木) 22:55:48
今 ググったら cygserver のクライアント側では

export CYGWIN=servere

の設定をするとあるね。2004 年ごろの日記だったけど。
541132人目の素数さん:2007/11/15(木) 23:02:53
>521

ttp://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を使うしかないだろう。

だそうですよ。
542132人目の素数さん:2007/11/15(木) 23:39:09
>>522
Cygwinの起動方法が違うのかも。
こちらはPuTTYではありません。
よく知らないのですが、バッチファイルで
bash --login -i
というように起動しています。
543132人目の素数さん:2007/11/15(木) 23:43:27
大元の発言,400000000をそのまま表記したいと言うこと?
as.integer(400000000)
でもいいだろうし,最近のバージョンだと
400000000L
でいいじゃない?
発言の糸川からぬ。
> x <- 400000000L
> x
[1] 400000000
> as.integer(400000000)
[1] 400000000
> 400000000L
[1] 400000000
544132人目の素数さん:2007/11/15(木) 23:51:29
今時 R-2.2.0 とは,時代遅れもはなはだしい
545132人目の素数さん:2007/11/16(金) 14:32:36
Rjpwikiに「整数表記できる最大の数値」を書き込んだ人はここを見ているな。
546132人目の素数さん:2007/11/16(金) 20:09:05
>>544
まあ確かに時代遅れだな。でもメインに解析に使うマシンではないので
基本的なことができればいいからな。
Rはインストールする度にパスの変更が必要になるので手軽に
バージョンアップしにくいんだよね。
(それでも必要なマシンはバージョンアップするけど)
547132人目の素数さん:2007/11/17(土) 22:20:22
点を、(x1 x2)∈[-5,5]×[-5,5]の範囲に1000個、図示したいんですが、Rだとどうやってできますか?

x1=seq(-5,5,len=1000)
x2=seq(-5,5,len=1000)
plot(x1,x2)

みたいにしたんですが、1次関数みたいになってしまった、欲しいのと違います。

・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・

こんな感じにしたいのです
548132人目の素数さん:2007/11/17(土) 23:48:20
>>547
理論的には

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ならほとんどまっくろになると思う。
549132人目の素数さん:2007/11/18(日) 00:01:50
>>548
実は、2変数のnewton法で、初期値に対する収束値の関係を2次元で図示(どの値に収束するかを色等で明示せよ)するっていうレポをやってるんです。

問題では、(x1 x2)∈[-5,5]×[-5,5]の範囲に10000個初期値をとってやるんですが、その10000個に対する収束値はプログラムで求まってます。


これってどんな風に図示したらいいんですか?収束値によって初期点を色でわけるっていうのを考えたんですが、いまいちうまくかけません。

プログラムの結果は

初期点  収束値
-5 -5 x1 x2





5 5 x1 x2

みたいにテキストに保存されてます。

ちなみに収束値は解いてるのが2次なんで、2種類しかないです
550132人目の素数さん:2007/11/18(日) 01:44:42
収束値で色分けするので何が問題なの?
プロットの問題ではなく色分けの仕方が分からないの?
551132人目の素数さん:2007/11/18(日) 12:02:22
>>550
そうです!
552132人目の素数さん:2007/11/19(月) 00:02:50
Rで2変数関数のプロットをするにはどうするんですか?
たとえば
x1^2+x^2=6

とかの円をかきたいんですが
553132人目の素数さん:2007/11/19(月) 20:11:05
>>551
色分けって
plot(iris[,1],iris[,2],col=ifelse(iris[,5]=="setosa","red",ifelse(iris[,5]=="versicolor","blue","green")))
のこと?
554132人目の素数さん:2007/11/19(月) 21:34:54
>>552

> 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)

なかなか興味深い。
555132人目の素数さん:2007/11/20(火) 00:38:17
>>554
きれいにつなげようと思ったら
x <- (-20:20)/20*sqrt(6)
y <- sqrt(6-x^2)
plot(c(x,-x),c(y,-y),type="l")
だな。
556132人目の素数さん:2007/11/21(水) 18:11:16
>>488
bash@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を混在させて使うときに頭が痛い問題な
のよ。
557かげちよ:2007/11/24(土) 00:42:28
(;'ー`)cygwin portsにRのコンパイル済みパッケージがあるぞ
558132人目の素数さん:2007/11/24(土) 16:58:17
>>556
あるのは知ってるけど、意図的に使ってない。
559132人目の素数さん:2007/11/24(土) 18:19:46
あっそ、意図的にねえ
そりゃよかったね
560132人目の素数さん:2007/11/25(日) 00:03:38
意図的ってなんで?
多分Cygwin用に何か足されてると思うけど
561132人目の素数さん:2007/11/25(日) 14:28:43
aparchFitがfSeriesの中に入ってないのですが
どうやったら使えるのですか?
562132人目の素数さん:2007/11/25(日) 16:24:05
cygwinはなるべく使いたくないということだけだよ。
vmware+ubuntuの方でも使ってるけど。cygwinって、

コンパイル速度を見てても遅いんだよね。windows(without cygwin)
版とcygwin版との比較はしてないけど。あとは、vistaでx11が使えな
いという問題もあるが。
563132人目の素数さん:2007/11/25(日) 16:27:03
windows版インストーラーはversion 2.6.0なんだよね。
564132人目の素数さん:2007/11/25(日) 16:40:58
(;'ー`)つーか、Rだのscilabだのlinux由来のアプリ突っ込むときは
C直下にbinだのディレクトリ作ってそこにインストールするけどねえ
ディレクトリ名でけっこう問題出るし
そういうアプリを使うときはcygwinのshellから叩くと一緒に扱えて便利だなあ
565132人目の素数さん:2007/11/25(日) 16:48:24
>>564
うん。cygwinとwindowsってその辺がイライラする問題だよな。
だから、基本はvmware+ubuntu+emacs(ess)でやってる。ディス
クアクセス以外はほとんど速さが変わらないから。unix系はunix
上の方が安心して使えるわ。
入れ方は簡単で、vmware playerとubuntuの日本サイトからvmware
用の仮想ファイルを取ってくればそれでおしまいです。そこから、
sympaticを使ってインストールすれば2.5になるし、ソースからコン
パイルするもよしです。
566132人目の素数さん:2007/11/25(日) 21:15:52
colinuxからntfsマウントして自由に出来ればな
あれ、まだハンパだから
567132人目の素数さん:2007/11/26(月) 10:37:30
colinuxはまだ成熟してないと思ってたから導入は見合わせていたけど、
vmware player + ubuntuの組み合わせでさらに便利にするのはvmware tools
を導入することかな。ちょっと敷居が高いけど、ここまでできれば、
windows/ubuntuでドラッグ&ドロップ、カット&ペーストができるようにな
る。マウスカーソルの移動も全く問題なくなるし。windowsのアプリの一つと
してubuntuが使えるね。大体320M~512Mあればかなり余裕なんで、windows
vista+2Gの環境ならば余裕がある。vmware tools の導入方法は調べたら紹介
してるところが多いから見てみればいいです。
568132人目の素数さん:2007/11/26(月) 10:42:41
320〜512MというのRAMの設定ね。わかりにくい書き方だった。
ちなみに、メモリ1Gの環境+windowsならば320Mで十分だよ。
設定ファイルを少し書き変えなきゃいけないと思うけど。
569132人目の素数さん: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は買っていません。
570132人目の素数さん:2007/11/26(月) 21:24:55
>>569
Iは良い本だよ。
IIも買う予定。
571132人目の素数さん:2007/11/27(火) 02:47:51
>>570
レスありがとうございます。
レビューはネットに1つも見つからなかったので、他の方の意見が聞けてありがたいです。
明日もう少し立ち読みして、購入するかどうするか決めようと思います。
572132人目の素数さん:2007/11/27(火) 11:53:30
>>569

正直「九天社が出版している」ってだけで止めた。
ここは「出したい」って言えば内容の吟味なんか無しで何でも出版する模様。
この出版社の本はろくすっぽ編集が入らない。
従って巻末の索引なんかも出鱈目な場合が多い。
別の出版社から本が出るまで待つ。

何冊も「九天社」の本を買ったことがある経験からの一言。
573569:2007/11/27(火) 12:14:05
>>572
貴重な意見ありがとう。
とりあえず、本屋で1時間ほど株式の時系列解析の項を読んで、
購入を決めた。
また報告に来る
574132人目の素数さん:2007/11/27(火) 12:29:08
>>573
おおよそどんな感じの内容か俺も知りたい。

R関係の本って「Rによる○○統計学」みたいな立派な題名が
ついてても、実際には Introduction to R や R-Tips の焼き直し
みたいな内容のものが多いからなあ。
575572:2007/11/27(火) 12:41:36
結局南極俺様の意見は役に立たなかったわけだな
でも そんなの関係ねぇ
576132人目の素数さん:2007/11/27(火) 12:41:57
>R関係の本って「Rによる○○統計学」みたいな立派な題名が
ついてても、実際には Introduction to R や R-Tips の焼き直し
みたいな内容のものが多いからなあ。

同意。
正直、「R云々」と書いた本買うより、「S PLUS」って書いてある本の方が役に立つ。
R関係の本の出版数が増えたのは喜ばしい事だが、内容的にはまだまだ、だと思う。
「自主制作本」とか「ブログを纏めただけの出版」のレベルは越えていない。
577574:2007/11/27(火) 12:45:22
>>576
そうか、お前もだんだんわかるようになって来たんだな。とうさん嬉しいぞ。
その調子でガンバ!
578132人目の素数さん:2007/11/27(火) 15:56:30
Rでファジー使ったことある人居る?
579132人目の素数さん:2007/11/27(火) 16:05:22
いるアルヨ
580132人目の素数さん:2007/11/27(火) 18:30:02
ファジーのパッケージのドキュメントが今一分かりにくくて使いこなせないんだけど
どこかお勧めの例題あつかってるとことか教えてもらえませんか
581132人目の素数さん:2007/11/28(水) 14:16:25
Rで学ぶデータマイニング読んでいます。
plot3Dを使って、Graph-Rのようなカラー表示できる
方法があったら教えてください。

Grap-Rだと、130万のテータをプロットしたとき
重いし、他のプログラムが落ちることがあり、
移行を考えました。
ただ、今Rで、
> plot3d(y[,1:3], size=5, pch=30)
すると、真っ黒状態で、わかりづらいのです。
582132人目の素数さん:2007/12/02(日) 03:30:53
>R関係の本って「Rによる○○統計学」みたいな立派な題名が
>ついてても、実際には Introduction to R や R-Tips の焼き直し
>みたいな内容のものが多いからなあ。

基本手順がおなじならしょうがなくね?
つーか、Rさえほとんど使ってない奴とかあるよな
583132人目の素数さん:2007/12/02(日) 16:48:48
ブラウン運動をplotしようとして以下の様にやったのですが、
series_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))

584132人目の素数さん:2007/12/03(月) 04:45:12
あと、plot()関数で、y軸のrangeを固定するにはどうすればよいでしょうか
585132人目の素数さん:2007/12/03(月) 07:56:23
>>584
例えば, ylim = c(0,100) でOKかと。
586132人目の素数さん:2007/12/03(月) 08:58:01
>>585
ありがとうございます!
これでブラウン運動を観察しやすくなりました。こんな感じです

for (i in 1:10000) {
plot(series_plus(rnorm(1000)),type="l",ylim=c(-100,100))
}

series_plus()はちょっと前のカキコの関数です。
587132人目の素数さん:2007/12/04(火) 11:14:15
>>586
demo(graphics)
を実行してみた?
588132人目の素数さん:2007/12/06(木) 03:00:41
質問です

ttp://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のどれになるんでしょうか
589132人目の素数さん:2007/12/06(木) 07:25:40
>>588
なぜそれらの数値を使おうと思うのか?
x1とは生データのことだろ。
590132人目の素数さん:2007/12/06(木) 21:18:07
>>587
ありがとうございます。
みてみました。さすがにキレイだ。
cumsum()というのを使えばよかったんですね。
僕は、ベクトルを1つずつずらしながらたし算してしまったけど、、、
591132人目の素数さん:2007/12/06(木) 21:30:55
すいません、また質問です。
linuxのRからplot()の結果を印刷するにはどうすればよいですか?
592132人目の素数さん:2007/12/06(木) 23:10:34
>>591
postscript(file="|lpr")
593132人目の素数さん:2007/12/06(木) 23:35:50
ありがとうございます。
でも、いかのようにしたのですが、プリントされません(泣)
> postscript(file="|lpr")
> matplot(x, type="l")
なにかまちがってますか?

594132人目の素数さん:2007/12/07(金) 07:40:51
>>593
dev.off()
っていうか、入門書を一度読んだ方がよいのでは。
595132人目の素数さん:2007/12/09(日) 06:20:09
統計解析フリーソフト Rの成分解析結果 :

統計解析フリーソフト Rの45%はかわいさで出来ています。
統計解析フリーソフト Rの25%は回路で出来ています。
統計解析フリーソフト Rの18%は陰謀で出来ています。
統計解析フリーソフト Rの7%は魔法で出来ています。
統計解析フリーソフト Rの2%は根性で出来ています。
統計解析フリーソフト Rの2%はスライムで出来ています。
統計解析フリーソフト Rの1%は微妙さで出来ています。
596132人目の素数さん:2007/12/10(月) 12:43:41
>>594
ありがとうございました。
はい、読んでみます。でも、もうちょっとだけ。
Rのコマンドをファイルに書いておいて、それをRで読み込んで実行させるには
どうすればよいですか?
load(filename)とか、やってもだめでした。
597132人目の素数さん:2007/12/10(月) 15:21:17
>>596
load()はデータセットを読み込むコマンドです。Rスクリプトを読み込むには、source()を使います。
本当にマジで、オンライン文書でよいので入門書を読んだ方がよいと思う。または、30分程度誰
かにレクチャーしてもらった方がよいと思う。

ちなみに、普通のRユーザはsource()を使わずに、エディタからRを実行します。

598132人目の素数さん:2007/12/10(月) 19:19:29
>>597
ありがとうございます!
R-tipsとかは読んだんですけどね、、、(読んだつもり?)
本は読むようにします。

> ちなみに、普通のRユーザはsource()を使わずに、エディタからRを実行します。
まわりのRユーザは全員windows版を使ってるのですが、確かにエディタから実行
してました。でも僕はノートパソコンから速めのマシンにsshして、ターミナル内で
Linux版のRを実行しているので、それができませんでした。
なので、教えていただいたsource()コマンドは便利に使えそうです。

ありがとうございました。
599132人目の素数さん:2007/12/10(月) 19:41:28
Mac OS XでRをビルドして行列計算をしたら、オプションには細心の注意を払ったつもりだけど、
バイナリパッケージ(フルパッケージ)の2,3倍遅かった。
不思議な事に、どちらのRを起動しようと(もちろんコマンドラインで./R)、
速さは最後にインストールしたバージョンが何かで決まる。

つまり、本来違うバージョンが共存できることになっているのに、そうなっていない。
どこかの共有部分が毎回上書きされているのか?分かる人いますか?

ちなみに、BLASシェアドラブラリを有効にしてるけど、
ライブラリは個々のバージョンのディレクトリにビルドされていたので、これではないと思う。
600599: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内部の別の汎用ルーチンを使っていたのか?
601597:2007/12/10(月) 20:07:30
>>598
Linuxユーザならなおさらemacs -nw +essを使いましょう。
602132人目の素数さん:2007/12/11(火) 09:31:36
>>598

R-tipsはマニュアルと言うかオナニー本だからwww
編集がロクに入らないと出版物は「寄稿者の自己満」で終わってしまう、と言ういい見本
603132人目の素数さん:2007/12/13(木) 12:39:09
Rでは円や楕円を方程式から直接グラフに表すことはできないのでしょうか
また、円の方程式と楕円の方程式から交点を直接求めることはできないのでしょうか
604132人目の素数さん:2007/12/13(木) 17:50:00
>>603
先日、船○さんが紹介していたRyacasは、もしかすると役に立つのかも知れません。
私は使ったことがないので分かりませんが。
605604:2007/12/13(木) 17:52:50
s/船/舟/
すみません > ○尾さん

606132人目の素数さん:2007/12/15(土) 22:30:05
AR(1)モデルに乗っ取った時系列を発生させるにはどうすればよいですか?
607132人目の素数さん:2007/12/16(日) 01:26:02
単純に x(t) = a*x(t-1) + e(t) ではだめなのか。
608132人目の素数さん:2007/12/16(日) 03:25:41
>>607
あ、そうか。つまり、
cumsum(rnorm(1000))+x0
ということですか?
609132人目の素数さん:2007/12/16(日) 04:04:11
dX(t)=-Φ(X(t-1)-μ)dt+σ dZt
(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で書いたみたい)
610132人目の素数さん:2007/12/17(月) 03:17:41
>>608
それは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みたいのが分かりやすいくていいんじゃないかな。
他に良い方法あるならオレも知りたいが。
611610:2007/12/18(火) 04:32:23
申し訳ない。

ar1 <- 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
}

要素毎アクセスしてるのはやはり気にくわないけど。
612132人目の素数さん: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
}
613132人目の素数さん:2007/12/18(火) 11:09:04
>>610-612
ありがとうございます。
> a <- ar1(0,n=100000)
> ar(a)

Call:
ar(x = a)


Order selected 0 sigma^2 estimated as 0.9985

やっぱりAR(1)ですね。つかわせてもらいます。ありがとうございました。
614610:2007/12/18(火) 16:21:53
>>613
ほんとに何度もすまんが、最も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
615132人目の素数さん:2007/12/18(火) 16:54:36
616132人目の素数さん:2007/12/19(水) 21:51:28
fはx=(x1,x2,…,xn)の関数で、x1,x2,…,xnはそれぞれ0か1の値を取るとします。
その時、取りうる全ての要素を代入したfの和
農{x∈{0,1}^n} f(x)
を計算したいんですが、どのようにプログラムを組めばいいのかぜひどなたか教えてください。
お願いします。
617132人目の素数さん:2007/12/20(木) 00:57:02
>>616
fの具体的な説明がないよ。( f:{0,1}^n→ ?)
もしかすると農{x∈{0,1}^n} xのことを言ってるのかな?

まず"1+1=2"なのか"1+1=0"なのかはっきりしたほうがいい。
618132人目の素数さん:2007/12/20(木) 01:22:37
あ、fは任意の関数だったりするかな。
引数で関数fを渡すとか…たぶん考えすぎだろうが。
619616:2007/12/20(木) 05:34:24
>>617
すいません、fは
620616:2007/12/20(木) 05:38:53
>>617
すいません、fは{0,1}^nから実数にうつす写像です。
もっと詳しく言うと、f=背_{ij} xi xj (w_{ij}はある実数) です。
621132人目の素数さん:2007/12/20(木) 08:09:14
>>620
了解。勘ぐりすぎてたか。

つまり、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でするのって、何に使うのか興味あり。
622616:2007/12/20(木) 21:08:28
>>621
ありがとうございます。
ボルツマンマシンというものの計算をRでやっているところです。

ところで
>愚直に書けば2^n回ループまわすことになるけど、
とありますが、これはどの様にプログラミングを行えばよいのでしょうか?

f=exp(背_{ij} xi xj+買ニ_{i} xi)
というものも計算しなくちゃいけないのですが、この場合だと上の方法だとできないので、
ぜひご教授お願いします。
623132人目の素数さん:2007/12/21(金) 02:24:59
>>622
Rで愚直に書くのは案外難しかった。
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

とか。
624132人目の素数さん: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
}

なんかもありか。ふざけたスクリプトになってきたが。

やはり愚直に書いた指数時間アルゴリズムは
まったく実用的でないことがよくわかります。
625132人目の素数さん:2007/12/21(金) 03:01:55
あ、下のset=c(0,1)は削り忘れ。
626132人目の素数さん:2007/12/21(金) 04:49:34
ネットでボルツマンマシンの解説をナナメ読みしてみました。
なるほどx_i x_j = 1のとき同時発火ね。Σf(x)は分布を求める部分かな。

どうやら正攻法では指数時間は不可避のようです。
最初にいってた単純な二次形式の和だけならまだやれそうだったが。

ともかく一度定義通りに計算してみたいだけなのかな。
627616:2007/12/21(金) 13:02:23
ありがとうございます。
そのプログラムを利用してボルツマンマシンを作ってみたいと思います。
628132人目の素数さん:2007/12/21(金) 17:09:11
ニューラルネットのライブラリあったんじゃなかったっけ
629132人目の素数さん:2007/12/22(土) 04:47:26
> data
x 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 の平均を出す簡単な方法ってありますか?
630132人目の素数さん:2007/12/22(土) 18:47:02
>>629
おもしろそうなので考えてみた。でも 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"
631630: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"
632132人目の素数さん:2007/12/22(土) 19:13:46
>>629
組み合わせって言うけど、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

異なるグループとするならこんなんでいいと思う。
633132人目の素数さん:2007/12/22(土) 19:27:16
factanal()の結果のloadingsをうまくエクセルの表に貼り付けたいのですが、
良い方法ありませんでしょうか?
画面上の結果をコピーして、ちまちまエディタでタブを入れることしか
思いついてないのですが・・・もっと簡便な方法ありましたら教えてください。
634132人目の素数さん:2007/12/22(土) 19:47:45
>>633
> 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
635132人目の素数さん:2007/12/22(土) 20:26:59
>> 634
ありがとうございました。
html(a)ではエラーがでましたが,
html(a$loadings)はとおりました。
できたファイルを,開いてから,全選択コピー,ペーストでうまくいきました。
636132人目の素数さん:2007/12/23(日) 12:53:57
633の自己レスです。

その後も調べまわりましたら、以下のurlにあった方法でも可能でした。
エクセルのテキストファイルウィザードを使えば、「スペース」&「連続した区切り文字は一文字として扱う」
をチェックしてOKです。
ttp://homepage2.nifty.com/nandemoarchive/cyou_nyumon/r_data_Excel_and_R.htm
637132人目の素数さん:2007/12/23(日) 23:23:55
入力データと計算時間の関係のデータがあるとき、任意のデータ数についての計算時間を推測するにはどうしたらできますか?

n time
10 0.000001
100 0.00001
1000 0.001
10000 0.1

擬似的にこんなデータがあったときにn=100000の計算時間を推定するんです
638132人目の素数さん:2007/12/24(月) 03:35:06
>>637
いろいろ方法はあると思うが、たいていは
目的変数:time、説明変数:nの回帰(lm)でいいんじゃないかな。

ただ、計算時間なら二重ループが入っててn^2のオーダーなんて
よくあるから、モデルの選定は散布図見て適切なモデルを決めるか
プログラムの実装内容を多少知っている必要があるだろうか。

回帰について詳しくないので、フォローがあればどなたかよろしく。
639132人目の素数さん:2007/12/27(木) 19:41:42
Perlのような連想配列がほしい。
http://www.taniguchitomoya.com/diary/?date=20070109

慣れた人には当たり前なんだろうけど、自分のような初心者にはとても参考に
なりました。

ただ、これもほんの導入に過ぎない気がするので、今は↓を読んでいます。
http://cran.r-project.org/doc/contrib/manuals-jp/R-lang.jp.v110.pdf
なんだ、属性が付けられるのはリストに限らないじゃないか。
640132人目の素数さん:2007/12/28(金) 01:55:15
みんなすごいな、クール!。勉強させて頂きます。
641132人目の素数さん: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"

642639:2007/12/28(金) 17:05:53
>>641
> 連想配列って、名前付きベクトルじゃだめなの?

ありがとうございます。それでいいと思います。すごくシンプルになりました
ね。

ところで、数値型のベクトルにうっかり文字列を追加してしまうと、型変換が
起こって、全体が文字列形のベクトルになってしまいます。
> 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

これはちょっと不便ですね。名前をバックアップしておくしかないのかな。
うーん。
643132人目の素数さん:2007/12/30(日) 09:18:56
他のスレから紹介されてきました。
どうか、お願いします。
バリマックス回転したいんですが、エクセルしかなく、
Rをインストールしたんですがさっぱりわかりません。
数学のすの字も知らない仏文学科生ですので、プログラミング言語など
触ったことがありません。相応の入門サイトを見て手探りでやっている状態です。
あるRのサイトで
ttp://aoki2.si.gunma-u.ac.jp/R/src/all.R
が紹介されていて、この関数を入れるとバリマックス回転ができるそうなんですが
ここの関数を使おうとしてもなぜか正常に表示されず、使用することができません。
どうか、何か、妙案を出していただけませんか?
お願いします。
644132人目の素数さん:2007/12/30(日) 11:16:45
>>643
RSiteSearch('Varimax Rotation')
645132人目の素数さん:2008/01/03(木) 13:41:08
.Fortran("dqrls", qr = x, n = n, p = p, y = y, ny = ny,
tol = 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")

で呼び出される処理の実体は何処に格納されているのでしょうか?
また、そのソースファイルは参照する事はできますか?
646132人目の素数さん:2008/01/04(金) 06:40:34
プログラミング童貞です。質問させてください

サイコロを降って三の倍数が出たら100円もらえる
連続で三の倍数が出た場合はもらえる金額が100円ずつ加算されていく
これを50回繰り返した場合の全ての結果とその確率を表示する

こういった作業をする場合Rではどういった式を入力すればよいのでしょうか
個々の式(?)はわかるのですがそれをどう組み合わせたらいいのかがさっぱりわかりません(特に繰り返し文)
もしくはよりシンプルな操作でこういった作業が出来るフリーソフトがあったら教えてください
647132人目の素数さん:2008/01/04(金) 08:34:51
>>646
「全ての結果とその確率を表示する」の理解が正しいか分からないが
例えば以下の関数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

繰り返し文などいらない。
648132人目の素数さん:2008/01/04(金) 09:11:16
>>645
コンパイル済みのオブジェクトだから
例えばWindows版なら関数の実体はR.dllに入ってる。

ソースはRのソースを展開したときのsrc/appl/dqrls.fに入ってる。
649132人目の素数さん:2008/01/04(金) 15:24:29
>>647
ありがとうございます。それだとサイコロをランダムに降ってから三の倍数を取り出してるんですよね

そうでなくて例えば二回目終了時だと
1/9(確率) 300円(結果)
4/9 100円
4/9 0円
こういう形で出力したいんです
650132人目の素数さん:2008/01/04(金) 16:17:23
>>649
あ、ごめん肝心な「連続で〜」のところ見落としてた。
しかも全然違うことやってたな。

ハズレはまた100円にリセットでいいんだよね。
で、50回終了時の獲得金額とその確率をすべて表示ね。
難しそうだけど、もし思いついたらやってみます。
651132人目の素数さん:2008/01/04(金) 16:58:50
>>650
よろしくお願いします

先にあげた例以外でもいいので
・前の結果に影響される繰り返し
>>649のような形式の結果表示
を考えるヒントがあればぜひご教授を
652132人目の素数さん:2008/01/04(金) 17:49:15
>>651
あんまり頭よくないみたいで、うまい策が思いつきません。

既約分数を使いたいなら表示は有理数型使うのが楽じゃないかな。
Rだとgmpパッケージがいいかも。

> library(gmp)
> as.bigq(2^50,3^50)
[1] "4194304/2674378408833789"

「繰り返し」ってサイの目6^50通り
もしくは勝ち負け2^50通りの総当たりするってこと?
653132人目の素数さん:2008/01/04(金) 18:02:50
あ、(2/3)^50の結果間違ってるね。
約分できないのはずなのに約分されてるし。
3^50で桁あふれたか。

こっちが正しい累乗の使い方かなたぶん。

> prod(rep(as.bigq(2,3),50))
[1] "1125899906842624/717897987691852588770249"
654132人目の素数さん:2008/01/08(火) 14:00:55
すみません、非常に下らない質問なのですが、

1. 行列の行を一行ずつコンソール出力する。
2. 行列の要素を一つずつコンソール出力する。

には、それぞれどうしたら良いでしょうか?
ネタではなく、本当にわからなくて困っています。

小さい行列なら、print(a)で出力されますが、30x30とかだと、省略されてし
まいます。
655132人目の素数さん:2008/01/08(火) 16:03:43
>>654
いまいち、何に困っているのかが理解できませんが、30x30の行列を一行ずつ表示するには、
> a <- 1:900; dim(a) <- c(30,30)
> for (r in 1:30) {print(a[r,]}
これでOKです。1要素ずつなら、これを入れ子する。
でも、こんなことして何か意味があるの?
656655:2008/01/08(火) 16:04:54
ごめん、)が抜けてた。
657654: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文のような書き方があるのかと思っていたのですが。
658132人目の素数さん:2008/01/08(火) 20:22:03
インデックスを使わずに行アクセスしたいってどういうことだろね。
用途を言うとアドバイスしやすいんじゃないかな。

用途がありそうといえばデバック作業かな。
659654: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文を作っているので、あんまり綺麗なコードじゃないなあと。
660132人目の素数さん:2008/01/08(火) 22:20:24
>>659
for(i in seq(ncol(d))) のiで列、行アクセスってRだと普通じゃないかな。
apply(d, 1, print)みたいな操作がしたいわけでもないだろうし。

今思いついたのは、例えば

for(i in data.frame(d)) print(i)

とかね。冗談みたいなコードだけど。
printだけが目的なら添え字アクセスのがよっぽど素直じゃないかなあ。
661132人目の素数さん:2008/01/08(火) 22:21:44
あ、上のは列アクセスになってたね。

for(i in data.frame(t(d))) print(i)
662132人目の素数さん:2008/01/08(火) 22:53:40
> 行アクセスの用途自体は単に、データが正しくセットされたか目視で確認した
> いだけです。
だったら、単純に
> d
とするか
> page(d,"print")
でいいんじゃない?うちの環境では、page()でemacsが起動する
663654:2008/01/09(水) 14:25:32
遅くなりました。

>>660->>661
ありがとうございます。確かに微妙ですが、とりあえずそのデータフレームで
行こうと思います。

>>662
>d だけだと、大きな行列が省略されてしまいます。
また、実は対話環境ではなく、rJavaを介してJavaからRをバッチ的に利用して
いて、page() は使うことができません。
664sage:2008/01/11(金) 17:41:43
R縺ァone way repeated measures ANOVA 繧偵d繧区婿豕輔▲縺ヲ縺ゅj縺セ縺吶°
蜊頑律謗「縺励※謌先棡縺ェ縺励繧ゅ≧縺、縺九l縺セ縺励◆
665132人目の素数さん:2008/01/13(日) 12:59:13
インストールの必要がない(レジストリを使わない)Rってありますか?

666132人目の素数さん:2008/01/13(日) 16:18:09
knoppix
667132人目の素数さん:2008/01/13(日) 18:13:50
繰り返しのない2元配置ANOVAを、Rで多重比較したいのですが、できなくて困ってます。

pairwise.t.testだと対応のないt検定を繰り返すから間違いですよね。

ボンフェローニ法でやろうとおもうのですが、対応のあるt検定を
普通に群間で繰り返して補正すればいいのか、それとも対応のある
t検定を行うときに全体の分散?をつかってくりかえすのか、分か
りません。田舎の本屋と図書館では限界があって助けてもらえませんか。

668132人目の素数さん:2008/01/14(月) 00:16:13
>>667
ボンフェローニを使うならどちらでも構わない。
等分散性が仮定できるなら全体の分散で
いいんじゃない?
669132人目の素数さん:2008/01/14(月) 16:24:35
>>668
ありがとうございます!ちょっと滅入ってたのでレスがとてもうれしいです。
2元配置でも3元配置でもpairwiseを使ってる人もいますね。おっしゃるとおり
ボンフェローニでやってました。
問題がひとつ解決してうれしいです♪
670132人目の素数さん:2008/01/16(水) 13:18:07
MASSライブラリのldaを使っているんですけど質問
訳あって判別関数の直線式を求めたいのですが

http://www1.doshisha.ac.jp/~mjin/R/17.html
を参考にscallingと apply(Z$means%*%Z$scaling,2,mean) から式を変形して傾きと切片を求めて
判別直線の式を求めたのですが
その直線の式がどうも実際に群分けをしている直線と切片が違うように思われます(傾きはおそらくあっていそうです)
理由がわかるかたお教えください
671668:2008/01/16(水) 13:21:01
>>669
よかったな。お前が嬉しければ俺も嬉しいよ。
けどな、これで極めたと思わないでくれよな。
この道はまだまだ長く険しい。お前はまだいりぐちにたっただけなのだから。
さあ、俺たちと、道の先にあるものを掴みにいこうZee
672132人目の素数さん:2008/01/16(水) 17:44:03
日本語を含むグラフを作成したんですが、R上ではちゃんと表示されてるのに、psファイルで保存したら日本語部分が
文字化けしてしまいます。
これはRのフォント設定に原因があるのでしょうか?
673132人目の素数さん:2008/01/18(金) 19:44:25
>>672
> ps.options()$family
の値を見て、考える。
> ?postscriptFonts
はすでに読んだ?
674132人目の素数さん:2008/01/25(金) 19:21:11
TukeyHSD() って、群の標本数が違う場合には、Tukey-Kramer で計算しているのですか?
ヘルプを見ても良く分からなかったので、よろしくお願いします。
675132人目の素数さん:2008/01/25(金) 19:33:08
>>674
ソースを見ろ
> 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")
以下略
676132人目の素数さん:2008/01/25(金) 20:38:01
>>675
methods()ってのがあるんですね。ありがとうございます。
677132人目の素数さん:2008/01/28(月) 23:56:35
ソースみてもわからないんですが・・・
で、Tukey-Kramer なんですか???
678132人目の素数さん:2008/01/29(火) 19:22:57
時系列パッケージtimsacについて質問です。
これに入っている関数mulspe()でクロススペクトルが描画できたのですが
図からピークを値として出力するにはどうしたらいいのでしょうか
helpを読んでみてもいまいちよく解らず、identify()も使えなかったので
もしかしてデータから自分で計算するより無いのでしょうか
679132人目の素数さん:2008/01/30(水) 15:38:31
医学統計の質問です
2群の経時データの有意差検定をすることになってしまいました・・・
具体的には毎日薬を飲んで,その効果を測定してあるデータです.
多変量分散分析モデルを考えていたのですが,上司からAUCでやるべしとの指示?
AUCってどんなものなのでしょうか?
どこかに,Rのプログラムなどがあれば教えていただけたら幸いです.
680132人目の素数さん:2008/01/30(水) 16:50:43
>>679
>上司からAUCでやるべしとの指示? AUCってどんなものなのでしょうか?
なぜ直接上司に聞かないの? 統計手法とは別の意味のAUCかも知れないよw。
681132人目の素数さん:2008/01/30(水) 23:48:45
>>680
同意。
そもそもAUCって統計的方法の名前そのものじゃないし。
682132人目の素数さん:2008/01/31(木) 01:10:52
正規分布の歪度、尖度の検定について教えてください。
R ver2.2.0を用いています。
上記の検定法の関数 dagoTest(x)  は library(fBASIC) にあるとwebで見たのですが
パッケージを見てもfBASICがありませんでした。パッケージの更新を行なったのですが
fbasicはありませんでした。現在dagotestを使おうと思うと、どのパッケージを使えばよいのでしょうか
よろしくお願いします
683132人目の素数さん:2008/01/31(木) 01:29:50
>>682
fBASICはココ
http://cran.r-project.org/src/contrib/Descriptions/fBasics.html
ただR-2.4.0以上じゃないと正常に動かないかも

http://www.r-project.org/search.html
で"dagotest"を検索しただけだが。
684132人目の素数さん:2008/01/31(木) 09:11:40
679です
>>680,681
レスありがとうございます

上司も良く分からない様子だったので,ここで聞いた次第です・・
まずは普通にやってみます
685132人目の素数さん:2008/01/31(木) 12:30:33
678です。mulspe()のソースのoutputを書き換えることで自己解決しました。
横からですが、>>675さんのレスがヒントになりました。ありがとうございます。
686132人目の素数さん:2008/01/31(木) 17:09:36
自分に良くわからない指示を丸投げする上司というのもすごいな
オレ涙がでてきたよ。
687132人目の素数さん:2008/01/31(木) 18:36:55
>>684じゃないけど、上司って基本そういうものじゃないの?
要求が馬鹿高い割に知識は乏しくて、でも有事の責任を取るためにそこにいるって言う

あれ、もしかして俺が働いている場所ってブラックですか?
688132人目の素数さん:2008/01/31(木) 20:34:37
部下の能力を把握して適切に指示出せないとダメでしょう。
でなきゃココは誰に聞いてねと権限の委譲wをしないとな。
689675:2008/02/01(金) 00:05:13
>>685
役に立って何より。
>>679
ヒントをあげるね。Rはインストール済みだよね?
> RSiteSearch("measures repeated")
医学系だけど、恥ずかしながらAUC(血中濃度曲線下面積)を
知らなかった勉強になったよ。
690132人目の素数さん:2008/02/01(金) 00:42:11
>>689
医学系と言っても薬学寄りでないと知らなくても不思議じゃないんじゃない。
そもそも>>679のデータは上司がその程度なら血中濃度のデータかどうかも怪しいけどな。
691132人目の素数さん:2008/02/01(金) 21:47:40
C言語などからRの関数を呼び出すことはできますか?
692132人目の素数さん:2008/02/02(土) 01:34:18
>>691
はい。
693132人目の素数さん:2008/02/02(土) 01:54:43
ExcelなどからRの関数を呼び出すことはできますか?
694132人目の素数さん:2008/02/02(土) 06:19:55
695132人目の素数さん:2008/02/02(土) 19:06:32
>>692
それってR本体を呼び出してコマンドとして使うって意味?
(直接関数を呼べるなら便利なんだが。)
696132人目の素数さん:2008/02/03(日) 00:22:31
上司に恵まれない679です。
いつも優柔不断で指示が二転三転します、適切な指示をしてくれる上司にめぐりあいたいものです。

皆様の期待(?)通り、血中濃度のデータではありません。
>>689さんのヒントをもとに、始めます。

どうも、ありがとうございました。






697132人目の素数さん:2008/02/03(日) 02:52:20
10年前の俺様へ

学校じゃないなら適切な指示しかしない上司なんていないって。
適当にやらせて結果見て指示し直す、なんて普通。

不適切な指示に対して提案できて方法を示せるようになって半人前。
それが必要な場面で上司を使えるようになって一人前だ。

がんばれ。
698132人目の素数さん:2008/02/06(水) 18:34:17
主成分分析に使うfactanal関数がどういう原理で動いているか知りたいのですが、ソースは見れますか?
699679=696:2008/02/06(水) 18:54:37
>>697さん

お言葉が身にします。
ご指摘のとおり、まだまだ半人前の手前という感じです。

もっと目線を上にして、がんばります!
ありがとうございました。
700132人目の素数さん:2008/02/06(水) 19:34:41
help("factanal")では?
701132人目の素数さん:2008/02/06(水) 23:14:51
というか主成分分析には使わないんだが…
702132人目の素数さん:2008/02/06(水) 23:16:49
>>698
factanalは珍しく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]
 [以下略]

703702:2008/02/06(水) 23:20:42
>>701
おぉ、ほんとだ。
> help.search("PCA")
704132人目の素数さん:2008/02/07(木) 00:41:43
>>702
おおおお。そんな方法でソースが見られるとわ。感激れす。
705132人目の素数さん:2008/02/07(木) 19:24:57
>>704
Rの仕様を理解していれば、ごく当たり前のことだよ。
matrixクラスやdata.frameクラスのRオブジェクトの名前だけを
書いてenterを押下すれば、その内容が表示されるだろ。function
クラスのRオブジェクトも同じ。そのRオブジェクトの内容が出力
される。
706704:2008/02/08(金) 09:51:02
>>705
うっせーばーーーか!
707132人目の素数さん:2008/02/08(金) 20:02:52
プログラミング言語としてRを学びたいのですが、おすすめの本ありますか?
オブジェクトの継承とか、そういった類いの解説があるような…
708132人目の素数さん:2008/02/09(土) 09:28:42
リゲス『Rの基礎とプログラミング技法』
にはそういった話題も載っていたような気がします。
709132人目の素数さん:2008/02/09(土) 18:07:53
幅広さなら「S-PLUS による統計解析」じゃねーか?
MASSパッケージにソース入ってるし。
オブジェクトは入ってたかシラネ
710132人目の素数さん:2008/02/09(土) 18:46:21
>>708, 709
ありがとうございます。「Rの基礎とプログラミング技法」が良さそうですね。
言語仕様を理解できそうです。統計手法とか載っていなくても良いので、
他にありましたらよろしくお願いします。
711132人目の素数さん:2008/02/09(土) 22:31:35
時系列解析で acf や ccf を使用しているのですが,
相関の最大値(縦軸)とそのときのラグ(横軸)を
出力する方法はありませんか?
712711:2008/02/10(日) 15:12:19
自己解決しました.
713132人目の素数さん:2008/02/11(月) 13:28:15
「目的変数は質的変数でなければだめです」
ってどういう意味ですか。
714132人目の素数さん:2008/02/11(月) 18:14:07
as.factor
715132人目の素数さん:2008/02/11(月) 23:08:16
↑解決しました。


それから、多項ロジットモデルを選択すると

エラー: 'x' に無限値か欠測値があります

というメッセージが出るのですが、どういうことですか。
716132人目の素数さん:2008/02/11(月) 23:10:16
書いてある通りだろw
データセットが対応していない。
717132人目の素数さん:2008/02/11(月) 23:21:02
レポートが書けない(泣)
最終講義を先生が休講にしたから、わからない><
> また、先週行う筈だった授業の簡単な要旨を
> http://bayes.c.u-tokyo.ac.jp/~hoshino/ssa0129.doc
> に記載しておりますので、参考にしてください。

諦めて普通の線形回帰にしようかな・・・。
718132人目の素数さん:2008/02/12(火) 07:31:24
>>717
東大だろ。頑張れよw
719132人目の素数さん:2008/02/12(火) 08:09:47
>>717
原則はさらっと書いてあるけど、あくまで講義のメモだから、それだけでは分かりにくいのは仕方ない。
グラフ付きの例があると一番いいんだけどな。
つまり、ダミー変数がなければ相関が現れないけど、
ダミー変数を入れて、グループごとにグラフを書いたら、同じような傾きの並行したグラフがグループの数だけ現れる、というような。

ウェブを漁ったけど、分かりやすく説明したものがなかなか見つからなかった。
720132人目の素数さん:2008/02/12(火) 08:21:16
ロジスティックモデルやロジットモデルがわからないので、
ダミー変数を使った線形回帰にします。
721132人目の素数さん:2008/02/12(火) 10:15:11
scatterplot3d 関数で出力した図において、identify 関数のような関数を用いて
点を同定することは出来ないだろうか?
722132人目の素数さん:2008/02/12(火) 11:29:05
>>721
三角ダイヤグラムならまだしも、平面に投影した状態で、空間の点を指定できる原理を思いつける?
723132人目の素数さん:2008/02/12(火) 12:12:05
すみません。わからないです。
そうか…。3次元のプロット点をクリックして番号を出力する方法はないか…
724132人目の素数さん:2008/02/12(火) 13:08:15
>>723
プロット点はいくつある?少なければ、points()でID番号そのものをプロットすれば
判別が着くと思うけど。
725132人目の素数さん:2008/02/12(火) 18:00:30
>>724 プロット点は多いです。丁度100個です。
points 関数は以下の使い道以外にあるということでしょうか?
※赤色の + がプロットされる

plot(-4:4, -4:4, type = "n")
points(rnorm(200), rnorm(200), pch="+", col = "red")
726132人目の素数さん:2008/02/12(火) 19:51:07
>>725
申し訳ない。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の値を調整して下さい。
727726:2008/02/12(火) 20:33:10
で、scatterplot3dだと、ちょっとだけ工夫がいるけど、text()でOKみたい。
> 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を読んだら即解決だと思うんだけど。
728132人目の素数さん:2008/02/12(火) 21:12:34
>>726-727 レスありがとうございます!
やってみますので、出来たら報告します
729132人目の素数さん:2008/02/13(水) 11:42:57
>>727 考えていた通りの図を出力出来ました。※ NR38 は100行3列のデータフレーム
ありがとうございました。ヘルプは読んでみましたが、なかなか難しかったです。精進します。

> 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
730726=727:2008/02/13(水) 13:52:49
おう!お前、がんばれよな!
731132人目の素数さん:2008/02/13(水) 14:18:27
>>730
何を頑張るんだい?
732729:2008/02/13(水) 15:02:26
ニコニコ動画のランキングの分析です。表の通り、
マイリスト登録数、再生数、コメント数の3つのデータから動画の傾向を調べています。
733731:2008/02/13(水) 17:27:29
>>730
今気がついた。オレに当てたレスじゃなくて、オレになりすましていたのね。
初めてオレになりすましているやつに遭遇した。なんかメリットあるの?

ところで、3dのプロットだけど、rglにはtext3d()というのも用意されている。
こっちでグラフィックを書くのもありだよ。scatterplot3dよりもいろいろで
きることが多そうだ。
734132人目の素数さん: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")
735132人目の素数さん:2008/02/15(金) 21:46:58
合成関数の微分について、教えて下さい。たとえば、
f <- expression( a * x^2 );
として、この f をつかった合成関数 g(x) を微分したいのですが、
g <- expression( b * x * f );
として、D(g, "x") とやっても、f が定数として計算されてしまいます。
合成関数はどのように記述すれば良いのでしょうか?よろしくお願いします。
736132人目の素数さん:2008/02/15(金) 23:46:45
Rと並んで数少ないCUI方式のフリーウェアLisp-Statは、Rに比べて
機能面では遜色はないのでしょうか?
Lisp-Statによる統計解析入門
http://cluster.f7.ems.okayama-u.ac.jp/~t2/appstat/
737132人目の素数さん:2008/02/16(土) 00:08:38
>>736
最新の本が1999年。
察しろ。
738132人目の素数さん:2008/02/16(土) 03:09:35
>>736
数値計算をLispでやる意味って何だろ?
739132人目の素数さん:2008/02/18(月) 01:47:34
下記で示される確立モデルの混合分布
f1(x)=Af2(x)+Bf3(X)
のうちf1(x)、f2(x)、f3(x)は既知とする。

このとき、AとBを計算したいのですが、
良いパッケージを教えてください。f2(x)とf3(x)は正規分布ではなく
任意な確立モデルの関数という条件でお願いします。
740132人目の素数さん:2008/02/18(月) 05:58:55
確立モデル… orz
741739:2008/02/18(月) 06:48:26
>>740
失礼。確率ね。
742132人目の素数さん:2008/02/19(火) 00:15:39
>>739
意味がいまいちわかんないけど、数学知識ゼロの俺が答えてみる。
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が求まると思うんだけど。
743739:2008/02/19(火) 04:32:28
>>742
実は、f1〜3(x)は元データを参考に最尤法で出した関数で、
・点でやった場合に元データに対して最大の精度がでるのかどうか
が個人的に分からない。
勝手に最適化してくれるならその方が良いかなと思ってた。
元関数の検定をしろと言われそうな話だが……。

あと確率モデル関数を重ねた場合の挙動が分からない。
積分で考えて多分A+B=1になりそうだ、とは思うけど。

情報後出しの上に明らかに色々勉強不足だね。吊ってくる。
744132人目の素数さん:2008/02/19(火) 22:44:16
Rで繰り返しのない二元配置の多重比較をpairwise.t.test(ボンフェローニ)で行いました。
ついでに4STEPエクセル統計という本のアドインソフトで、同様にボンフェローニで
行いました。

すると、結果が微妙にちがいます。優位さがある組み合わせは同じですが
Rで<0.01なのにエクセルでは<0.05と出たりするものがあります。

そもそもpairwise.t.testは一元配置につかうもので、2元配置に使ったこと自体
があやまってるのでしょうか。
745132人目の素数さん:2008/02/19(火) 23:18:22
>>744
pairwise.t.testのソース見たら単に一元配置の処理しかしてないことは分かるだろ。
エクセルのソフトは持ってないから知らないけど二元配置でちゃんと解析してるなら
結果が違って当たり前だな。
746132人目の素数さん:2008/02/20(水) 00:02:36
>>745
ありがとうございます!
…ということはこれは間違ってるんですね
ttp://cse.niaes.affrc.go.jp/minaka/R/R-anova07.pdf

Rで繰り返しのない二元配置の多重比較をする関数はないんでしょうか。
文献あさっても繰り返しなしの二元配置の多重比較は載ってないし…
747132人目の素数さん:2008/02/20(水) 01:14:01
>>746
間違ってますね。
多重比較の部分は各要因ごとにしか書いてないですからすべて一要因の多重比較ですね。
748132人目の素数さん:2008/02/20(水) 20:59:15
>>747
ありがとうございます。
繰り返しのない2元配置をRでどう多重比較したらよいのでしょう…

統計、Rなど独学で来たんですが、資料もなく
私は家政系なので専門じゃないです
もうこれ以上勉強しても分かりません
749132人目の素数さん:2008/02/20(水) 22:40:37
>>748
まず、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

ただしネチケットには気をつけましょう。
750132人目の素数さん:2008/02/20(水) 22:53:22
>>749
ありがとうございます。
一度ここでも検索、質問させていただいたんですけど、分からなかったんです。
変身もいただけなかったので、ネチケットが悪かったのかもしれません(涙)
もう一度聞いてみます…
751132人目の素数さん:2008/02/20(水) 23:12:06
一般のネチケットというより、専門の人が主なのでロジカルに

何を質問しているのか?
処理したいデータは具体的にどういうものか(抜粋で例示など)
どこは自分でわかっていて、どこはわからないか

を明確にして質問した方がイイかも
752132人目の素数さん:2008/02/21(木) 22:30:50
1行行列(1,2,3,4)と1列行列(1,2,3,4)を
かけると30になるはずだが、エラーが出る。
x <- rep(1:4)
> x
[,1]
[1,] 1
[2,] 2
[3,] 3
[4,] 4
> x*t(x)
以下にエラー x * t(x) : 適切な配列ではありません

どうやったら正確な結果が出せるか教えてください。
753752:2008/02/21(木) 22:32:23
式は
t(x)*x
の間違いです。どちらもエラーなので大勢に影響は無いけれど。
754132人目の素数さん:2008/02/22(金) 00:18:41
>>752-753
できますよ?

> x<-rep(1:4)
> x
[1] 1 2 3 4
> x*t(x)
[,1] [,2] [,3] [,4]
[1,] 1 4 9 16

既に回転済みのxをまた回してませんか?
755132人目の素数さん:2008/02/22(金) 02:59:41
>>752
やりたいのはこういうことじゃないかな。

> 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 だと行も列も設定されないからで、
特に深い意味は無い。
756132人目の素数さん:2008/02/23(土) 14:57:54
Rにはローカル変数はありますか?
名前空間を汚染したくない場合、関数を作るのが普通なのでしょうか?
757132人目の素数さん:2008/02/23(土) 15:11:01
以下にエラー `[<-.data.frame`(`*tmp*`, row, col + 1, value = 0.0288357995999999) :
新しい列は既存の列に穴を開けるかも知れません

というエラーが出るのですが、既存の行列の列を増やすためには
何か作法が必要なのでしょうか?
758132人目の素数さん:2008/02/23(土) 15:28:09
データセット? cbindを使えばいい?
すみません天啓が降りてきたので質問を取り下げます。
759132人目の素数さん:2008/02/23(土) 17:05:31
0,0
0,1
0,2
 :
0,10
1,0
1,1
1,2
 :
1,10
2,0
 :
 :
10,10

こういう総当たり用の行列を作れる関数を教えてください。
お願いします。
760132人目の素数さん:2008/02/23(土) 17:31:55
761132人目の素数さん:2008/02/23(土) 17:41:13
>>760
ありがとうございます。読んでみます
762132人目の素数さん:2008/02/24(日) 11:03:47
同じ行列Xを n 回かけた行列の積

X %*% X %*% X %*% X %*% ....

を簡単に求める事ができる関数ってありますか?
763132人目の素数さん:2008/02/24(日) 13:55:35
>>762
ガンバレw
764132人目の素数さん:2008/02/24(日) 18:19:02
自作自作
765132人目の素数さん:2008/02/25(月) 17:05:59
>>762
eval(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

766132人目の素数さん:2008/02/25(月) 19:47:23
効率のよい求め方なら、対角化するか
(X%*%X)%*%(X%*%X)みたいな分業方式でやるか。
767132人目の素数さん:2008/02/25(月) 23:52:04
Rマスターなんだけど
なにか質問ある?
768132人目の素数さん:2008/02/26(火) 02:19:09
ありません
769132人目の素数さん:2008/02/26(火) 20:23:12
>>754-755
レスサンクス。内積は*じゃだめなのね。
勉強してきます。
770132人目の素数さん:2008/02/27(水) 06:36:51
%*%は内積ていうか行列積だね。*は要素毎の積。
sum(x*x)でも結果は内積とるのと同じだけど。
771132人目の素数さん:2008/02/28(木) 01:54:55
>>750
2元配置の多重比較は分からんな。
繰り返しないならrep.aovでできるぞ。
ぐぐってみるべし。
772132人目の素数さん:2008/02/28(木) 06:04:45
混合分布の元関数を推定するのに良い方法ある?
一般的にはこうやってやるみたい。
ttp://omt.med.gunma-u.ac.jp/~tgaku/trivia/jEmalgo.htm

mclustってパッケージでできるみたいだけど、
式が行列を沢山含んでcurveで表示できないし、実際に代入してみても
元のデータと全然数値が合わない。
773132人目の素数さん:2008/03/17(月) 16:18:58
カイ二乗の%点を求めたいのですが(n=∞)
Rで、2.5及び97.5%点を求める場合、どのようにすればよいでしょうか。
(関数や無限大の表示入力方法等)
774132人目の素数さん:2008/03/17(月) 20:24:59
>>773
そのnって自由度か?そうなら笑い話ということか。
775132人目の素数さん:2008/03/21(金) 15:20:10
maxima使ってる人っていますか?
776132人目の素数さん:2008/03/26(水) 11:35:41
統計には使っていないな。
777132人目の素数さん:2008/03/29(土) 19:47:36
微分関数Dの威力に驚いています。
微分できない関数などもあるのでしょうか?
全面的に結果を信頼して大丈夫ですか?
778132人目の素数さん:2008/03/30(日) 02:04:23
>>777
初等関数に対する微分の公式を与えておけばどんな関数も分解して微分するだけなので
問題ないのでは?積分はそんなに簡単にはいかないけど。
779132人目の素数さん:2008/03/31(月) 17:31:28
>>501
qchisqでいいんじゃね?
780132人目の素数さん:2008/03/31(月) 18:10:46
以前にRからmaximaを呼ぶ方法がRのMLで話題になっていたそうですが
結局実現できたのでしょうか?
781132人目の素数さん:2008/04/07(月) 02:38:12
CからRの関数を呼んだりできないんですか?
VCでGUI作ってそこで色々処理させてる途中でRの関数を呼びたいんですけど。
782132人目の素数さん:2008/04/07(月) 07:06:19
>>781
あのね、上のテンプレとか確認しましょうよ。
http://www.okada.jp.org/RWiki/?R%A4%AB%A4%E9%C2%BE%B8%C0%B8%EC%CD%F8%CD%D1
783132人目の素数さん:2008/04/07(月) 12:18:22
>>782
おお、できるんですか。
ちょっと使ってみます。
とりあえずできる、できないって一言レスを期待してテンプレも見ずに書き込んじゃいました。。。
丁寧にどうも。
784132人目の素数さん:2008/04/07(月) 13:54:57
>>782
そのページはRからの他言語利用で>>781がほしいのはその逆のようですが…。
Rをコマンドとして呼び出すことはできるのでそうするんでしょうな。
785132人目の素数さん:2008/04/09(水) 13:29:58
すみませんが、質問です。
R の遅延評価は、どのように活用すれば良いのでしょうか?

Haskellをちょっとだけかじったので、ああいう感じに使ってみようとしたので
すが、組み込みの遅延リストなどは無いようで(巨大なベクターを作成すると、
メモリ上に全部領域確保され、初期化されてしまう)、どうも勝手がわかりま
せん。

x = 0
for (i in 1:1000000) x <- x + i
print(x)

こういう計算でも、必要になった時点でデータが作られるわけではないようで、
1:1000000 が全部領域確保されてしまいます。

どういう使い方が想定されているのか、お教えいただけないでしょうか?
786785:2008/04/09(水) 16:44:28
なんか要領を得ない質問ですね。すみません。まとめます。

「R が遅延評価であることの、うまい使い方を教えていただけませんか?」

よろしくお願いいたします。
787132人目の素数さん:2008/04/10(木) 03:21:46
最近のRはパッケージの一括インストールがしにくくなってるな
なんでだろ
788132人目の素数さん:2008/04/10(木) 11:15:18
前から順番はあったけどね
依存コードが多くなってきてるいい兆候じゃないかな
789132人目の素数さん:2008/04/12(土) 20:12:56
依存もあって面倒だね
guiから一括ではダウンロードまでしかしてくれないし
790132人目の素数さん:2008/04/13(日) 18:59:07
R/bin内のR.dll を使って、
VC++上からRの関数って実行できますか?

色々と試してみたのですが、コンパイルは通るものの、
肝心のRの関数のコール時にアプリがダウンしてしまいます。

アドバイスをお願い致します
791132人目の素数さん:2008/04/14(月) 16:25:27
C用のインターフェース有ったような気がするが
792781:2008/04/14(月) 16:51:15
>>784,790
RcppTemplateでググった?
まだ試してないんでできるかは分かりませんが・・・
793132人目の素数さん:2008/04/14(月) 19:15:17
多言語からのライブラリのみの利用はできないんじゃない。
頭から呼び出す必要あると思う。
794132人目の素数さん:2008/04/14(月) 19:38:12
あちゃ
多言語=>他言語
795790:2008/04/14(月) 22:33:24
>781,793
レスありがとう
RcppTemplate は試しました。
pexport,libコマンド使用して Rdllからlibファイル作ったりもした。
一応コンパイルは通るんですけどね、
VC++上でデバッグかけると「AccessViolation」発生しちゃうんですよ。
恐らく、793さんの言うとおり、ライブラリだけの利用はできないような機がします。

RcppTemplateは 「R上で、C++を含んだR関数を作成するためのモノ」だと思いました(多分)

う〜ん、残念。
796790:2008/04/14(月) 22:44:48
>791
本当ですか?
RjpWikiの他言語インターフェース一覧は一応確認してますが、
Cから呼び出せるインターフェースは無かったです。
Rの中にある、 Call_R っていうやつですかね。
あれも「R上でCを含んだR関数を作成するもの」のような機が。

...詳細教えてください m(__)m
797132人目の素数さん:2008/04/14(月) 22:46:02
MacのR 2.6.2なんですが、
cat("abc¥ndef")
とやってもコマンド版なら改行されるけどGUI版だと改行されずそのまま¥nが表示されてしまいます。どうしてかわかりませんか?
798132人目の素数さん:2008/04/14(月) 23:32:46
最尤推定量を求めるには、R と Mathematica どっちが向いていますか。

Mathematicaで多変量とか扱うと、とんでもない値を返してくるか、止まるので。
それでも R よりましなら、式をテイラー展開の繰り返しで本当に適当な近似値出すんですが。
799132人目の素数さん:2008/04/15(火) 09:21:55
>>797
\とoption+\の違いは分かる?Macユーザなら誰でも一度ははまる。
800132人目の素数さん:2008/04/15(火) 12:00:47
Java用のライブラリ呼び出しのインターフェースがあるからそれより先にできてるんじゃないかな
CやC++用のが
801132人目の素数さん:2008/04/15(火) 14:46:59
>>800
正直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を呼び出せるんじゃないか?
実行速度は期待できないけど
802132人目の素数さん:2008/04/15(火) 14:51:45
JNIはJavaからCはできるが逆は無理だろ
803132人目の素数さん:2008/04/17(木) 22:35:32
>>799
ありがとう!Mac初心者だから知らなかった。
バックスラッシュと円記号は別なんですね。
804132人目の素数さん:2008/04/18(金) 09:28:54
>>803
そう。MacでRjpwikiに書き込むときに、バックスラッシュと円記号
の違いで文字化けが発生してページを壊してしまうときがある。
805132人目の素数さん:2008/04/18(金) 10:42:01
それMacrashっいうんだよ

・・・・いわねーな
806132人目の素数さん:2008/04/18(金) 11:10:02
Macは昔からそういう雑なとこあるからなあ
807132人目の素数さん:2008/04/18(金) 13:02:43
MacでもUSキーボードを使えば無問題。
808132人目の素数さん:2008/04/18(金) 14:56:09
どんどんRから話がそれているが、
>>806
雑なのではなく、むしろ余計なお世話。「円記号とバックスラッシュが同じ」と
いうバットノウハウをもつ人間からは、そこまで細かい配慮はいらんとなるが、
そうではない人向けに両方を出力できるようにしている。そもそもUTF-8では
円記号とバックスラッシュに違うコードが割り当てられているので、UTF-8を
導入した以上は、明瞭に区別するのが正当とおもう。euc-jpなLinuxユーザなの
で、他のutf-8なOSがどうなのか知らないけど。
809132人目の素数さん:2008/04/18(金) 15:37:25
そういうのを雑というんだよ
810132人目の素数さん:2008/05/01(木) 19:24:36
2.7に変わってどうよ
811132人目の素数さん:2008/05/13(火) 23:56:21
2.7.0 windows版で、以下のようになってしまうのですが・・
何がいけないんでしょうか??
> 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
812132人目の素数さん:2008/05/14(水) 01:19:34
>>811
ひょっとしてファイル名に問題があったりする?
知らんけど。
813132人目の素数さん:2008/05/14(水) 02:23:44
(゚Д゚)≡゚д゚)、カァー ペッ!!
814132人目の素数さん:2008/05/14(水) 02:48:49
(゚Д゚)≡゚д゚)、カァー ペッ!!
815132人目の素数さん:2008/05/14(水) 16:46:29
>>811
Linux版だとそのエラーはでないね。Rを想定外の場所にインストールしているとか
816132人目の素数さん:2008/05/14(水) 20:51:12
811です。
2.7.0を再インストールした段階では問題ありませんでした。

そのあと、Rcmdrを追加したあとで、おかしくなりました。
それから、どうにもなりません。
どなたかご解決をお願いします。
817132人目の素数さん:2008/05/15(木) 12:39:21
パッケージがちゃんと読み込めてないんじゃ
818132人目の素数さん:2008/05/15(木) 22:59:11
811です。
以下のもエラーがでるようになっていました・・・何か参考になれば・・
> demo()
Warning message:
In file.show(outFile, delete.file = TRUE, title = paste("R", tolower(x$title))) :
819132人目の素数さん:2008/05/24(土) 09:41:34
tseriesのプロットで、複数のデータ系列を1枚の図に盛り込むために

 plot(hoge.ts, plot.type = "single")

をしているのですが、更に棒グラフ+ラインプロットのように系列によって
プロット方法や色などを変えたいと考えています。

で、?plot,?plot.ts,?plot.default,?parなどを読んだのですが、
系列ごとに変えることがさっぱりできません。これはもしかして
plot一発ではできなくて、低レベル描画関数を組んで自分でデータ系列ごとに
1つづつプロットしないと駄目なんでしょうか?

単に無知・調査不足でできないのか、それとも本当に↑の通りなのか
見極めが付かないままなので、先達の方に道程を指し示していただければと。
820132人目の素数さん:2008/05/25(日) 02:17:18
Rのプロンプトからから直接bash使えねえかなあ?
なんかイラっとくる
821132人目の素数さん:2008/05/26(月) 01:17:34
>>820
system()じゃ足りないの?
822132人目の素数さん:2008/05/26(月) 13:55:59
C#からRを使うことはできないのかな。

C#自体がどうのこうのという意見は置いといてな。
823132人目の素数さん:2008/05/26(月) 16:30:55
統計学なんでもスレッド8
http://science6.2ch.net/test/read.cgi/math/1211786770/
824132人目の素数さん:2008/06/01(日) 16:36:34
皆さんRコマンドを実行するときはどのようにしていますか?
エディタで書いてRConsoleにコピペしているのですが
もっと簡単な方法はないですかね?
825132人目の素数さん:2008/06/01(日) 17:14:08
>>824
むしろ、そんな面倒なことをしている人の方が少なそう。emacs+essとかTinn-Rとか
Rjpwikiには書いていなかったっけ?
826132人目の素数さん:2008/06/05(木) 07:52:57
>>824 同じくR付属エディタで書いてコピペしてます。
個人的には割と満足。
ただエディタがカッコとかクウォートを補完するのを止めたいのだが…
まあもう少し調べるか。
827132人目の素数さん:2008/06/07(土) 19:07:56
Rで出力するグラフにHelveticaファミリーのフォントを直接使いたいんですが,どなたか方法をご存じないですか?
epsファイルに出力すれば使えるのはわかりますが,WindowsメタファイルやPDFに直接出力したときに反映されるようにしたいんですが……。
828132人目の素数さん:2008/06/08(日) 00:17:32
>>827
Windowsメタファイルは知らんが、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になっているよ。
829132人目の素数さん:2008/06/08(日) 02:11:47
>>828
小塚明朝になってます…
epsをつくるときにフォントファミリーを指定する方法以外調べてもわからなかったんですが,どう設定すればいいのでしょうか?
830132人目の素数さん:2008/06/09(月) 00:19:32
>>829
初期設定のどこかで小塚明朝にしているでしょ。
>>828はデフォルトの状態で何にも触っておらんよ。
> pdf.options()$family
[1] "Helvetica"
上記のようになっていなかったら、
pdf.options()$family <- "Helvetica"
でいいじゃね。
831132人目の素数さん:2008/06/09(月) 01:45:26
F検定に関する質問です。

自由度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()の信頼区間とは何を現しているのでしょうか?
832831:2008/06/09(月) 01:49:47
いちおう上げときます
833829:2008/06/09(月) 03:45:43
>>830
ありがとうございました。
834132人目の素数さん:2008/06/09(月) 06:00:35
>>831
1/qf(0.025,19,19)=2.526451
=qf(0.975,19,19)
835132人目の素数さん:2008/06/09(月) 08:25:28
>>831
信頼区間なんだから非心F分布から求めてるんだろ。
836132人目の素数さん:2008/06/09(月) 22:15:28
>>834
そちらは当然逆数の関係にあります。
「上の検定結果が逆数関係を満たしていない」とは、F検定結果の信頼区間のほうをさしています。

>>835
非心F分布ですか…。
勉強不足でしりませんでした…。
837836:2008/06/09(月) 22:17:02
名前入れ忘れました。>>831で質問した者です
838132人目の素数さん: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

みたいなかんじです。
839132人目の素数さん:2008/06/10(火) 09:54:17
> (a <- 1:7)
[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
やりたいことがいまいち分からないが、こういうこと?
840132人目の素数さん:2008/06/10(火) 19:43:55
>>831
qf(c(0.025, 0.975), 19, 19) * 1.357192
[1] 0.5371931 3.4288790
841132人目の素数さん:2008/06/11(水) 23:06:05
>>831
qf(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。
842831:2008/06/11(水) 23:33:17
>>840-841
なるほど、分かってきた気がします!
母集団のF値が1で仮定したときの帰無仮説における95%信頼区間が0.3958122〜2.526451であり、
これから標本値のF値が外れていると棄却する。

一方、「95 percent confidence interval」は、逆に標本値がF=1.3572であったときの母集団の推測値の95 percent confidence intervalということですか。
これから帰無仮説における母集団のF値=1が外れていると棄却する。

納得いきました。結局は同じことだったんですね。
ありがとうございました。
843132人目の素数さん: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 円(税込)
--------------------------------------------------------------------------------
844838:2008/06/12(木) 01:03:42
>>839
できました!ありがとうございました!
845132人目の素数さん:2008/06/12(木) 12:52:50
>>843
ぬわっんと、倒産ですか。
すみませんが、その移転先を教えて頂けませんか、お願いします。
846132人目の素数さん:2008/06/12(木) 17:33:11
そもそも移転すんのか?
倒産だし
847132人目の素数さん:2008/06/12(木) 17:41:13
848132人目の素数さん:2008/06/12(木) 21:49:10
>846
いや、サイトの移転先の話ですw ページトップからは入れなくなっているんで。
>847
ありがとうございます。
849132人目の素数さん:2008/06/13(金) 11:49:50
waveletの使い方分かるかた
分解したwaveletを再構成するにはどうしたらいいか教えてください
関数が今一分からないです
850132人目の素数さん:2008/06/15(日) 22:25:02
九天社倒産を知って、買うのを迷っていたThe R Bookの購入を決断。
ところが、Amazonはじめいつも使っているネット書店では在庫なし!
しばらく探し歩いて、今日、無事に届いた。急な出費は痛いけど、
悔やむより良いかなと。
851hoge:2008/06/15(日) 22:54:04
CRANってなんて読むの?
ググったけど分からん!
教えてください。
852132人目の素数さん:2008/06/15(日) 23:07:43
>>851
しらん(´・ω・`)
853132人目の素数さん:2008/06/15(日) 23:31:00
>>852
クスっときた
854132人目の素数さん:2008/06/15(日) 23:32:26
>>851
くらんって言う人が多い気がする
855132人目の素数さん:2008/06/19(木) 15:07:58
行列データで身長160から170は何人いるかという条件付きの集計をしたいのですが、どのようにすればよいのでしょうか
856132人目の素数さん:2008/06/19(木) 17:32:09
> height <- 150:180 #height をデータの行列とした。
> compare <- height >= 160 & height < 170
> table(compare) #これとか
compare
FALSE TRUE
21 10
> length(which(compare)) #これとか
[1] 10
857132人目の素数さん:2008/06/20(金) 15:31:21
ありがとうございます
行列データなのですがまずデータフレームにするべきなんですね。
858132人目の素数さん:2008/06/20(金) 19:07:32
全然関係ない話なんだけどさあ、検索するじゃん。検索。googleとかで。
それでさあ、くだらないブログが腐るほど引っ掛かるんだよね。
知ったかとか、出鱈目とか鵜呑みにしたような内容の馬鹿ブログ。
いや、早い話がお前らブログ辞めろって。
いや、それだけなのよ。まじで。お願いだから辞めて下さい。
資源の無駄、そして多くの人、社会の利便性と生産性を根こそぎかっさらってますよ。お前達
859132人目の素数さん:2008/06/20(金) 20:29:23
>>858
お前のようなタイプが一番生産性低いんだが。
860132人目の素数さん:2008/06/20(金) 23:12:59
>>857
データフレームの方が扱いやすいが
それくらいの集計なら行列でもたやすいぞ。
861132人目の素数さん:2008/06/21(土) 00:21:34
>>856のやり方は正統派なんだけど、めんどうなので、
> height <- 150:180
> sum(height >= 160 & height < 170 )
[1] 10
これでいいんじゃね。
862132人目の素数さん:2008/06/21(土) 07:01:21
>>855
ちゃんと分析するならこんな感じ。

# 分析対象データを乱数で発生させる。
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)
863132人目の素数さん:2008/06/21(土) 18:13:48
S-PLUSとRの互換性のある部分とない部分をまとめた資料ってない?
864132人目の素数さん:2008/06/27(金) 16:54:25
ありがとうございます。
1列に限定した度数分布を求めることはできたのですが
heightが160以上170でweightが50から60は何人いるか、という2つ以上の条件を含めた度数分布をもとめるにはどうすればよいでしょうか
865132人目の素数さん:2008/06/27(金) 18:50:39
>>864
うーむ……クレクレくんかよ。ちょっとは考えようや。
compareH <- height >= 160 & height < 170
これで、160~170が TRUE/FALSE で取れてくるんでしょ。なら、
compareW <- weight >= 50 & weight < 60
で 50~60が TRUE/FALSE で取れるじゃん。
両方が TRUE の場合のみカウントすれば良いんだから、
length( which(compareH & compareW) )
866132人目の素数さん:2008/06/27(金) 19:21:22
なんかめんどくさいな

160<=height<170 and 50<=weight<60
とか書けないのかな・・・・

まあいいけど
867132人目の素数さん:2008/06/27(金) 20:20:13
人が初心者向けに書いてやったのに、ゆとりなのでしょうか、呆れますなぁ。
sum(height - 160)%%10 < 10 & (weight - 50)%%10 < 10)
礼ぐらいまともに出来るようになれよ。
868132人目の素数さん:2008/06/27(金) 22:31:38
# 分析対象データを乱数で準備。
dataset<-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で集計する必要があるのか、興味あるところ。
869132人目の素数さん:2008/06/27(金) 22:35:32
ついでに別の話題をカキコしたり。
rcompgenちうものを最近知ったわけで。コマンド補完は
ESSでしか無理だと思っていて、emacs挫折者の僕としては
rcompgenの補完機能だけで泣けた。あまり紹介されていない
機能の様だけれど、R使いの人達には言うまでも
ないことなのだろうか、それとも大穴なのだろうか。
870132人目の素数さん:2008/06/27(金) 23:26:38
皆さんありがとうございます。
少しは自分できちんと調べられるようになります。
871132人目の素数さん:2008/06/27(金) 23:37:01
>>867
あ〜勘違いですよ
質問者ではないので、質問者を責めないであげて。

単に冗長だなと思っただけ。
872132人目の素数さん:2008/06/28(土) 01:02:05
867はネット初心者だから
沢山の人間が書き込んでいるとは
想像できていなかったんだ、
許してやってくれ。
873132人目の素数さん:2008/06/28(土) 10:18:19
ここ数レスでsageてないのが質問者だけだったから>>867が勘違いしたんだろ
874132人目の素数さん:2008/06/28(土) 17:26:47
常識ねーなあ>>867
875132人目の素数さん:2008/06/28(土) 17:38:54
反省しろよ?>>867
876849:2008/06/28(土) 18:22:41
教えて
877132人目の素数さん:2008/06/28(土) 19:29:22
逆変換すれば?
878849:2008/06/28(土) 20:08:47
そもそも変換後の値を取り出す方法が分からない
それが分かれば再変換可能
879849:2008/06/28(土) 20:09:12
ごめん逆変換
880132人目の素数さん:2008/06/30(月) 11:03:23
867だが、勘違いだったようだ、スマンカッタ。
罪滅ぼしに、160 <= hoge < 170が出来ない理由を書いておく。
算術演算子なら、演算子の優先度に基づいて左から解釈されていく。
このとき一つ一つの演算結果は数値だ。一方比較演算子はbooleanが結果になる。
例で言うと (160 <= hoge) < 170 で括弧の中身を比較したあとに < 170 の演算を
やるわけだが、括弧内の結果(T/F) と数値の比較はできない。T を1と強制変換
したとしても、それは hoge < 170 の比較ではなくなるので意味が無い。
このため、コードが人間からすると冗長になるのは仕方が無い。
881132人目の素数さん:2008/06/30(月) 19:10:31
>>880
> 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
882132人目の素数さん:2008/06/30(月) 19:24:55
また開発会社が身売りされた
883132人目の素数さん:2008/06/30(月) 20:16:16
>>881
それを>866はコードが冗長だといっているのでは?と思ったのだが。
出来ない訳ではないのは分かっているし、もっと単純にやる事も出来るでしょ。
sum(hoge * (hoge >= 160) < 170)
で出来る。これにしても、人間にとっては冗長だと思うけど。
884132人目の素数さん:2008/06/30(月) 21:11:30
>>883
欠かれたコードが冗長と言っているのでなく、
そもそも冗長になってしまう言語面の問題を
言いました。
用意すれば良いのは分かっているのですが。

かといって、テクニックで短くなるの自分だけが
見る時以外は良くないし。
少々冗長でも分り易ければいいんですが。

基本的には、言語として人に優しくないなと思ったまでです。
885132人目の素数さん:2008/06/30(月) 21:14:20
>>882
お!主語が抜けてた。再度

またS-PLUSの開発会社が身売りされた
886132人目の素数さん:2008/06/30(月) 21:59:37
プログラミング言語は自然語にはどうやっても成れないだろうな、と思う。
887132人目の素数さん:2008/06/30(月) 22:40:11
ちょっと、そう思っただけで
あまり大げさに考えないでください。
逆いえば、まだまだ考えるべき世界が残っている
ということですし。
888132人目の素数さん:2008/07/01(火) 03:58:52
関数定義はできないのか?
889132人目の素数さん:2008/07/01(火) 10:53:45
890132人目の素数さん:2008/07/04(金) 03:00:58
述語論理のライブラリあったと思うが
根気が要るだけで不可能と決まってはいないよね
確か研究者も居て今最中だと聞いたことがある
891132人目の素数さん:2008/07/04(金) 06:21:56
>>888

>>881 でも関数定義してるよ
どちらかと言えば、関数定義しながら
作っていく言語
892132人目の素数さん:2008/07/04(金) 18:47:40
たとえば

foo<-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 です。
893132人目の素数さん:2008/07/04(金) 18:59:00
>>892
っていうかwikiのどこかにそれ書いてあると思うけど。
894892:2008/07/04(金) 22:28:12
>>893
書いてあるのか!そうか、方法はあるんだな。良かった。
でもな、調べるにしても既に検索ワードのネタ切れでな....。
895132人目の素数さん:2008/07/04(金) 23:40:59
896132人目の素数さん:2008/07/05(土) 17:41:11
すみません、標準偏差の求め方を教えて下さい。
897132人目の素数さん:2008/07/05(土) 17:43:47
すみません間違えました。分散の方です。
898892:2008/07/05(土) 22:01:32
>>895
できたよありがとうウァァァァァァン!!!!!
899132人目の素数さん:2008/07/07(月) 16:04:57
教えてください。

R初心者なんですが、Rcmdr使ってるんですけど
このパッケージで探索的因子分析ってできますか?
因子数を最初に決めるのが困難なですが・・・。
900132人目の素数さん:2008/07/13(日) 20:03:53
しばしば
Error: 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
です。
どのようにしたら回避できるでしょうか?
901132人目の素数さん:2008/07/15(火) 19:21:55
すみません
redhatに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形式でしたが。。)

エラー内容を読み解くことすらできません・・どなたかわかるかたいらっしゃいませんか?
902132人目の素数さん:2008/07/15(火) 20:27:07
>>901
普通はグラフィックディバイスを開いてからplot()を使うので、グラフィックディバイス
を開かずにいきなりplot()すれば、エラーが出て当然だけど、それでもpdfを吐いてくれる
んだ。親切な仕様だな。
?pdf
?png
?postscript
あたりを読む。
903132人目の素数さん:2008/07/16(水) 01:21:04
R-tips高かったのにすごくわかりにくいorz
読み解く根性がないと言われたらそれまでだけど・・・
R-tipsの前におすすめの入門書とかないですかね。。。
904132人目の素数さん:2008/07/16(水) 09:57:51
>>903
筆者がR-tipsがわかりにくいという評判なので、もっとわかりやすいのを書いたと
言っているデータ解析環境「R」―定番フリーソフトの基本操作からグラフィックス、統計解析まで-
ttp://www.amazon.co.jp/dp/4777511847
を薦めている。「Rによるデータサイエンス」もお薦め。
905132人目の素数さん:2008/07/16(水) 12:39:59
>>904
親切にどうもです
今日本屋で見てきます。
906132人目の素数さん:2008/07/17(木) 15:43:46
主成分分析について質問です。
prcompで主成分分析したときに出てくる値というのは、
分散共分散行列による主成分分析の値ですよね?
この青木先生のページ(ttp://aoki2.si.gunma-u.ac.jp/R/pca.html)
にあるpcaと言う関数の主成分負荷量とはいったい何の値なんでしょうか?
prcompで主成分分析したときの値とだいぶ異なりました。
相関行列による主成分分析の値かと考えたんですが計算したら違うようなので・・・
また、普通主成分分析をするとしたらどちらの値を指すのでしょうか?
907132人目の素数さん:2008/07/17(木) 19:48:17
あげ
908132人目の素数さん:2008/07/18(金) 00:16:09
>>906
固有ベクトルは長さが1で負荷量は長さが固有値という違いですね。

分散共分散行列に基づく主成分分析は変数の測定単位が同じである必要が
あるけど相関行列に基づく方はこだわらなくてよいので青木先生は初期設定を
そちらにしてるのかな。
909906:2008/07/18(金) 22:40:26
>>908
なるほど。
prcompの方は分散分析行列によるもので長さが1の固有ベクトル、
青木先生のpcaは相関行列によるもので長さが固有値の負荷量ということですね。

でも今使ってるデータをprcompとpcaで解析すると、
第一主成分の係数の符号は同じなんですが、
第二主成分以降の係数の符号が違くなります。。。
(符号が反転してるわけではないので、たぶん主成分の順番が入れ替わってます。)
分散分析行列に基づいた解析と相関行列に基づいた解析では
主成分の順番が入れ替わることはありえるのでしょうか?
それともやり方が何か間違っているのでしょうか・・・?
説明が下手ですいません
910132人目の素数さん:2008/07/19(土) 21:37:11
>>909
分散共分散行列に基づく主成分と相関行列に基づく主成分は
大きく異なることも多いです。特に分散共分散行列に基づく主成分で
第1主成分が総合効果の場合、相関行列ではそれが消えてしまいます。
つまり順番だけとは限りません。
911132人目の素数さん:2008/07/20(日) 04:12:32
Rjp Wiki アーカイブスの2.2 箱型図に平均+標準偏差範囲を矢印で加える
に関して教えていただきたいのですが、サンプルプログラムを走らせても
> boxplot2()
windows
2
と表示されるだけで、図が作成されません
何か問題があるのでしょうか?
どなたか、どうぞよろしくお願いします
912132人目の素数さん:2008/07/20(日) 12:39:57
>>910
なるほど、全然別のものになってしまうんですね。
疑問が解決しました、ほんと丁寧にありがとうございました。
913132人目の素数さん:2008/07/28(月) 10:44:55
二年十八日十三時間。
914132人目の素数さん:2008/08/03(日) 22:30:29
統計の本を読みながら、Ruby でシコシコ書いて実践していたんだけど、
Excel 用の統計本を買ったら、統計関連関数が山ほどあって、
Ruby から Excel 関数を利用することを試みつつ、
相関、推定、検定と書いてきて、重回帰分析で Excel 関数を使うか、
Ruby の Matrix を使うか、しばし熟考・・・・・
これはムダだと、ようやく気づいた。
「なんか、あるだろ、統計ソフトが」
んで、ググって、ここに来たよ。
マジですごいなコレ(R)。
文法が変だと思ったけど、慣れだな。
自力でやっていたことはムダではなかった。
R の変数名、関数名、引数を見るだけで、もうやりたいことがわかるし。
Web 上に情報がてんこ盛りだし。ありがてー ・゚・(ノД`)・゚・
915132人目の素数さん:2008/08/04(月) 04:22:33
>>914
文法は、Cの皮をかぶったLISPだから。RUBY屋ならすぐになれると思うよ。
916132人目の素数さん:2008/08/05(火) 16:41:38
Rによるやさしい統計学って本片手にいじってるけどおもろい
共分散構造分析がやりたいんだけど他の参考書と比べても充実してるし
豊田秀樹先生もRによるSEMマニュアル出してくんないかな
917914:2008/08/05(火) 22:23:08
>>915
>文法は、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.
918132人目の素数さん:2008/08/06(水) 21:39:49
>>916
いいですよね、その本。
私も買ってしまいました。
大学の教授の研究室にもありましたよ!
919132人目の素数さん:2008/08/10(日) 17:23:21
そんな高くないんだからアマゾンででも買っとくといいぞ
920教えてください:2008/08/11(月) 15:21:15
R初心者です。
例えば次のようなデータ(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

どうぞよろしくお願いいたします。
921132人目の素数さん:2008/08/11(月) 22:42:20
> z <- c(120,201,150,96,115)
> zc <- ifelse(z<100,"A",ifelse(z>=100 & z<150,"B",ifelse(z>=150,"C",NA)))
> zc
[1] "B" "C" "C" "A" "B"
エクセルと同じかな?
922132人目の素数さん:2008/08/11(月) 23:12:14
> z <- c(120,201,150,96,115)
> 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"
なぜなのか教えて
923132人目の素数さん:2008/08/11(月) 23:51:56
Rは知らないが
これみると
"A","B","C"という値は、"150"より
大きいということでしょう。

HEX出力してみるとそうなってんじゃないかな。
924132人目の素数さん:2008/08/12(火) 02:40:11
>>922
> 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のいうように文字列比較になってしまいうまくいかない。

925教えてください2:2008/08/12(火) 07:41:22
ありがとうござます。データが多いときは、例えばdata=(X,Y,Z)のときはどうすればよろしいでしょうか?

条件文を
> 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)ができますか?
すみませんまた教えていただけませんか?よろしくお願いします。
926132人目の素数さん:2008/08/12(火) 11:51:07
>>925
recodeするときは、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

927132人目の素数さん:2008/08/13(水) 14:16:12
t検定表を見る代わりに、Rに出力させたいのですが、どうすればできますか?
928132人目の素数さん:2008/08/14(木) 08:46:30
自己解決しました。
信頼係数95%のときに、自由度10の両側有意水準は、以下のようにして得られる。
> qt(0.975,10)
[1] 2.228139
> qt(0.025,10)
[1] -2.228139

929132人目の素数さん:2008/08/15(金) 17:51:35
パッケージkernlabの二次計画ソルバーipop使ってる人いますか?

二つの変数があるときの二次計画をときたいのですが。。
ipopでは無理なのでしょうか?

930教えてください2-1:2008/08/15(金) 22:32:45
>>926 ありがとうございます。
ifelseよりシンプルに書けそうですね。
申し訳ありませんが下の2行の翻訳をお願いいます。

> z <- cut(z,c(-Inf,100,150,Inf),include.lowest=TRUE)
> levels(z) <- LETTERS[1:3]
A、B、Cの指示はどの部分ですか?
よろしくお願いします。

931132人目の素数さん:2008/08/16(土) 04:45:38
>>930
LETTERS[1:3]
932926:2008/08/16(土) 21:33:49
>>931
代返ありがと
>>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

933教えてください2-2:2008/08/17(日) 10:37:05
<<932 ご説明ありがとうございます。
data=(X,Y,Z)の中でZについてある範囲でいくつかに分類したかった
ので質問させていただきました。
これまではsubset()を何度も繰り返していました。
cbind()はとても便利そうですね。助かりました。
934教えてください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のとき緑丸とするにはどのようにしますか?

どうぞよろしくお願いいたします。
935132人目の素数さん:2008/08/18(月) 03:54:23
>>934
もはやあなたを相手しているのは私だけのような気がするが、
> 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は自分で考えてみなさい
936132人目の素数さん:2008/08/18(月) 18:52:15
超基本的なことかもしれないんだけど、
> 123.05 - 123.02
[1] 0.03
> (123.05 - 123.02) == 0.03
[1] FALSE
で、FALSEが返ってくるのは、なぜ?
色々本を見たんだけど、どこにも理由が出ていないし・・・
俺のOSX版だけかな。
937132人目の素数さん: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
などとする。
938132人目の素数さん:2008/08/18(月) 20:48:46
間違った、こっちの方が良いな。
>abs(1.0 - 123.02/123.05 - 0.03/123.05)< 1.0e-15
939132人目の素数さん:2008/08/18(月) 20:53:12
>>936
いいところに気がついたね。数値計算の世界にようこそ。
> (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ユー
ザは、きちんと考慮してプログラムを作るべき
940132人目の素数さん:2008/08/19(火) 04:14:30
>>937
>>938
>>939

ご親切なご指導ありがとう後います。
何となく浮動小数点関連ではないかなと考えていたのですが
思ってたより、誤差が入ってしまうので正確に計算するのは難しそうですね。

とりあえず、最大小数点二位までのデータなので
全てのデータを百倍して、整数域で扱うことにしました。
ありがとうございました。
941132人目の素数さん: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を使えばよいでしょうか?
また他にやり方があれば教えていただけないでしょうか。。
942132人目の素数さん:2008/08/27(水) 00:45:41
>>941
その答えと同じにするなら

VV<-paste(V2,"-",V3)
unique(VV)

とするとよいが。
943132人目の素数さん:2008/08/27(水) 11:53:31
Ubuntuのリポジトリに新しいr-base-coreとr-recommendedが来た。
2.7.2だな。
944943:2008/08/27(水) 11:54:43
s/リポジトリ/CRANのリポジトリ/
945132人目の素数さん:2008/08/30(土) 03:07:30
single-case design などに使える Rondamization test の
パッケージってどこかにないでしょうか。
パッケージ名等ご存じの方がいましたら教えてください。
946132人目の素数さん:2008/09/06(土) 19:08:24
Rの出力
------------------------------------
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"等をここのセルに整列する方法)
947132人目の素数さん:2008/09/06(土) 20:21:43
>>946
write.csv()
948132人目の素数さん:2008/09/06(土) 22:05:38
>>947
忙しいなか、初心者の質問にお答え頂きありがとうございます。
------------------------------------
> 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にしてテキストファイルウィザード
から読んだ方が忠実に再現されるように思います。生意気言ってすみません。
949132人目の素数さん:2008/09/07(日) 15:48:27
946ですが、947様のお返事を見て
------------------------------------
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表として貼り付くと考えました。素人考えですが・・・。

そんな関数ない、もしくは簡単には作れないですかね。
950132人目の素数さん:2008/09/07(日) 16:44:43
946ですが、自己解決しました。
EXCELに貼り付けてから「[区切り位置] コマンドを使用してデータを区切る方法」
ttp://support.microsoft.com/kb/214261/ja
板汚し礼しました。(しかもスレチ?)
>>947
有用な情報、ありがとうございました。逝ってきます。
951132人目の素数さん:2008/09/14(日) 22:37:50
R Tipsもう売ってないやんけ orz
新版マダー?
952132人目の素数さん:2008/09/14(日) 22:48:07
>>951
発行元の九天社が倒産したからね。
ここを見ればほとんど補えるよ↓
http://cse.naro.affrc.go.jp/takezawa/r-tips/r.html
953132人目の素数さん:2008/09/14(日) 23:16:04
age
954132人目の素数さん:2008/09/20(土) 22:10:26
ほとんど知識の無いまったくのR初心者なのですが私にも使えるようになるでしょうか?
955132人目の素数さん:2008/09/20(土) 22:15:52
>>954
最初は誰もが初心者
956954:2008/09/20(土) 22:21:03
私は学生なんですが授業でRを使うんですよ
単位を取るとなるとそれなりの知識がないと厳しいのではないかと思い・・・
回帰分析などといったことをやるそうです
957132人目の素数さん:2008/09/26(金) 23:45:10
それなら必要な知識は統計の知識のような気もしないでもない。
958132人目の素数さん:2008/09/28(日) 14:36:32
Rjp Wiki って何であんな排他的雰囲気なんだろうか。
傍から見てるとすごい心証わるいんだが。
959132人目の素数さん:2008/09/28(日) 15:05:04
ほんとだね
アレは改めないとダメだね
960132人目の素数さん:2008/09/28(日) 20:09:12
実務を知らない学者の集まりだから
961132人目の素数さん:2008/10/05(日) 14:44:50
>>956
Rによるやさしい統計学って本がお勧め
統計学初心者でもR初心者でも取っ付きやすいと思う
962132人目の素数さん:2008/10/06(月) 22:51:11
3.45%という文字列を0.0345という数字に変換する方法を教えてください。
963132人目の素数さん:2008/10/07(火) 02:11:24
繰り返し文を使って大量にグラフを出力したいのですが、for文で使う変数をファイル名に取り込むときはどうやればいいいですか?

シェルでいう
i=1
filename="${i}.png"
の${}です・
964914:2008/10/08(水) 18:38:15
>>963
>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
965914:2008/10/08(水) 19:22:55
「R によるやさしい統計学」の感想
(1) ○
 第6章 2つの平均値を比較する
 第7章 分散分析
 複数の標本、対応のあるなし、3つ以上の平均値の比較
 などが、連続的に扱われていて、非常にわかりやすい。
(2) ◎
 第18章 人口データの発生
 第19章 検定の多重性と第1種の誤りの確率
 第20章 検定力分析によるサンプルサイズの決定
 この説明の順番は、すばらしい。
(3) ×
 第4章 母集団と標本
 第5章 統計的仮説検定( の最初の数ページ )
 序文(vi)の「対象となる読者」が、この部分を理解できるとは思えない。
 初心者に、確率変数、確率分布の説明が不十分。
966132人目の素数さん:2008/10/08(水) 19:57:14
あのぉ・・・

3.45%という文字列を0.0345という数字に変換する方法を教えてください。

不可能なのでしょうか?
967914:2008/10/08(水) 21:15:02
>>966
>3.45%という文字列を0.0345という数字に変換する方法を教えてください。

こんな感じかな

> s="3.45%"
> n=as.double(substr(s, 1, nchar(s)-1))/100.0
> n
[1] 0.0345
968132人目の素数さん:2008/10/08(水) 22:56:01
Σ(-ロ-)スマートにはいかないみたいですね。

ありがとうございました。
969132人目の素数さん:2008/10/08(水) 23:12:02
質問者ではないですが、
おそらく、データを取り込むときに
xx.x% 書式を小数データに自動変換する
機能があるんじゃないだろうか。
どこのソフトにもあると思うので、Rにもあるのではないかな
だれか知らない?(R知らないもので)。
970132人目の素数さん:2008/10/09(木) 04:02:25
>>964
ありがとうございます。
971914コテ最後:2008/10/09(木) 18:57:44
>>968
>Σ(-ロ-)スマートにはいかないみたいですね。
以下は、最近話題ノ全国テスト、都道府県別の「数学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
972132人目の素数さん:2008/10/09(木) 22:18:56
むむむむむ・・・・なんというか
ふ〜結構面倒
973132人目の素数さん:2008/10/09(木) 22:29:49
やっぱり学習用かな。。
974132人目の素数さん:2008/10/09(木) 23:12:30
> rmpercent <- function(x){x<-as.character(x);as.numeric(substr(x,1,nchar(x)-1))/100}
> 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

975132人目の素数さん:2008/10/09(木) 23:39:40
> tmp1[,2] <- rmpercent(tmp1[,2])
最初からこういうの用意されていないんだろうか?ありそうな気もするが

> rmpercent <- function(x){x<-as.character(x);as.numeric(substr(x,1,nchar(x)-1))/100}
%なら100で割ること決まって居るし、この行はなくても良いくらいだよね。
利用言語というよりアルゴリズム作り用なんだろうな、でも余分が多い。
でも、そうだから仕方ないんだけど

回答頂いた方への不満ではありませんので。もうしわけありませんでした。
ありがとうございます。

976132人目の素数さん:2008/10/10(金) 01:02:16
詳しい人に質問。15年ほど前、大学2年の一般教養で
東大出版会の統計学入門を種本にした授業で単位を取った。
なぜか統計学入門は楽しく読めて、独学して一応
わかった「つもりになった」が、就職後、統計学と疎遠になったら
ほとんど全部忘れてしまった。
で、このたび仕事で必要になったんだが、予算上SASやSPSSには手が出せず、
Rの存在を知って早速インストールし、
関係サイトをあちこち見て回って勉強し直しているのだが、
もしかして、1991年刊の統計学入門で取り上げられている手法は、
WindowsXPがサクサク動くパソコンでRが使える時代には
もう古くさいものが少なからず含まれているのではないか?
977132人目の素数さん:2008/10/10(金) 07:19:07
>>976
手で電卓たたいて計算する必要はないんじゃないか?という意味なら
その通りだが、それは1991年でも同じ。教科書は学習用。
統計学を学習するということにおいて統計学入門はまだいい本だと思うよ。
978974
>>975
自分にとって使いやすい統計ソフトであるかどうかという以前に、オープンソースとは何かという視点を
持った方がよいと思うぞ。必要性を感じた人が必要な機能を付加する(付加できる)ということは、逆に
言えば、あなたが欲しい機能が実装されていないのは、誰も必要と考えていないから。あなたが必要なら
あなたがrmpercent()のように追加すればよい。

私自身は%を少数に変換する必要性を感じたことがない。表計算ソフトで%表示されいても実態は小数デー
タだし、CSV経由で読み込んだらnumericになっている。