RjpWiki自体へのコメントでも、雑談でもOKな掲示板です

注意:新規記事用の入力欄は以下の目次の直後にあります。各記事への追加コメントの入力欄は、各記事の後にあります。


過去の記事のアーカイブ 。アーカイブ中の記事への追加コメントは自由です。ただしあまり古い記事の場合は、最新の「なんでも掲示板?」に新規に項目を立てられた方が良いかも知れません。



回答を期待する記事は原則 質問コーナー Q&A にお願いします。「なんでも掲示板」はそれ以外の本来の(長めの)コメント専用にすることを提案したいと思います。




経済学における統計的有意の記号

y.a.? (2004-11-23 (火) 01:01:55)

Q&A (初級者コース)にて,経済学の記号のつけ方の慣習に激しく異議が唱えられましたので,不安になって少し調べてみました.
結論から言うと,人やジャーナルによって異なるものの,特にトップジャーナルを中心に「t値を示して記号はつけない」派が主流であるという暫定的な結論を下しました.

ただ,

cutpoints= c(0, 0.01, 0.05, 0.1), symbols = c("***", "**", "*")

記法は,少なくとも経済学の分野には少なからず存在はするといえると思います.

以下,経済学のトップジャーナル群の論文,掲載予定論文からの例です:

1) t値を示して星はつけない(でもp値はつけない)派

  • 統計学の大口ユーザーである心理学等でも類似の慣習があるのでしょうか?気になってきますね。 -- 2004-11-25 (木) 16:09:33
  • うちの学部の経済関係の先生も,t値は書くけどP値は書かない派ですね。「2より大きければ有意」なんて判定するそうだ。おおざっぱやね〜
    某誌(医学系)に載ったチュートリアルで
    + または △: p < 0.1     傾向あり,傾向差
    *: p < 0.05    有意差あり
    **: p < 0.01    明らかな差あり
    ***: p < 0.001   著明な差あり
    というのがあり,+とか△はいかがなものか?とおもったら,心理関係では使うそうな。 へ〜。郷に入らば郷に従えか -- 2004-11-25 (木) 18:58:51
  • Rを離れて雑談になってしまうのですが、「統計的検定(は使い方が難しいので)をなるべく代替手段を使おう」という論説もありますね。たとえば The Insignificance of Statistical Significance Testing. その日本語の抄録(すばらしい!)が統計学的な有意性検定の意味のなさ。個人的には統計的検定もそれ以外の手法も場合に応じて使い分けるのがいいのではないかと思います。以上、ご参考まで。-- 矢野? 2004-11-25 (木) 22:53:03

R からキーワード検索する関数 (from r-help)

QDU? (2004-11-20 (土) 20:51:33)

今日の r-help に面白い関数が紹介されていましたので紹介します。R の検索サイト rking に接続して、キーワード検索する関数です。具体的には検索結果をブラウザーに表示する仕掛けです。

help.search.archive<-function(string){
  RURL="http://www.google.com/u/newcastlemaths"
  RSearchURL=paste(RURL,"?q=",string,sep='')
  browseURL(RSearchURL)
  return(invisible(0))
}

たとえば help.search.archive("plot3d") を試してみて下さい。

  • やはり r-help 投稿の同様の関数: -- QDU? 2004-11-25 (木) 15:12:43
Inspired by the functions that Barry Rawlingson and Dave Forrest posted for
searching Rwiki and R-help archive, I've made up a function that does the
search on Prof. Baron's site (Thanks to Prof. Baron's help on setting up the
query string!):

RSiteSearch <- function(string, restrict="Rhelp", format="long",
                        sortby="score", matchesPerPage=10) {
    URL <- "http://finzi.psych.upenn.edu/cgi-bin/htsearch"
    qstring <- paste(URL, "?config=htdigrun1", sep="")
    ## replace spaces with "%20" in the query
    string <- paste("words=", gsub(" ", "%20", string), sep="")
    mpp <- paste("matchesperpage=", matchesPerPage, sep="") 

    format <- charmatch(format, c("long", "short"))
    if (format == 0) stop("format must be either long or short")
    format <- paste("format=builtin-", switch(format, "long", "short"), sep="")
    sortby <- charmatch(sortby, c("score", "time", "title", "revtime"))
    if (sortby == 0) stop("wrong sortby specified")
    sortby <- paste("sort=",
                    switch(sortby, "score", "time", "title", "revtime"),
                    sep="")                     
    res <- charmatch(restrict, c("Rhelp", "doc", "function", "doc/fun"))
    if (res == 0) stop("wrong restriction specified")
    res <- switch(res, "Rhelp00/archive|Rhelp01/archive|Rhelp02a/archive",
                  "finzi.psych.upenn.edu/R/doc",
                  "finzi.psych.upenn.edu/R/library",
                  "finzi.psych.upenn.edu/R/doc|finzi.psych.upenn.edu/R/library")
   res <- paste("restrict=", res, sep="")
   qstring <- paste(qstring, res, format, sortby, string, mpp, sep=";")
   browseURL(qstring)
   invisible(qstring)
}

The options roughly correspond to the options on that search page.  Hope
some people find this somewhat helpful.  Comments/suggestions for
improvement are much appreciated.

Best,
Andy

The hidden costs of GPL softwares

間瀬茂 (2004-11-18 (木) 22:54:56)

今日の R-help は表題の投稿への反応で盛り上がりました。いずれも英語いっぱいで全部を読む気になりませんが、最初の投稿の要旨は R のような GPL ソフトに対しては商用のかっこ良い GUI インタフェイスが提供されないから、学習コストが高いという不満のようです。賛成意見もありましたが、R-help の主要投稿者は多く CUI 方式の熱烈支持者ですから、議論はかみあいません。GUI 方式はとっつき易いが所詮それだけだなどと。R のヘルプ機能の unfriendliness も嘆きの的のようです。これは Unix 関係のオンラインヘルプと同列ですね。すでに内容を知っている人にはとても役に立つが、初心者にはほとんど混乱の源。しかし初心者にもわかり易いヘルプは、結局初心者だけにしか役立たないものになりそうですから、これを開発者に求めるのは筋違いでしょう。結局 R は万人のための統計ソフトにはなりそうもありません。「無料だから」つかうのではなく「自分が何をやりたいのか弁え、そのための努力は惜しまない」人用のソフトに留まるのではと思います。

  • 他のソフトと比較するのは良くないことなのかもしれませんが,SAS のヘルプは構文と多少の説明が載っているだけで例がないことがほとんどです(マニュアルもテキストも満足なものがありませんので,結局,1日ウン万円の講習を受けて学習することになります).昔から使われていて,非常に高価で,ある方面では誰もが使っているソフトですが,ヘルプは非常に不親切です.
    ヘルプが充実していて使いやすいといえば Mathematica ですが,R と違うのは GUI で関数名を入力することができるのと(Rの関数 help(),Windows版なら GUI から入力可),ヘルプ中の「See Also」がhtmlのリンクのようになっていて,クリックするだけで見ることが出来るようになっている点です.(「ヘルプが日本語じゃない!」という突っ込みはご遠慮下さい…).
    ヘルプに関して云えば,R のヘルプは関数の構文と引数の説明,似た機能の関数一覧と参考文献,そして例まで載っていますから,それほど悪くないと思います.GUI に慣れていない人が,コマンドライン入力が中心の R を使いこなせず,「使いにくいのはヘルプのせいだ!」ということにはなっていませんかねぇ….
    これは私の勝手な意見ですが,「学習コストが高い」のは「かっこ良い GUI インタフェイスが提供されないから」ではなくて,入門書の類が少ないのが原因だと思うのですがいかがでしょう?書店には膨大な数の EXCEL の本が並んでおり,「はじめての!」「500円で分かる!」「土日でマスター!」的な本が多数揃っておりますが,これが EXCEL の浸透率と相関が無いとは考えにくいのではないでしょうか? -- 舟尾? 2004-11-21 (日) 13:46:05
  • ある集会で「SASの日本語化をしましょう」という趣旨の講演があったそうです。そのためのボランティアを募るという趣旨だったようです。びっくりしたのは、呼掛けをしたのがSASの関係者だったと聞いたからです。少し虫が良過ぎますね。それ以上にびっくりしたのは、SASがまだ日本語化されていないらしい(私は使ったことがないので真相はわかりません)ということでした。シェアにあぐらをかいた殿様商売なのでしょうか。(又聞きなので細かいニュアンスについては保証の限りではありません。)舟尾さん著の「始めてのR!」「500円でわかるR」「土日で R をマスター!」三部作を期待しています :-)。 -- MKR? 2004-11-21 (日) 18:44:44
  • SASのGUIメニューや基本的な計算のアウトプットは日本語化されていますが,多少マニアックな統計手法を計算したり,ヘルプを見たりしますと,途端に英語になってしまいます(SASのユーザー会SASの翻訳プロジェクト があります).主要なマニュアルについては日本語化されていますが,日本語化されていないマニュアルも多数あります.企業といえど,英語版の拡張速度に日本語化の速度が追いついていません(「1年リースでウン十万も取っておいて!」という突っ込みはご遠慮下さい…).同じ様な状況は S-PLUS でも起こっているようです.-- 2004-11-22 (月) 12:27:24
  • 船尾さんがおっしゃるEXCELのクッキング本とつながりますが,SASであれば,分析手法の説明(数式最小限)+生データで説明しているホームページ(http://www.ats.ucla.edu/stat/sas/)や本が充実しています.一方,Rであると,文科系には難しい表現のものが多い気がします.例えば,R-Helpで関数の使い方や定義式がわかっても,「直感的にどのような原理で計算されているのか?」「自分のデータに,ある分析手法を正しく適応するには,何に気をつければ良いのか?」「報告書には,ソフトウェアで算出される統計量のどの部分を掲載すれば良いのか?」ということの説明が足りていない気がします.もちろん,これらはマニュアルに掲載するような内容ではないと思いますが・・・.あと,Rに関する説明はパソコンのキャリアが長い人が書いているのが原因か,UNIXやLINUXに慣れている人向きな気がします.一方,多くのWindowsユーザーはブラインドタッチもおぼつかず,ショートカットキーも知りません.「ブラインドタッチから説明するR本!」があれば人気が増大するかと・・・. 参考までに,上田・ 苅田・本田(2003) EXCEL徹底活用多変量解析.秀和システム. p.316-321.では,どのような特徴・内容にすれば満足度が高くなるかコンジョイント分析で調べた調査結果があります.そこでは,「理論も少し入っていて,1週間でマスターできる110ページで,カラー印刷で,価格は1600円,教材データはCD-ROMで付いてくるのが良く,練習問題のレベルは難問が少し入っていて,イラストが少し入っていて,グラフはEXCELのみの機能で作成する」本が,最も満足度が高くなると報告されています(なかまさんご指摘ありがとうございます).[学生];
  • linux,*BSD,glibc,readline,gzip,bzip,XOrg,gcc,libgoto...R. いやはや感謝こそすれ,もんくなんぞございません.(合掌) -- なかま 2004-11-22 (月) 14:49:01

S-Plus や R の関数のカテゴリー化された検索システム

間瀬茂 (2004-11-18 (木) 17:42:15)

r-help に S-Plus や R の膨大な関数を用途別にカテゴリ化した検索システムが紹介されていました。便利そうですので紹介します。リンク集にもメモしておきました。~

S-Plus/R Function Finder


R 2.0.1 for VineLinux 3.0

谷村 (2004-11-16 (火) 20:39:12)

本家(CRAN)にR-2.0.1-0vl1.i386.rpmをputしました。これはオリジナル版です。日本語版が必要な方は、なかまさんのサイトから入手して下さい。


どこかでみたような

なかま (2004-11-14 (日) 00:55:59)

中文TeX
ユーザー数ってどれくらいいるんでしょ.

  • びっくりしましたね。ただ、先月中国の集会に参加した時印象的だったのは、日本留学組が結構いて、日本語を理解する研究者が結構存在することでした(当たり前ですが)。教訓、日本語(日本国内)での議論も、公開されている以上外国からも読まれている可能性が非常に高いことを意識すべきでしょう。 -- 間瀬茂 2004-11-14 (日) 08:23:26
  • 本当にすみませんでした。この文章(Rを薦める100理由)は、私が転載したです。面白いと思って友達に薦めたんです。勝手に文章を引用することはすみませんでした。(謝罪っていう気持ち(++))。今、すぐ消します。 -- jamlie? 2004-11-15 (月) 10:30:49
  • 消す必要はないと思いますが(^^;。中国語になってる!のが面白いと思いと思ったもので。って言うか喜ばしい話なんではないかと。 -- なかま 2004-11-15 (月) 10:34:39
  • どうせこちらも「無断」引用しまくっていますから、お構い無く。中国でも、R がどんどん広まるといいですね。 -- 間瀬茂 2004-11-15 (月) 17:06:36
  • 日本語のサイトを中国の人が読めるということは、逆もまた真なりということですね。私は中国語は理解できませんが、多少理解する女房に野次馬根性で訳して貰ったら、私の R の日本語訳が良くないと批評している(?)記事があるらしく、驚きました。「良くない」と批評されたことには全く同感で驚きませんが、私の日本語訳に目を通している中国の方(留学生か、かっての留学生?)がいらっしゃるということに新鮮な驚きを感じました。jamlie さんどうか気にされないで、私はこの件楽しんでいますから。 -- 間瀬茂 2004-11-16 (火) 22:48:39
  • 批評してる(?)のは日本人のような気がしますが...(^_^; -- なかま 2004-11-17 (水) 01:01:00
  • よしよしさんの「良くない」っていう発言は、不偏推定値ではなく、偏りがありますね。棄却域に入り、批判無効!(^_^g -- jamlie? 2004-11-17 (水) 16:20:59

Rで物理乱数

垂水共之? (2004-11-10 (水) 17:21:09)

FDKという会社がUSB接続の物理乱数発生器を製造しています。
Windows版のRで使えるようにDLLも作ってもらいました。
Rユーザーの方はサポートCD-ROM特別サンプルも手に入れてください。

  • おお、すばらしいですね! -- 2004-11-12 (金) 08:16:32
  • はたして、お小遣いで買える物なのでしょうか...(^^; -- なかま 2004-11-13 (土) 23:36:48
  • 小遣いではちと高いですが、3万程度と聞いています -- 垂水? 2004-11-14 (日) 07:19:39
  • set.seed(xxx) は原理的にできないわけですね。 -- 2004-11-14 (日) 08:25:58
  • 生成速度がHPには公表されていませんがどれくらいなのか一寸気になりますね。 -- 2004-11-14 (日) 11:48:38
  • ありがとうございます。3万がんばり(なにを?)ます。 -- なかま 2004-11-15 (月) 00:00:43
  • 内蔵してますRPG100の乱数生成速度は250kbits/sのようですよ。 -- R初心者? 2004-11-15 (月) 18:21:37
  • ちなみに、販売しているのは「日本テクノ・ラボ(株)」見たいですね。 -- R初心者? 2004-11-15 (月) 18:23:51
  • Random StreamerはSPLUSで使える様です。 -- ななし? 2005-01-21 (金) 17:16:42

かんたんな入力チェックを入れるのは

なかま (2004-11-08 (月) 01:21:09)

--- article.inc.php.orig
+++ article.inc.php
@@ -189,7 +189,24 @@
 	$article_rows = article_ROWS;
 	$article_cols = article_COLS;
 	$string = <<<EOD
-<form action="$script" method="post">
+<script>
+  <!--
+  function isNull(elem,jname){
+    if(elem.value==''){
+      elem.focus();
+      alert(jname+'がはいっていると嬉しいかも.');
+      return true;
+    }
+    return false;
+  }
+  function chkArticle(myform){
+    if(isNull(myform.name,'お名前'))return false;
+    if(isNull(myform.subject,'題名'))return false;
+    return true;
+  }
+  -->
+</script>
+<form action="$script" method="post" onSubmit="return chkArticle(this);">
  <div>
   <input type="hidden" name="article_no" value="$article_no" />
   <input type="hidden" name="plugin" value="article" />


まあ,気休めですが効果はあるかも.

  • ありがとうございます。早速導入してみました:-) -- 岡田 2004-11-12 (金) 17:19:24
  • 無題が減るといいですね.:-) -- なかま 2004-11-13 (土) 23:42:28

R とアメリカ大統領選挙

(2004-11-03 (水) 20:00:03)

 今回も米大統領選挙は接戦ですね。

 今回はオハイオ州が注目の的ですが、R の car パッケージには前回の郡別のフロリダの投票データ(Florida )がありますね。


日本人によるアドオンパッケージ Zelig

(2004-10-23 (土) 14:48:44)

今日初めて気がつきましたが MNP というアドオンパッケージの著者(の一人) の Imai Kosuke 氏(Princeton 大学政治学部) は今一つのパッケージ Zelig の著者の一人でもあるようです。


中国のR事情

間瀬茂 (2004-10-19 (火) 23:28:09)

集会で中国にいって来ました。桂林にある広西師範大学が会場でしたが、日本の大学にひけをとらない新しい建物、プロジェクターを備えた講義室等、噂に聞いていた最近の中国の発展ぶりに驚いてきました。中国側の参加者も備えつけのパソコンや、自前のノートパソコンを使った発表が少なくなく、ここでも日中の差は確実に縮小しているようです。OSは専ら中国版 MS Windows と powerpoint, acroreader でした。私が linux と xdvi で発表を行なったら、中国人学生が関心を持ったらしく、すこし話をしましたが、linux のことを知っていてもあまり使われていない気配で、R のことも全く聞いたことが無いようでした。中間さんの国際化 R もまだまだ中国進出は先のことと感じました。しかし、資本主義化の著しい中国のこと、10年後は全く事情が違っているかも知れません。はて、中国に R を広めるには何が有効なのか?

  • r-helpにあったとおりGB18030で表記できれば広まると思います.日本でも窓用RからみればUnix系は非常に少数派です. -- なかま 2004-10-20 (水) 11:34:16
  • データもグラフ出力も、そのまま中国語(gb2312)は大丈夫です。ただし、pdf()は文字化けです。(>_<) -- jamlie? 2004-10-20 (水) 14:34:45
  • 中国:Linuxは普及せず、ウイルスソフトで国産好調=サーチナ http://nikkeibp.jp/wcs/leaf/CID/onair/jp/it/337613 -- 2004-10-20 (水) 14:45:27
  • うちのサイトに来る怪しげパケット,scanは中国が一番多いのである意味(ベクトルが異なる)普及してるんだと思います.gb2312が大丈夫なのは朗報ですね.emfでExcelにも挿入可能でしょうか?.GB18030はフォントを変えてもダメなんでしょうか?.PDF,eps系は日本語しか弄ってません(すみません)。 -- なかま 2004-10-20 (水) 15:19:30
  • 広西師範大学 って GNU なんですね。(^_^; -- なかま 2004-10-20 (水) 15:23:42
  • そうなんです。Guangxi Normal University。広西チアン自治区の首都(?)で少数民族の教師養成が主目的の大学だそうです。 -- 間瀬茂 2004-10-20 (水) 17:04:16
  • PS. 学内をおっかなびっくり見物していたら、ひとりだけ茶髪の女子学生を見つけて、なんとなく納得。市内でも少数ですが見かけました。それと学食の値段表を見ていたら、一品だいたい 0.5 元(一元=13円)。実際食べてみる機会はなかったのが残念。 -- 間瀬茂 2004-10-20 (水) 17:09:01
  • 広西なんて中国の中でもかなり田舎なんだ!中国の地方差はすごいよ!広西は中国の代表じゃないので、もっとびっくりするところいっぱいあるよ!!^o^ -- 中国人? 2004-11-25 (木) 16:29:07
  • PS.学食の値段も地方によって違うんだよ。上海の学食ならこれの5倍以上はあるよ!日本とは比べられないけど -- 中国人? 2004-11-25 (木) 16:31:18

Mac 版 R 2.0.0

青木繁伸 (2004-10-18 (月) 11:27:03)

まだ筑波大学のmirrorには現れていない
working directry の設定で,メニューからやると設定できないことがある
注釈に日本語を使っている関数のリストを表示する(関数名だけを入力する)と,R が異常終了する
一部パッケージがまだ対応できていない(MASS などが使えない。というか,ない)
環境設定メニューがない(なくてもいいようにはできていないようにおもうが)

というような具合で,R2.0.1の出現を待ちたい。

  • MASS などは,使えました。なぜ昨日使えなかったのか不明だが。終了時に q() で save を選択してもwd が保存できていないような。。。 -- 青木繁伸 2004-10-19 (火) 11:20:49

R 2.0.0 のリリース近し? => ついに公開されました(祝^祝)

間瀬茂 (2004-10-02 (土) 00:17:53)

今日の r-help に R の 2.0.0 に関する問い合わせがあり、R 教授が返答の最後に次のようにメモしています。これって、来週月曜日に R 2.0.0 beta が公開されるという意味でしょうか?

Or just wait for the release on Monday October 4th.
  • 素晴らしい!ついに R もバージョン 2 に突入ですねぇ.Windows ユーザーな私は,デフォルトで「Rエディタ」機能が搭載されているのに惹かれました.(ESSなどを入れていない方も)これで複数行の命令が格段に編集しやすくなります! -- 舟尾? 2004-10-02 (土) 01:27:43
  • 10/4(日本時間10/5の何時頃?)にリリース予定です。betaは既に公開中。 -- なかま 2004-10-02 (土) 12:36:00
  • *nix方面はなんとか構築。うーん、窓用たいへんかも...(T_T)。アーカイブのファイルサイズも10Mに成長。大きなソフトに成長しましたねぇ〜。 -- なかま 2004-10-02 (土) 20:48:56
  • 何かメジャーバージョンアップにふさわしい目玉があるのでしょうか。(いえ、私はどうせ Debian パッケージ化されるまで使(い/え)ませんから、急いで知っても却って悔しいだけですが。) -- 間瀬茂 2004-10-02 (土) 20:53:24
  • 表現が適切かはわかりませんが、地味に細かく*沢山*拡張したのはたしかです。 -- なかま 2004-10-02 (土) 23:10:33
  • パッケージ化待たなくともconfigure,make,make installでもいいのではないかと。ま、aptで管理できないので待った方が良いでしょうけどね。しかしZaurusでセルフコンパイルはいよいよ無理になりそうですね。もうすぐSD高速アクセス対応とCPU強化した新機種が出ると思うんですが・・・。 -- aki 2004-10-02 (土) 23:13:58
  • 2.0 SERIES NEWS によればあっと驚く新機軸は無いようですね。手堅く完成度を高めたというところでしょうか。すこし残念。 -- 間瀬茂 2004-10-02 (土) 23:26:51
  • あのー、日本語バージョンはいつ頃に。(だから金沢に向かって手を合わせなさいってば、と怒られそうですが) -- 2004-10-03 (日) 16:30:14
  • どうせすぐ 2.0.1 もしくは 2.1 に代わりますから慌てる必要もないかも。 -- 2004-10-04 (月) 01:31:54
  • 出ました。http://cran.r-project.org/src/base/R-2 -- aki 2004-10-05 (火) 04:31:09
  • リリースニュースによれば、この版は R に対する革新的な変更ではなく、「成人式 (comimg of age)」版だそうです。-- 間瀬茂 2004-10-05 (火) 08:28:54
As was the case with R 1.0.0, this new version represents a coming of age
more than a radical change to R. We do plan to celebrate the new major version
with press releases and such.
  • r-help でコアメンバーの Dalgaard 氏が次のようにコメントしていました。バイトコンパイル機能はまだ先のようですね。event loop とか formal method とはなにものでしょう。ともあれ、R の進化はまだまだ続くようです。-- 間瀬茂 2004-10-05 (火) 21:48:39
No, I don't think we have arrived (would we want to?). We still
have unresolved issues in byte compiling and event loops, and the
formal methods techniques are only just there now. There's the whole
Bayesianfront, too - important even for us hardcore frequentists.
  • 大変遅くなりましたが、R-2.0.0-0vl1.i386.rpm for VineLinux3.0 を本家にputしました。しばらくしたら公開ディレクトリに移されるでしょう。私自身はなかまさんの日本語版Rを使っていますが、本家版を使いたい方はどうぞ。 -- 谷村 2004-10-14 (木) 19:21:01
  • いつもデバッグ用に(ふと、やっちまった?と思う場合があるので)ありがたく使わさせていただいてます.m(_|_)m -- なかま 2004-10-14 (木) 19:39:54

pukiwiki-mode

谷村 (2004-09-29 (水) 21:57:08)

今日、pukiwiki-modeというものを見つけたのですが、これはemacsから直接PukiWikiに書き込むことができるものらしいです。

ブラウザから書き込むのと比べて効率がよさそうなのですが、どなたか使っていますか?


Rwebに入力された驚くべき物

なかま (2004-09-27 (月) 23:40:17)

たまーにビックリするような物が実行されたりしますんですが、今月の始めのなかに凄いものが入ってました。

[18時 20分 40秒] [緑茶] 1 個を手に入れました。
[18時 20分 41秒] [緑茶] 1 個を手に入れました。
[18時 20分 42秒] [銀杏] 1 個を手に入れました。
[18時 20分 45秒] [緑茶] 1 個を手に入れました。
[18時 20分 52秒] 経験値が 64 上がりました。
[18時 21分 13秒] 経験値が 104 上がりました。
[18時 21分 24秒] コンボで5度目の攻撃に成功すると、コンボフィニッシュが発動されます。
[18時 21分 25秒] 経験値が 64 上がりました。
[18時 21分 27秒] 経験値が 104 上がりました。


これをいったいどうしようと思ったのか非常に気になります(笑)....

  • ひょっとして Rweb という名前のオンラインゲームがあるのではと思い googling してみたら、いくつかの 「Rweb」 が見つかりましたが、どう考えてもゲームではない。それはそれとして R 習熟度を表す経験値を計算するアドオンパッケージでもあると楽しいかも。「あなたの R 経験値は 50 あがりました」などと。 -- 2004-09-28 (火) 17:48:28

sink 関数のネスト

QDU? (2004-09-27 (月) 21:15:06)

たまたま 2ch の R 関連のやりとりを見ていて次のことに気づきました。この方はどうも sink 関数の使い方を試行錯誤しているうちに、前の sink 関数による出力切替が有効なうちに次の sink 関数を実行したらしく(私にはそう見えました)、sink() を使っても出力が元に戻らず、sink(NULL) でやっと元に戻ったと書いていらっしゃいました。sink() と sink(NULL) は全く同じ命令ですから、事実は知らぬ間に sink による出力のネストを行なっていたということのようです。?sink によれば sink 関数は20回までネスト(というべきなのか)できるらしいです。こうした機能が重要になる局面は一寸想像もできませんが。

    'sink()' or 'sink(file=NULL)' ends the last diversion (of the
    specified type).  As from R version 1.3.0 there is a stack of
    diversions for normal output, so output reverts to the previous
    diversion (if there was one).  The stack is of up to 21
    connections (20 diversions).


# 参考例
> example(lm)
> sink("test.summary")
> sink("test2.summary")   # sink 関数のネスト
> summary(resid(lm.D9) - resid(lm.D90)) # test2.summary に書き込み
> sink()                  #   
> summary(resid(lm.D9) - resid(lm.D90)) # test.summary に書き込み
> sink()
> summary(resid(lm.D9) - resid(lm.D90)) # 標準出力に戻った
      Min.    1st Qu.     Median       Mean    3rd Qu.       Max. 
-7.772e-16 -6.245e-17  2.776e-17  1.405e-17  1.145e-16  3.331e-16
  • 出力を条件ごとに切替えて使うのによいかと。ネストと言うよりスタックですね。catとの併用がより効果的? -- なかま 2004-09-28 (火) 00:35:17

Excel からコピーしたセル範囲を R に読み込む

青木繁伸 (2004-09-19 (日) 14:56:45)

エクセルのセル範囲を R に読み込むために,今まではわざわざファイルに書き出してやっていましたが,面倒なので,簡単なラッパーを作ってみました。

from.excel <- function(nc)
{
	matrix(scan(""), byrow=TRUE, nc=nc)
}

エクセルで必要な部分をコピーします。

x <- from.excel(2)

などとして,プロンプトが出たらペーストします。
入力の終わりはMacintoshだとcommand+.
汎用関数にする価値もないのでこのまま。

  • ?scan によれば Linux だと CTRL+D, MS Windows では CTRL+Z で終了すれば良いようですね。 -- 2004-09-19 (日) 23:41:39
  • これはいいですね。 -- 林 啓一? 2004-09-27 (月) 23:32:17
  • 参考になりました -- 田中? 2007-08-05 (日) 09:55:51

CRAN のすべてのパッケージを含むドキュメントからの全文検索

間瀬茂 (2004-09-12 (日) 22:35:51)

r-help に「これこれするには何を使えばよいでしょう」タイプの質問専用の新 ML を設けたらという提案があり、しばらく盛り上がりましたが、大勢は r-help で十分という論調でした。一つ興味を引いたのは、CRAN 登録の全パッケージと Bioconductor 関連パッケージをインストールしたら 1GB を越えたという報告でした。これだけの量から必要な情報を取り出すのは確かに至難の技ですが、よくしたものでそれを可能にする検索システムがあることも報告されていました。 R site search は Jonathan Baron 氏による膨大な R 関連ドキュメントからの全文検索システムで、対象は R マニュアル、4種の R メイリングリスト(プラス R-sig-geo)、CRAN 登録の全パッケージ(プラス Jim Lindsey 氏のパッケージ、 Bioconductor の基本パッケージ, Zelig) を含むそうです。早速、Q&A(初級者コース)にあった ANOVA の simple main effect を検索したら、過去に質問が一件ありましたが、回答は実質無し。R 関係者には馴染みがないか、興味がないかどちらかのようです。リンク集にもメモしておきましたので、「困った時の R site search」をどうぞ。


Rの宣伝講演をします

谷村 (2004-09-08 (水) 23:57:14)

2004年9月10日東京大学本郷キャンパス山上会館で「空間疫学分析における統計解析環境Rの活用」という演題で発表します。
http://www.csis.u-tokyo.ac.jp/japanese/research_activities/symposium/7th/index.htm

  • 素晴らしい!どのような反響があったのか,是非お聞かせ下さい! -- 2004-09-13 (月) 22:24:22
  • 慶應三田で開かれたSVG Open と重なって行けなかったのが残念。 -- 2004-09-14 (火) 00:56:02
  • 遅くなりました。「Rは名前は知っているけど空間情報科学分野でどこまで使えるのかわからない」と興味があるものの今一歩踏み出していない方が多くいらっしゃるようでした。数理システムの方も参加されており、懇親会でいろいろとコメントを求められました。知らなかったのですがSplusではまだshapeファイルを取り扱う仕組みができていないようで、驚きでした。私の講演を聴いてどれだけの人がRを試してみるのか分かりませんが、GISユーザにもRが普及すればと思います。 -- 谷村 2004-09-15 (水) 14:45:29
  • 空間分析ではかつては Splus と組んでいたESRI社の Spatial Analyst が新バージョンでは空間的自己相関なども含んでいるので、11月には ESRI Press より参考書も出るので、GIS コミニュニティでは R にとって「ライバル」になるでしょうね、 -- 2004-09-15 (水) 15:19:24
  • ところで、リンク集にある谷村先生のご著書『保健医療のためのGIS』はいつごろ発行になるのでしょうか? -- 2004-09-15 (水) 22:32:05
  • 発行日は10月5日になっていますが、実質は9月27日頃の予定。DClusterの解説はあまり期待しないください。付録扱いないのでThe R Bookよりも短いです。 -- 谷村 2004-09-16 (木) 10:47:48
  • 谷村先生、ご回答ありがとうございます。発売を期待しております。 -- 2004-09-16 (木) 13:14:07
  • 谷村さんに講演を依頼した者です。Rを知らない人にも「何が出来るのか」を分かりやすく解説されて良い講演だったと思います。ただ講演時間が30分と短かったためRのデモがなかったのが残念でしたが、、。 -- 丸山? 2004-09-16 (木) 21:28:09
  • 今ごろ言っても遅いのですが、関西オープンソース2004で15分ほどRの宣伝をしてきました。 -- 樋口? 2004-10-29 (金) 11:28:06

大男総身に知恵が周りかね?

間瀬茂 (2004-09-08 (水) 19:37:45)

最新の r-help 記事に 64 bit の Sun Sparc マシンで R を動かしたら数割遅くなったという記事があり、R 教授が次のようにコメントしていました。データマイニング屋を除けば、64 bit マシンを羨ましがる必要は(まだ)無い?

It uses more memory at all times and so gc() takes longer.  There *is* a
slowdown, for example 90 vs 80 secs for a run of R-devel's stats-Ex.R (for 
either Sun's Forte 7 or gcc 3.4.1 compilers).  But `25-30% slower' is
unexpected and needs investigation.

The only difference between 32-bit and 64-bit versions of R on Solaris will
be the size of the pointers and (probably) less efficient PIC code. There is
no reason to expect a performance boost with 64-bit applications: they have
to do more work and are only worthwhile if you need the address space (in
memory or also on disc as 64-bit applications use large files natively).
  • このコメントの通り、単純な64ビット化は性能向上にはつながりません(逆に悪くなる場合が多い)。単に扱える大きさが増えるだけです。ただし、整数演算を64ビット化すれば、効果絶大でしょうね。 -- 後藤 2004-09-13 (月) 22:05:08
  • DNAマイクロアレイの解析(bioconductor)では64bitの威力を実感しています。どれだけあれば十分なのかは分かりませんが、8GBマシンでどうなるか試してみたいなと思っています。 -- 樋口? 2004-10-29 (金) 11:37:35

データセットの引用

間瀬茂 (2004-08-26 (木) 17:38:14)

「工学のためのデータサイエンス入門」執筆の際、執筆者の間で議論になった点は、既刊の本やウェッブで公開されたデータの引用に関する(倫理、法律的な)権利関係という点でした。これはいずれ R のパッケージを公開してやろうという野心をお持ちの方にも気になる点ですね。出版界の慣例では、既刊の本、雑誌に載せられたデータ(解析結果は?これも独自に解析しさえすればおそらく問題は無い?グラフ・表等をそのまま写真製版する場合は出版者の許可をえた旨の注意が載せられていることが多いですね)は引用情報を明確にすれば、必ずしも著者に了解を求めなくても、データそのものの引用は可能、ということのようです。ウェッブで公開されているデータについてはおそらく慣習法はないと思いますが、最近の r-help に以下のようなやりとりがありましたのでご紹介しておきます。データそのものには著作権は無いという主張ですが。しかし、世の中には利用について(採取者による)制限が設けられているデータも結構あるようです。アメリカでは政府の金で採取したデータは公開すべしという原則があるようですが、残念ながら日本では科研費等国の予算で採取したデータも私物化されることの方が多いようです。統計学の研究、勉強には現実のデータの利用が欠かせません。R およびそのパッケージの魅力の一つは豊富なデータセットを組み込みで持っていることですが、それらに適用されている GPL ライセンスがデータにどのように及ぶのかは気になるところです。関連する情報をお持ちの方はぜひ教えて下さい。

Dear Arne,

I'm not a lawyer, but I believe that data per se are not
copyrightable.

Regards,
 John 
~
>> -----Original Message-----
>> From: r-help-bounces@stat.math.ethz.ch 
>> [mailto:r-help-bounces@stat.math.ethz.ch] On Behalf Of Arne   Henningsen
>> Sent: Wednesday, August 25, 2004 12:06 PM
>> To: r-help@stat.math.ethz.ch
>> Cc: jfox@mcmaster.ca
>> Subject: [R] License for including datasets in packages
>> 
>> Dear All,
>> 
>> I would like to publish a function for 'heckit' estimations 
>> together with two examples from Greene's and Wooldridge's 
>> econometric textbooks. 
>> These examples use the dataset of Mroz (1987) that is also 
>> available in John Fox' "car" package. However, not all 
>> variables that are used in my examples are available in the 
>> "car" package. Therefore, I want to put the full Mroz dataset 
>> in my package. This full dataset can be downloaded from some 
>> internet sites (e.g. 
>> pages.stern.nyu.edu/~wgreene/Text/econometricanalysis.htm,
>> www.stata.com/texts/eacsap/), but I did not find any license 
>> information. 
>> 
>> Whom do I have to ask wether I am allowed to put these data 
>> in a GPLed R package? (Mr. Mroz, Mr. Greene, STATA, 
>> University of Michigan (PSID), . . . )
>> 
>> @John: Do you have any license information on these data?
>> 
>> Thanks,
>> Arne
  • GPLはプログラムについてのみが適用範囲かと。データについては出力データ(プログラムの出力)について記載がありますが、字句解析、構文解析等の出力(即ちプログラムとおぼしきもの)についての意味なので,データはI/OともGPL適用外です。文章用の(GNU Free Documentation License)みたいな物のデータ版が必要なのかも(日本ぐらいかも)しれませんね。 -- なかま 2004-08-27 (金) 00:24:52
  • CreativeCommons?ってデータには適用できないんでしょうか? -- aki 2004-09-08 (水) 02:25:39
  • CreativeCommons? とは初耳ですが何のことでしょうか? -- 間瀬茂 2004-09-08 (水) 08:11:38
  • http://www.creativecommons.jp/ にも説明があるようです(読んでません)- 青木繁伸 2004-09-08 (水) 10:29:24
  • 米国のレッシグ教授が始めたプロジェクトです。自由利用の範囲を明示し、促進するライセンス案の作成などを行っています。このライセンスは様々な著作物に適用可能です。また、ライセンスはXML(RDF)で記述でき、機械処理し易いという特徴があります。オプションが色々ありますがその辺りについては青木先生ご紹介のサイトをご覧下さい。 -- aki 2004-09-08 (水) 18:35:35

女子マラソンの金メダリスト

(2004-08-26 (木) 00:52:23)

アテネオリンピック女子マラソンの金メダリストの所属会社が「グローバリ」(商品先物取り引き会社)という新聞記事を見て気づきましたが、これは R マニュアルの翻訳を始めた山本和彦さんの会社のようですね。野口選手については「先物買い」で見事にあてましたね :-)


IBM developerWorks の記事

nanashi? (2004-08-14 (土) 11:47:22)

ちょっと古いですが、Rの紹介記事です。興味があったら読んでみてください

http://www-6.ibm.com/jp/developerworks/linux/040116/j_l-sc16.html


sas2R

(2004-08-13 (金) 12:13:34)

(いささか古い r-help 記事によると) SAS から R プログラムへの変換パーサー sas2R というものがあるようです。詳細は不明。それよりプログラム R2sas が欲しい SAS ユーザがいるかも知れない :-)

  • http://www.biostatistics.dk/sas2r/ -- 学生? 2004-08-13 (金) 12:48:48
  • 四月馬鹿ですか、だまされた。でも本気にした、本気にしたい人はけっこう多いはず。 -- 2004-08-13 (金) 13:50:45
  • あったらいいな,とおもうpackageですよね.一生懸命調べちゃいました. -- 学生? 2004-08-13 (金) 14:04:24
  • 「一生懸命調べちゃいました」<- ごめんなさい。 -- 元記事投稿者? 2004-08-14 (土) 12:23:37

車輪で特許をとった男の話(オフトピック)

間瀬茂 (2004-08-09 (月) 14:56:10)

暑いですね、を口実に仕事もせずに無駄知識を紹介します。「車輪を二度発明する」というイディオムは RjpWiki でも数度登場していますが、2001 年に車輪の発明で特許をとったオーストラリア人(ジョン・ケオ)がいるそうです。正確には「環状の運搬補助用具」というのが特許対象だそうですが、要するに車輪のことです。どうしてこんなことが起きたかというと、オーストラアリでは特許取得に要する期間と費用を削減するために、特許期間が短いが取得がたやすい(どうやらほとんど無審査)イノベーション特許制度というのが同じ年に設けられたのに抗議した弁理士のジョン・ケオが、新制度の欠陥を指摘するために請願したら案の定認められたのだそうです。この快挙に対しジョン・ケオとオーストラリア特許局は「イグ・ノーベル・技術賞」授賞の栄誉を授けられました。なお、その後オーストラアリ特許局のHPには「車輪の特許を申請しないこと」という注意が掲載されたそうです。出典は「イグ・ノーベル賞」マーク・エイブラハムズ著、福島俊造訳、阪急コミュニケーションズ社。なおこの本によれば確率・統計に関する研究での授賞も多くあり見逃せません。紹介すると

(1) 相続税の低下の見込みが延命効果を持つことの研究
(2) 落下するバタートーストの力学的研究
(3) 米国の各州毎の地獄へ行く人数の推計
(4) ミハイル・ゴルバチョフが反キリストでない確率の算出
(5) ビスケットを紅茶に浸す理想的な方法の考察

L^2 = (γ x D x t)/(4 x η) ここで
L は紅茶にビスケットを浸す幅、γ は紅茶の表面力、D はビスケットに空いた穴の直径平均値
t は浸す時間、η は紅茶の粘性率

また英国規格協会(BSI)には紅茶の正式ないれ方に関する6頁の規格(BS6008)があるそうです。Fisher's Tea Drinker データというのがあります( help(fisher.test) 参照)が、英国人の紅茶への入れ込み方は半端で無いようですね。皆さんも、イグ・ノーベル賞に挑戦してみましょう。意外に日本は授賞大国です。自薦もできるようです。ただし、授賞式への参加費用は自弁だそうです。


現在の CRAN 登録パッケージ数

(2004-08-05 (木) 01:40:16)

数えてみたら 2004.08.05 現在 CRAN 登録パッケージ数は 381 でした。これは Bioconductor 等のプロジェクトを除いた数です。一年少しで約 170 あまり増えた勘定になります。


BLAS for Pentium4 512kB(Windows, Linux)

後藤 (2004-08-03 (火) 22:41:42)

現在改良版の BLAS のリリースを準備しているのですが、とりあえずβ版を作ってみましたので、興味のある方はお試しください。Level1 と Level2 ルーチンの性能が向上しています。

http://www.cs.utexas.edu/users/kgoto/libraries/libgoto_p4_512-r0.95.so.gz
http://www.cs.utexas.edu/users/kgoto/win2k/libgoto_p4_512-r0.95.zip

にありますので、wget で取ってください。なお、R のインストールメモには、complex が使えない旨書いてありますが、何も特殊なことはしていないので普通に動作するはずです(古いライブラリに関しての記述なので、できれば更新してほしいな)。

  • complexも動作しました。CPUが違うにもかかわらず(^^;,ATLASより若干良い性能を出してます(*o*)。五月蝿いRのテストも難なくクリア。P4L2-512をお持ちの方はぜひ。 -- なかま 2004-08-04 (水) 09:42:17

数学者は如何にしてパン屋の不正を見抜いたか

間瀬茂 (2004-08-03 (火) 20:55:57)

(最近読んだ本から紹介)

数学者ポアンカレは、毎日買っているパン屋の1kgのパンがしばしば軽目なのに気づきました。しかし、彼は実際のパンの重量は一つ一つランダムに変動することは先刻承知でした。そこで一年間購入したパンの重量を計り、それがほぼ正規分布に従うことを確認した上で、平均が950gであることを警察に届けで、パン屋に警告させました。それからまた一年パンの重量を計り続けたポアンカレは、今度はその分布が正規分布とは異なり、右に裾が長いことを見出し、再び警察に届けでてパン屋の不正を正したそうです。つまり、彼はパン屋が反省することなく、単に毎日一番目方の重そうなパンを選んでポアンカレ家に売り付けていたことをデータから見抜いたわけです。

R でシミュレーションすると次のようになるでしょうか。y は正規乱数の最大値をシミュレーションしています。

x <- rnorm(365, mean=950, sd=30)
y <- sapply( 1:365, function(i) max(rnorm(500, mean=950, sd=30)) )
par(mfrow=c(1,2))
hist(x); hist(y)
poincare2.png
  • あ,この話,ガウスではなかったのですか。すっかり,誤解してました。 -- 青木繁伸 2004-08-03 (火) 21:17:26
  • 今手元に本が無いので出典をかけませんが、ポアンカレと書いてありました。いずれ出典をご紹介します。私が知らなかっただけで、結構有名な逸話なのでしょうか。 -- 間瀬茂 2004-08-03 (火) 21:48:04
  • この話ですね -- 2004-08-03 (火) 23:02:11
  • ご指摘ありがとうございます。「この話」の解説は、正規分布の極値分布と、打ち切り分布を混同しているような気がしますね。 -- 間瀬茂 2004-08-04 (水) 00:52:10
  • 出典は「確率統計で世界を読む」B.K. ホランド著、林大訳、白揚社 (2004.07) でした。著者の専門は人口論らしく、他にも面白い話がいくつか。 -- 間瀬? 2004-08-05 (木) 10:46:20

お手軽 WinR で ATLASクッキング

なかま (2004-07-28 (水) 10:02:42)

セレロンの人でも早くなると思います.1世代前のATLASがいいでしょうか.
あまり知らない指令が来てもCPUは遅くなるでしょうし.

http://toucan.stats.ox.ac.uk/R/RWin/ATLAS/

から適当なRblas.dllをダウンロードしてR_HOME/bin にコピーすればよいです.

  • Windowsでもできたんですね。早速入れました。最初にATLAS入れた時にはびっくりするくらい速くなったので心配になったくらいです。まだ未経験の方は是非。 -- aki 2004-07-28 (水) 10:08:35
  • 下記のtest2を実行したところ [1] 1.21 0.01 1.41 NA NA となりました。dll入れ替え前は測るの忘れました(汗)。 -- aki 2004-07-28 (水) 10:18:56
  • 辛口な教授の労力には脱帽の一言です.今夜から頭を向けて寝ます.(違 -- なかま 2004-07-28 (水) 10:21:21
  • 標準状態に戻して計り直してみました。結果は[1] 6.48 0.06 6.86 NA NAでした。スゲェ。 -- aki 2004-07-28 (水) 10:25:57
  • ちなみにマシンはAthlonXP2500+(Barton)@2700+(2GHz)+nForce2+PC3200 512MB DDR SDRAMをベースとしたものです。常駐が色々入った状態でこれなので常駐切りまくれば多少は速くなるかもしれません。 -- aki 2004-07-28 (水) 10:28:02
  • ATLASって何ですか?ぐぐってみたけどよく分かりませんでした。 -- 2004-07-28 (水) 13:13:31
  • Debian パッケージの解説より引用。automatically の意味が依然良く分からん。 -- 間瀬? 2004-07-28 (水) 16:28:06
    Automatically Tuned Linear Algebra Software,generic static ATLAS is 
    an approach for the automatic generation and optimization of numerical
    software. Currently ATLAS supplies optimized versions for the complete 
    set of linear algebra kernels known as the Basic Linear Algebra 
    Subroutines (BLAS), and a subset of the linear algebra routines in the 
    LAPACK library. . This package includes the static libraries and 
    symbolic links needed for program development. . 
    Homepage:  http://math-atlas.sourceforge.net/
  • ありがとうございます。Rを加速するためのライブラリで、Rのコンパイル前に入れておけばよいものという理解でよいでしょうか。 -- 2004-07-28 (水) 18:06:49
  • 古代は人々がCPUのキャッシュに合わせて人手でBLASの最適化を行っていたのでは?そこをコンパイル時に自動的にサイズを調整して最適化をはかれるようにしたと言う意味なんでは。 -- なかま 2004-07-28 (水) 18:44:54
  • ATLASはSMP対応版も作成できるようですのでそれとマルチプロセッサマシンを使えばさらに速くなるかも。ところでWindowsではATLASで最適化したルーチンを含むLAPACKを使うにはDLLを自前で作るしかないのでしょうか。 -- aki 2004-07-29 (木) 02:29:48
  • LAPACKまでとなると、考えただけでも面倒そうな気がしますが,どの程度か早くなったら教えてください。(^^; -- なかま 2004-07-29 (木) 07:48:14
  • すかさず宣伝。Debian では ATLAS 化された BLAS, LAPACK が手間いらずに使用可能です。 -- 間瀬? 2004-07-29 (木) 08:29:52
  • FreeBSDのportsでもコンパイルは自動化されてますよ。math/atlasで最適化済LAPACKまで作ってくれるようです。ただし、LAPACK作成時に参照するBLASは未最適化のBLASかもしれません(portsの挙動をよく知らないのではっきりしませんがそのように見える)。 -- aki 2004-07-29 (木) 17:02:24
  • というわけで最適化済BLASを参照するようにLAPACKを作成してATLASの最適化済LAPACKコンポーネントをarで組み込んでみましたが速度ほとんど変わらず。LAPACKの高速化はRにはあまり効果が無いか、もしくはportsでちゃんと最適化されていたのかも。 -- aki 2004-07-29 (木) 17:03:11
  • LAPACKの高速化はRにはあまり効果が無いと言うのは本当だったんですね。その先になると、rpvm,Rmpi,RScaLapack?になるんでしょうね。 -- なかま 2004-07-29 (木) 21:32:54
  • まだ奥の手があるんですか! -- 間瀬? 2004-07-29 (木) 22:54:30
  • http://www.aspect-sdm.org/Parallel-R/ で背後はLAM/MPI(rshで起動するのが...)でMPIで通信して solveとかを並列処理 http://cran.r-project.org/doc/packages/RScaLAPACK.pdf Score+MPICHとかでもOKだと思うんですが KNOPPIXとかで全マシン参加型並列処理とか出来ると面白いでしょうね。(^^; -- なかま 2004-07-29 (木) 23:23:48
  • 中間さんの test2 関数で再度調べてみました。libgoto なしとありのそれぞれ百回の比較です。 すでに ATLAS 化された BLAS と LAPACK 導入済みです。確かに歴然と効果が分かりますね。-- 間瀬? 2004-07-29 (木) 23:49:46
    libgoto 無し mean = 1.5024 sd = 0.1505
    fivenum(xnogoto)
    [1] 1.200 1.400 1.480 1.645 2.100
    libgoto あり mean = 1.3056 sd = 0.2866
    fivenum(xgoto)
    [1] 0.000 1.230 1.325 1.475 1.670
    以下のボックスプロットの左は libgoto 無し、右はありです。
    libgoto ありで時間 0 というはずれ値は素性が良くわかりません

    #ref(): The style ref(filename,pagename) is ambiguous and become obsolete. Please try ref(pagename/filename)

  • 並列処理で一番簡単なのはsnowをSOCKでrshパスワード無しにして並列(と言っても別々の処理ですが)でしょうか。 -- なかま 2004-07-29 (木) 23:54:38
  • マルチプロセッサやクラスタリングに逝ってしまうとマシンの購入費だけでとんでもないことに・・・。 -- aki 2004-07-30 (金) 00:53:40
  • もしかしたらPentium4最適化(SSE2を使う)方が効果大きいかもしれませんね。Intel Math Kernel LibraryのBLAS/LAPACKとかIntel Compiler使うとどうなるんでしょうね。 -- aki 2004-07-30 (金) 01:01:08
  • Intel Compiler v8 だと *FLAGS="-mp -pc64" を指定。更にifort では -fpscomp logicals を必ず忘れずに(っていうかデフォルトに設定追加)。どの程度早くなるかはおたのしみ。:-) -- なかま 2004-08-23 (月) 13:34:01

お手軽Rで後藤クッキング

なかま (2004-07-27 (火) 22:33:31)

http://www.cs.utexas.edu/users/kgoto/ から自分のCPUにあった

libgoto と xerbla.c をダウンロード.
gzip -d  libgoto_p4_128-r0.94.so.gz
gcc -c xerbla.c
gcc -shared -o libgoto.so ~/libgoto_p4_128-r0.94.so xerbla.o 

Rgoto と言うシェルスクリプト作成

#!/bin/bash
export LD_PRELOAD=~/libgoto.so:/usr/lib/libm.so
${RPROG:-R} -q $* 

起動

$ ./Rgoto

で, R を実行すれば標準BLASやATLASの変わりに後藤(日本語訳はどうすべき?)を使うと思います。
元もとATLAS使っているなら劇的には早くはならないと思いますが。

  • 中間さんの処方箋通りにしてみました。1000 by 1000 の行列 x のかけ算 x%*%x の時間をはかってみたら、使用前 1.71、使用後 1.67 で劇的とはいえませんが確かに早くなるようですね。すでに atlas を使っているのでこんなものなのでしょうか。ともかく少しでも確実に早くなるというのは気持ちがいいものです。ありがとうございました。 -- 間瀬? 2004-07-27 (火) 23:49:54
  • FreeBSD派はいかにすれば・・・。というかATLASより速いんですか。 -- aki 2004-07-27 (火) 23:57:09
  • どうも goto ライブラリは CPU 毎に最適化チューンナップをしているようで、それはやはり早くなりそうですね。しかし逆に CPU 毎にライブラリを変えなければいけないというのはめんどうではありますね。 -- 間瀬? 2004-07-28 (水) 00:05:56
  • CPU最適化するのはATLASも同じでは。 -- aki 2004-07-28 (水) 02:59:48
  • そうなんですか。そういえば Debian の atlas3 パッケージは何種類もあります。ただ私がいま使っているのはそうした CPU specific なものではないはず。 -- 間瀬? 2004-07-28 (水) 06:32:32
  • ATLASを最大性能(キャッシュのSIZEやCPU毎のオプテイマイズ)を出すには野良ビルドが必要だと思います。後藤はATLASや商用?BLASより性能がおおむね良いようです。FreeBSDの後藤は...なさそうですね。WinなATLASは超辛口な教授のサイトにあったと思います。何のチューニングもしてないVine,赤帽ユーザはかなり早くなる? -- なかま 2004-07-28 (水) 07:22:20
  • FreeBSDのportsでは、ATLASもコンパイルからやれます。ただしL2キャッシュの指定が標準だと4MBにされてしまいますのでいじくりました。 -- aki 2004-07-28 (水) 10:05:09
  • /proc/cpuinfo からL2ひろって atlasのsrpmを作れば嬉しい? 人はどれぐらいいるんでしょ。(^^; -- なかま 2004-07-28 (水) 10:18:08
  • cpuid から動的に最適なルーチンを呼び出すということは可能ですが、オーバーヘッドが大きくなるので私はやっていません。FreeBSD 用って需要はありますか? ライブラリの名前はもうちょっと考えればよかったと後悔しています。 -- 後藤 2004-08-01 (日) 18:22:45
  • もしかして噂の後藤さんご本人でしょうか。わざわざご投稿光栄です。R を通じて後藤さんの作品の素晴らしさにおくればせながら気づいた次第です。こうした作品は中間さんのような人がその素晴らしさを具体的な使いかたとともに解説してくれるまでなかなか末端には広まらないですね。今後ともよろしくお願いします。 -- 間瀬? 2004-08-01 (日) 20:21:45
  • です。ライブラリに対する希望がありましたらお知らせください。それから、最適化ライブラリの注意点ですが、小規模行列に対しては性能は全般的に悪いです。最悪の場合には素のBLASが一番速いこともあります(スパース系で顕著)。ご自分の使用されるプログラムの性質を理解した上でご利用ください。 -- 後藤 2004-08-01 (日) 22:56:00
  • よもや御本人から投稿していただけるとは考えず(豪雨汗)、失礼しました。m(_|_)m ところでライセンス(再配布等)とかはどうなるんでしょうか。 -- なかま 2004-08-02 (月) 09:31:29
  • なんかとんでもないトンチンカンなことを書いていたのでは?... としきりに気になる ... -- 間瀬? 2004-08-02 (月) 14:12:28
  • 今のところ、再配布は遠慮していただいています。ライセンスの問題はクリアできそうなので、そうしたらソースを公開する予定です(GPLかな?その前に論文を書かねば)。 -- 後藤 2004-08-02 (月) 20:50:50
  • LD_PRELOAD はすべてのプロセスの起動に影響を与えるため(プロセスの起動時に必ず参照されるため、起動が遅くなる)、できるならシェルスクリプトでくるんで使うのが良いと思います。 -- 後藤 2004-08-02 (月) 21:11:52
  • そうですね。Rgoto等のシェルスクリプトにくるむように書いた方が親切でした(滝汗)。いずれにしても大変参考になるアドバイスをいただきありがとうございました(冷汗)。 -- なかま 2004-08-02 (月) 21:36:32
  • ぐわ、ちょっと見てない間に・・・。えー、FreeBSD用があると私は嬉しいですが、いずれソースを公開していただけるのでしたらその時自分でコンパイルしますのでわざわざそちらでバイナリをご用意いただかなくても私は構いません。FreeBSDバイナリを吐かせる環境を作るのも面倒でしょうし。 -- aki 2004-08-03 (火) 00:54:57
  • ソースといっても、中身はほとんどアセンブラなので、FreeBSD で動作させるのは一筋縄ではいかないです(シンボル形式とかが違うので)。 -- 後藤 2004-08-03 (火) 20:26:48
  • げ、そうなんですか。それはまいった。うーん、Linuxに戻るか諦めるか・・・。まぁ、ATLASでもそこそこ速くはなっているのでこれで妥協でしょうか。 -- aki 2004-08-04 (水) 06:25:42
  • ほとんど違いはないので、あとは趣味の問題かと。FreeBSD 用は時間ができたら挑戦してみます。 -- 後藤 2004-08-04 (水) 20:23:45

FreeBSDのportsから日本語化済Rをインストールする

aki (2004-07-27 (火) 14:17:01)

http://www.fifthdimension.jp/index.php?R%2FTips
に半自動化スクリプトも含めて書いておきました。
余計なこともやってますがとりあえずパッチの適用までは確認しました(コンパイルは今やってます)。
動作確認が取れましたらこちらのTipsにでもミラーしていただければ幸いです。

  • devPS.cのコンパイルでコケますね・・・(滝汗)。 -- aki 2004-07-27 (火) 14:23:06
  • スクリプトの方がタコでパッチがちゃんと当たってませんでした(汗)。 -- aki 2004-07-27 (火) 14:45:00
  • MAIN_CFLAGSがdevPS.cのコンパイル時に反映されてない? ようなので-DI18N_MB -DL10N_JPはCFLAGSに指定してしまいました。 -- aki 2004-07-27 (火) 17:07:57
  • R-1.9.1.l10n.psxfigtex.20040625.patchも微妙に改変しないとコンパイルできませんでした。変更点は無いも同然の変更ですが、ファイルはうちのサイトに置いておきました。 -- aki 2004-07-27 (火) 17:18:32
  • あ、すみません。devPS.cは直してあるんですが、公開し忘れておりました。(爆死) -- なかま 2004-07-27 (火) 17:41:21
  • では、うちのやつは消してしまっても問題ないのでしょうか。どうせ改行を?nにしただけですが。 -- aki 2004-07-27 (火) 17:54:23
  • 今にして思えば日本語か掲示板の方が適当だったか・・・。 -- aki 2004-07-27 (火) 18:03:01
  • お手数おかけします。パッチ置いときました。ATLAS良いですよね。セレロン2Gのしょぼいマシンでも超高速になりました。難点はATLASのビルド時間ですが。。。 -- なかま 2004-07-27 (火) 18:29:11
  • なかまさんのここのところの宣伝で気になってきていますが、Debian で r-base をインストールすると依存パッケージ atlas3-base というのが一緒にインストールされますが、これはなかまさんがおっしゃっているものが自動的に使えるようになっているということですよね(か?)。それと goto なんたらというオプション(?)は単に atlas の最新版を使っていれば自動的にその恩恵にあづかれるものなのでしょうか? なかまさんに Debian のことをお聞きしても知らんよといわれるかな? -- 間瀬? 2004-07-27 (火) 20:44:09
  • ldd usr/lib/R/bin/R.bin or usr/lib/R/bin/libR.so(共有でビルドしてんないもんで) で libatlas がでてくれば(見た感じ使ってるようですが)。ただこのATLASはマシンに最適化されてるわけではないんだと思います。gotoもatlasもConfigureの時に基本的には --with-blas=-lgoto or --with-blas=-latlas とするだけでOKです。もそかそたら LD_PRELOAD でgotoをロードするようにすると、そのままでgotoがつかえるやもしれませんね。 -- なかま 2004-07-27 (火) 21:30:07
  • そのままでは libgoto.so は見つかりませんでしたから、Debian の R は goto 化されていないようです。goto ライブラリが CPU 依存だとすれば当たり前なのかな? -- 間瀬? 2004-07-28 (水) 00:13:21
  • gotoはソースが無いからなんでは? -- なかま 2004-07-28 (水) 07:46:43
  • FreeBSDマシンでも下に出ているtest2を走らせてみました。結果は[1] 1.648438 0.015625 1.968750 0.000000 0.000000でした。これはFreeBSD 5.2.1 on AthlonXP 2500+(Barton) + nForce2 + DualChannel? PC2100 1GB(512MBx2) DDR SDRAMの機械です。上で書いたWindowsマシンからクロック分だけ(より少し多めに)遅くなっていますね。 -- aki 2004-07-28 (水) 10:36:48
  • 遅すぎるなーと思ってLinuxエミュを切ったら一つ目が1.15に。WinXPより速くなりました。エミュがネックだったのか・・・。 -- aki 2004-08-21 (土) 01:34:33
  • この結果はWinXPマシン同様2GHzにクロックアップした結果です。 -- aki 2004-08-21 (土) 01:36:44

ELT

(2004-07-27 (火) 12:37:19)

率直に言って、RはELT(※)には向いていないと思うのですが、どのアプリケーションの助けを借りていますか?
?*nixな人だとAWK,PERL等になるのでしょうか?
さすがに、SASをELTに使ってRで分析する人はいないですよね。

※ELT
Extraction(抽出)、Load(ロード)、Transformation(変換)

  • ELTってなんですか? -- 2004-07-27 (火) 19:32:03
  • Every Little Thing でしょう(^_^;) -- 2004-07-27 (火) 20:49:31

予約キーワード

青木繁伸 (2004-07-27 (火) 01:23:05)

名前付きの引数の指定の時,名前は前方から数文字で指定できる
しかし,以下のようなこともある

> x <- c(3.1, 2.4, 1.3, 4.2, 5.3)
> hist(x, breaks=1:6) # フルネーム(当然ながら,ちゃんと動く)
> hist(x, b=1:6) # b で始まる引数が2つあるので,識別不能となりエラーになる
Error in hist.default(x, b = 1:6) : argument 2 matches multiple formal arguments
> hist(x, br=1:6) # ちゃんと動く
> hist(x, bre=1:6) # ちゃんと動く
> hist(x, brea=1:6) # ちゃんと動く
> hist(x, break=1:6) # break は予約キーワードなので,エラー
Error: syntax error

ちょっと釈然としない。
自作関数でも当然ながら,同じ問題は生じる。

> a <- function(fortran=0) print(fortran)
> a(f=3)
[1] 3
> a(fo=4)
[1] 4
> a(for=5)
Error: syntax error
> a(fort=6)
[1] 6
  • 全く解決策ではないですが、a(`for`=5) とバックチックでくるむとQuoteSymbol?として解釈されて処理出来ます。gram.yのSymbolVal?でキーワードサーチ部分で次のキーワードが"="ならSYMBOLとして返すと今度はfor=が通りますし、どうしたものでしょう。"="が付値として使えなければ問題はないんですが。へぼプログラマとしてはいいじゃんとか思ってしまいます。(^^; -- なかま 2004-07-27 (火) 09:24:47

Eclipse Plug-in

(2004-07-26 (月) 20:06:05)

 とうとう出ました。r-help に情報がありました。

 まだ試していません。

 Eclipse 3.0用で以下の機能があるようです。

 シンタックスのハイライト、括弧のマッチングチェック、IDEのCVS等の機能が利用可能

 以下より入手可能です。


 http://www.walware.de/rplugin.zip

  • どうもXPではまったく動かない。どなたか実行に成功された方おられますか? -- 2004-07-27 (火) 19:33:25
  • ここにプラグインの説明がある -- 2004-07-29 (木) 14:49:40

TV や映画に出ていたR言語

(2004-07-24 (土) 01:51:01)

てなことないでしょうね、

  • 昔、S-PLUSの無料紹介ビデオ(英語・字幕なし)があったなぁ -- 2004-07-24 (土) 02:56:57

浮動小数演算の怪

QDU? (2004-07-21 (水) 11:01:10)

これまた r-help 記事ネタ。次の一見無邪気な引き算の結果はびっくりしませんか。ただしこれは R のバグではなく、R が採用している IEEE 浮動小数点演算規則に忠実な結果(私も良く理解していませんが、実数の内部的な2進数表現演算と結果の10進数表現との微妙な齟齬?)だそうです。ちなみに、Excel や OpenOffice? ではこうはならないそうで、その理由は「ほとんど零」に近い数を強制的に零にする関数をかませてあるからだそうです。その意味で IEEE 仕様から逸脱しているわけですが、一般の使用者はとても理解してくれないのでこうしているのでしょう。

> 0.6-0.3-0.3
[1] 0
> 0.6-0.4-0.2
[1] -5.551115e-17
> 0.6-0.5-0.1
[1] -2.775558e-17
> 0.6-0.2-0.4
[1] -5.551115e-17
> (0.6-0.2)-0.4
[1] -5.551115e-17
> 0.6-(0.2+0.4)
[1] -1.110223e-16
  • 2進表現で循環小数にならない10進数以外は計算機中の実数は,近似値を保持しているに過ぎないので当然といえば当然でしょう。C などでプログラムを書くときには出力は %g で書くこともありますが,多くの場合は %f なので,このようなことに気づかないだけでしょう。
    Excel は,=3.6-1.2-1.4 でも 1 を表示しますので,単に「0に非常に近い値を云々」ということではないでしょう。 -- 2004-07-21 (水) 11:30:39
  • R では次のようになります。この辺の機微もよう分からん。-- 2004-07-21 (水) 12:00:06
    > 3.6-1.2-1.4
    [1] 1
    > 1-(3.6-1.2-1.4)
    [1] -4.440892e-16
  • 3.6-1.2-1.4 を 1-4.440892e-16 の値として保持するには 1 ビット足りないということなんでしょうね。 2004-07-21 (水) 12:04:01

バージョン4のS言語はコンパイル機能を持つ!

(2004-07-18 (日) 23:40:54)

たまたまベル研のHPで J. Chambers によるバージョン4のS言語の解説文を見つけ読んでいたら、バージョン4のS言語はコンパイル機能を持つとかいてあり、えっと思いました。もっともこれは構文的な解析によるミニコンパイルで、定数とおける部分を定数化する、総称的関数をあらかじめ特定のメソッドへ置き換える、関数やメソッドのコードへのインライン化、といったレベルの話しのようです。これでどれだけ実行スピードが上がるのかは? R でこうした機能がいつ採り入れられる(まだだと思いますが)のかも?


THE R BOOK の続編【R入門+セミコマンドリファレンス】

舟尾? (2004-07-17 (土) 00:00:53)

来年あたりに出版して頂けるであろう THE R BOOK の続編を私が執筆することになりました.内容は R の入門書で,コマンドリファレンスとしても使えるように索引などを充実させたものにする予定です.ただ,私は R も 統計もあまり良く分かっておりませんし,本などを書かせて頂いたこともありませんので,私が一人で好き勝手に書いてしまうと,出版社の方にも読者の方にも土下座して謝らなければいけないようなものが出来上がってしまいます.
書籍として刊行するということで,ある程度は差別化を図る予定ですが,元ネタは R-Tips
http://cse.naro.affrc.go.jp/takezawa/r-tips/r.html
です.そこで,もし良ければ皆様に R-Tips のダメ出しをお願いしたいと思います.「ここが分かり難い!」「そこは間違いだ!」「あの内容は不適当だ!」「どうしたもんだかなぁ〜」等々,ご意見を頂ければ幸いです.ご意見は専用掲示板にカキコお願いします.頂いた意見の全てを反映させることは難しいかもしれませんが,分かり易い本を作成させるために,出来る限りたくさんの意見を本に反映させたいと思っております.(管理されている岡田さん,RjpWikiを私物化してしまいまして申し訳ありません・・・)

  • 出版社が了解するかどうか怪しいですが、できた分から公開して意見を貰うのが一番安易・確実かも。少なくとも、RjpWiki の常連からの苦情は無くせる :-) -- QDU? 2004-07-17 (土) 00:58:59
  • ご意見ありがとうございます.それはさすがに出版社の方に怒られそうなので,既存の R-Tips について意見を言って頂く形にしました.申し訳ありません…. -- 舟尾? 2004-07-17 (土) 01:59:59
  • 日本語パッチで拡張された機能(日本語の変数等)も含まれるのでしょうか? -- 2004-07-17 (土) 02:55:15
  • 日本語パッチで拡張されたのは日本語の為の設定ファイル(X11のみ)です。動きに差異は無い筈です。パーサも日本語が通るだけですので、そんなに意識しなくてもいいと思います。注文としてはparやgrid関係のTipsが読みたいです。でもそうするとコマンドリファレンス編とグラフィックTips編に別けた方が読みやすいでしょうね。 -- なかま 2004-07-17 (土) 09:18:14
  • 貴重なご意見ありがとうございます.par 関係のオプションは,公開中の R-Tips に 1.8.1 のものがほぼ網羅されておりますが,1.9.1 になって S から新たに移植されたものもあるでしょうから,もう一度ヘルプを洗いなおして内容に反映したいと思います.さらに,現在の R-Tips よりも出来るだけ例を増やして,目で見て効果が分かって頂けるように致します.あと,grid 関係の Tips を書くのを完全に忘れておりました.ご要望ありがとうございます!par 関係のオプション共々,是非盛り込みたいと思います.-- 舟尾? 2004-07-17 (土) 21:09:59
  • R-Tipsをベースにしたリファレンス本ということで、楽しみにしています。最近流行りのレシピブックのような、細かい逆引き形式の索引が追加されるといいかもしれませんね。もちろんRjpWikiはご自由にお使いください。 -- 岡田 2004-07-20 (火) 11:58:27
  • RjpWikiはご自由にお使いください。
    ありがとうございます!リファレンスを書く際には RjpWiki は非常に重宝します!ありがたく使わせて頂きます。あと「逆引き形式の索引」の案も頂きました。どんな形式にしろ、逆引きは載せたいと思います。 -- 舟尾? 2004-07-21 (水) 09:30:18
  • 9月いっぱいでご意見の受付を終了いたしました.青木さん,なかまさんをはじめ,ご意見を書き込んで頂いた方に感謝します.ありがとうございました! -- 舟尾? 2004-09-30 (水) 23:59:59

source() 関数のネスト

QDU? (2004-07-12 (月) 22:08:24)

r-help におもしろい話題がありました。普通 source() 関数をネストして使うことなど考えないでしょうが、source() 関数を使っているコードを他の関数から呼び出す時など起こり得ることですね。いつでもうまくいくとは限らないかも知れません。

# ファイル  "a.R"
a <- function(x) x^2
source("b.R")


# ファイル  "b.R"
cat(a(10),"?n") # 単に  a(10) では何故か何も表示されない?


# 実行結果
> source("a.R") # 中で source("b.R") を実行し、a(10) を計算した。
100

goto

なかま (2004-07-08 (木) 19:26:32)

「ゴーツー」では無く「ごとう」なんですね。(^_^;

test2 <- function ( n=500 )
{
	A<-array(rnorm(n^2), dim=c(n,n))
	B<-array(rnorm(n^2), dim=c(n,n))
	C<-array(rnorm(n^2), dim=c(n,n))
	D<-array(rnorm(n^2), dim=c(n,n))
	BA <- B%*%A 
	return (system.time(A%*%solve(t(BA)%*%BA+C)%*%BA%*%D ))
}

貧乏な私のマシン(ここでRのビルドとかしてるんですが)

> test2()
[1] 23.69  0.07 23.99  0.00  0.00

貧乏なRweb-jpマシン

> test2() 
[1] 10.91  0.11 11.08  0.00  0.00 

某所R-1.8.1

> test2()
[1] 9.822266 0.015625 9.839844 0.000000 0.000000

某所R-1.9.1 --with-blas=-lgoto

> test2()
[1] 1.01757812 0.02050781 1.04199219 0.00000000 0.00000000

ディスク欲しさにCPUをCeleronに落としてはいけない訳ですね。(^-^;

  • 嗚呼、南北問題! R.Ihaka 氏がどこかに「私はワークステーションで R を動くようにするよりも、メモリ 100 KB のパソコンで動くようにする方が興味がある」という趣旨のことを書いていましたが、R は勝手に創造者の手を離れて行くようですね。個人的には「金持ちは S-plus 買って使えば」とおもわずいいたくなりますが。 -- 2004-07-09 (金) 00:11:24
  • libgoto でここまで速くなるのですね。ビルド環境を整えたくなってきました。 -- 2004-07-09 (金) 18:36:06
  • むーん、でもよくよく観察してみると警告が(環境?)。。。ATLASに変えてみよう。 -- なかま 2004-07-09 (金) 23:38:57
  • 当家のDNS,IPSEC-SGはp5-133ですが、test2()は130程でした。 -- なかま 2004-07-09 (金) 23:42:28
  • Rweb-jp の R をBLASにATLAS利用に変えてみました。Rweb-jp -- なかま 2004-07-26 (月) 11:21:24

RjpWiki トップページについて

間瀬茂 (2004-07-08 (木) 17:42:18)

ここ数日私等がトップページをいじくっております。どうしても個人的趣味が入り勝ちなのをお断りしておきます。個人的意見としては、(複数のブラウザを使用する人がいることを考慮した上で)主要な内容がスクロール無しで一度に眺められる(つまり過剰にならない範囲でできるだけ詰め込む)、その上で見栄えを考慮する、という方針を勧めたいとおもいます。こうした意見も考慮の上、やはりこうした方が見やすいとおもわれる場合は、遠慮無く改訂お願いします。


R で データマイニング

(2004-07-06 (火) 18:21:43)

r-help に以下のサイトの情報が流れていました。

http://www.liacc.up.pt/~ltorgo/DataMiningWithR/


漸近回帰モデル

間瀬茂 (2004-07-05 (月) 14:42:49)

最近、R の stats パッケージに漸近回帰モデル (asymptotic regression model) と呼ばれる一連の関数があることを発見し、驚いています。要するに非線形回帰モデルですが、モデル曲線の漸近線値がモデルパラメータの一部になることが多いので、こういう名前が付けられているようです。興味深いのは、いくつかの代表的非線形モデル(logistic, Weibull, Gompertz, Michaelis-Mentel, compartment)に対し、そのパラメータの初期推定値(example によればこれはさらに nls() 関数で改良しても変わらないことが多いほど良い推定値らしい)を計算するメカニズムをモデル自身に含めることができる「自己開始(SS, Self-Start)」モデルと呼ばれる関数がたくさんあること。経験者は苦労されるように、非線形モデルではパラメータの良い初期推定値を試行錯誤で求めるのが作業の半ばを占めることがありますから、これはとても嬉しい。今まで気づかなかったのは比較的最近登場したのでしょうか?興味のある方は help.search("SS"), help.search("Asymptotic") で検索してみて下さい。


誕生日のパラドックス

(2004-07-02 (金) 23:43:29)

pbirthday は正しい値(?)を返さない
これぞ,まさしく,パラドックス(^_^;)

  • 実例は? ?birthday によれば近似計算を使っているとの注意がありますね。実は pxxx 関数はほとんど極端に大きい・小さい引数ではおかしな値を返すようです。 -- 2004-07-02 (金) 23:57:31
  • 以下を実行のこと。
    pbirthday2 <- function(n)
    { 
    	1-exp(lfactorial(365)-n*log(365)-lfactorial(365-n))
    }
    n <- 2:50
    result <- cbind(n, sapply(n, pbirthday), sapply(n, pbirthday2))
    colnames(result) <- c("n", "pbirthday", "pbirthday2")
    result
    実行結果(n が大きくても,小さくても,中くらいでも,不正確な値を返す(^_^;))
           n   pbirthday  pbirthday2
     [1,]  2 0.005479452 0.002739726
     [2,]  3 0.016438356 0.008204166
     [3,]  4 0.026301370 0.016355912
     [4,]  5 0.034246575 0.027135574
         :
    [21,] 22 0.499315068 0.475695308
    [22,] 23 0.530136986 0.507297234
    [23,] 24 0.531506849 0.538344258
    [24,] 25 0.583542799 0.568699704
         :
    [47,] 48 0.957357026 0.960597973
    [48,] 49 0.961562289 0.965779609
    [49,] 50 0.967534247 0.970373580
    関数本体はもちろん,1-prod((365:(365-n+1))/rep(365,n)) でもいっこうに差し支えない
  • ?birthday で説明されているように、ここで使われている近似公式は、不等確率ケース、そして n>=2 以上の一致ケースを統一的に扱う一般的な場合を扱っているようです。一様確率ケースでは正確な公式(上の pbirthday2)とはかなり異なることを example(pbirthday) で説明していますね。 ついでにコメントするとこうした組合せ確率計算は、多倍長計算を使わない限り結局満足できる結果は得られないというのが私が過去の経験で学んだ結論です。-- 2004-07-03 (土) 01:01:44
  • 所詮,最終的な答え(確率)は,0〜1の範囲の値しか取らないのだから,途中の計算の演算順序を適切に制御すれば,多倍長計算は不要だと思います。また,途中の計算を log を使って行い最後に exp するという pbirthday2 でも使った手法をとれることもありますよね。 -- 2004-07-03 (土) 09:09:28
  • 組み合わせ問題では(少なくとも途中では)すぐに超天文学的な数字が登場しますから、倍精度実数の範囲内で正確な値を求めるのは比較的簡単な場合(たとえば n=365 で等確率ケース)を除き、困難です。組み合わせ確率はしばしば組み合わせ論的巨大整数同士の比になりますから。対数関数自身が巨大数に対しては精度問題が発生します。pbirthday 関数がおかしな結果を返すのも、その基本になっている一般公式の近似度が不十分なせいです。かって誕生日問題を扱った論文の結果を Ubasic で多倍長計算で検算して著者の出している値がおかしいことを見つけたことがあります。 -- 2004-07-05 (月) 14:54:48
  • 具体例があれば,きぼんぬ。 -- 2004-07-06 (火) 22:59:41

64 bit 版 R !

(2004-07-02 (金) 23:01:19)

r-help 記事より。お金持ちには64ビット版 R で 4 Gigabyte 以上のメモリが使えるようですね。私のような貧乏人には関係ない話ですが。R でも既に南北問題が存在するようです。

Did you compile R as 64-bit executable on the Irix?  
If not, R will be subjected to the 4GB limit of 32-bit systems.
  • RBookのbioconductorのところでも言及しましたが、同じ4GBでも64bit版のほうがより効率的にメモリが使われるようです。環境はR-1.8.1 on Turbo Linux AMD 8 です。 -- 樋口? 2004-10-29 (金) 11:25:02

anti-R vitriol

間瀬茂 (2004-07-01 (木) 17:10:54)

昨日の r-help に表題のようなタイトル(vitriol というのは硫酸をかける、という意味から辛辣な意見という意味になるようです)の記事が投稿され、それに対する意見・反論で賑わいました。要するに R で大規模データを読み込もうとして、うまくいかなかった人物が逆上している雰囲気(もしかすると熱烈 SAS ユーザーの悪意あるコメントかも知れません)ですが、それに対して R ユーザーがいろいろ意見を述べているのがむしろ興味深かったです。一体どのようなデータをどのように読み込もうとしたのか説明がないので、ある意味で不毛な議論にならざるをえません。しかし近年データマイニングはやりで、ともかく大量のデータを統計ソフトにぶちこめば何か金塊が得られると勘違いしている人が多いようなので、こうした憎まれ口も多くなるのでしょう。R で他のソフトが出来ることは大抵(よりうまく)出来る、ただしピザの注文は別との意見に、いや R でピザの注文も出来る(インタネットにアクセスできるのだから)という反論もありました。R で何でもできるというのは勘違いでしょうが、大量のデータを扱うにはそれなりの工夫がいる(ある)ということのようです。一度読み込んでから R の内部形式で書き出せば、二度目からは相当早く読み込めるはずだという意見や、read.table() 関数の colClasses オプションでデータのフィールドの書式を教えてやれば早くなるはずという意見もありました。こうした問題で苦労した人の tips を期待したいところです。

A colleague is receiving some data from another person. That person reads the data in
SAS and it takes 30s and uses 64k RAM. That person then tries to read the data in R
and it takes 10 minutes and uses a  gigabyte of RAM. Person then goes on to say:
  It's not that I think SAS is such great software,
  it's not.  But I really hate badly designed
  software.  R is designed by committee.  Worse,
  it's designed by a committee of statisticians.
  They tend to confuse numerical analysis with
  computer science and don't have any idea about
  software development at all.  The result is R.
  I do hope [your colleague] won't have to waste time doing
  [this analysis] in an outdated and poorly designed piece
  of software like R.
Would any of the "committee" like to respond to this? Or shall we just slap our
collective forehead and  wonder how someone could get such a view?
  >system.time(spam <- read.table("data_dmc2003_train.txt", 
                          header=T, 
                          colClasses=c(rep("numeric", 833), # 833個の数値欄の後に文字列欄
                                              "character")))
 [1] 15.92  0.09 16.80    NA    NA
 > system.time(spam <- read.table("data_dmc2003_train.txt", header=T))
 [1] 187.29   0.60 200.19     NA     NA

なんで runif はランダムなの?

(2004-07-01 (木) 13:20:06)

意味不明なタイトルと思われるでしょうが、つぎの結果をどう解釈したら良いのでしょう: (つまり百万個一様乱数を発生する手間は同じはず、念には念を入れ乱数種も同じにした)

test <- function (i) {set.seed(222); system.time(runif(1e6))[1]}
x <- sapply(1:1000, test)
fivenum(xx)
[1] 0.24 0.28 0.30 0.30 0.47
  • ほかに何のプログラムも走っていなければ同じ時間になるのでしょうが,OSというプログラム自体が,いろいろサービスしていますし,ガーベッジ・コレクションの時間も関係するでしょう。極端な場合,system.time(for (i in 1:100000) x <- 1)だって,同じ値は返しません。
    Rweb:> system.time(for (i in 1:10000000) x <- 1) 
    [1] 7.01 0.10 7.13 0.00 0.00 
    Rweb:> system.time(for (i in 1:10000000) x <- 1) 
    [1] 5.85 0.07 5.92 0.00 0.00 
    これは,Rの問題ではないでしょう。UNIX の time コマンドも同じような振る舞いをします。 -- 2004-07-01 (木) 15:28:57
  • なるほど、すると system.time でコード速度をはかる時は、こうしたことも頭に入れておく必要があるのですね。 -- 2004-07-01 (木) 16:16:21


添付ファイル: filepoincare2.png 2093件 [詳細] filegoto.png 1312件 [詳細] filepoincare.png 1090件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Google
WWW を検索 OKADAJP.ORG を検索
Last-modified: 2015-03-01 (日) 01:15:59 (1718d)