サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
GPT-4o
m884.hateblo.jp
久しぶりの投稿です。最近新しい知り合いも増えてきたので、自己紹介がてら簡単な来歴と近況を報告します。 まず来歴ですが、1984年に大阪で生まれて、大阪大学人間科学部に入り、社会学を専攻し、そのまま博士課程まで進んだものの、研究者になる気がなくなり、就活する気も起きなかったので起業しました。 あとは、研究上で知ったR言語という統計解析用プログラミング言語にはまり、執筆・講師やコミュニティ活動等熱心にやっていましたが、起業してから使わなくなってしまっているので遠ざかり気味です。とはいえ統計解析や機械学習はいずれ仕事にも取り入れていくつもりです。 会社について 2013年8月に起業しました。ただ2013年度はまだ大学院に所属していたので、本格始動は今年4月からです。 社員がやりたいことだけをやるための会社です。社員はまだ私含め2人ですが。こんな会社にもかかわらず、いろいろ幸運が重なって、いまのと
2014/12/09 追記:結局ずっとfreeeを使い続けていますが、サポートに関しては改善されていると思います。記事は残しておきますが、このようなことはもう起こらないだろう、という信頼感を感じています。対してマネーフォワードですが、「対応の見込みが分かり次第連絡する」との返信があってから、結局なんの連絡もなく、無料試用期間を過ぎたので退会しました。MFも今はどうなのか分かりませんが、私の中での評価は逆転しています。 1.サポートが最低 これに尽きます。 freeeがどういうサービスなのかは検索すればいくらでも記事が出てきます。1つだけリンクをはっておきます。 簿記を知らなくても使える会計ソフト「freee」、グーグル卒業生が開発 -INTERNET Watch 前提条件として、私はfreeeの法人プランを10月から利用していて、すでに1年分の料金を一括で支払い済みです。ごねても返金はして
これまでアンケートに答えたことのない方は皆無と言い切ってもいいと思います。そこまで広く世に浸透しているアンケートですが、一方で「ちゃんとした」アンケートのやり方を知っている人はごくまれなのではないでしょうか。学術的にもアンケートが用いられることは多いのですが、研究者でさえ、アンケートを採るのに専門的な知識はいらないと思っている人がかなりいるように感じます。 しかし、実際に有用な結果を出せるアンケートを採ろうと思うと、高度な知識と熟練の技能が必要です。世の中の大多数のアンケートは、一度集計結果をみて「ふーん」と思ったあと、まったく活用されず放置されているんじゃないでしょうか。そういう経験を積むと「アンケートなんてやっても大して意味ないよね」という誤った結論に陥りがちなのですが、実際にはアンケートという専門的で高度なツールを使いこなせていないだけなのです。 アンケートは、専門的には質問紙調査と
R Advent Calendar 2013の2日目です。 今回のネタは、本当は去年どっかでやろうと思ってたものだったんですが、機を逃して温めすぎて発酵しかけてたものです(このネタの存在自体忘れてた)。とりあえず、日本語での情報は少なくともまだウェブには無いようなので安心。ちなみにtable編と書いていますが、続編の予定はありません。もちろん、興味を持っていただいた方は好きに引き継いでもらってかまいません。 fortifyとは? さて、ggplot2を利用されている方は多いと思いますが、高機能な分みなさん使いこなすのに苦労されているようです。実際一朝一夕で使えるようにはならないものではあるんですが、実際には便利な機能があるのにそれを知らないために苦労してただけ、ということもあったりします。今回紹介するのは、そんな便利機能の中でも特に知名度が低いと思われるfortify()という機能(関数)
タイトルの通りです。長いです。どんな会社なのかということにだけ興味があるかたは、下の方を見てください。 研究職をあきらめる理由 そもそも研究職に就きたいと思わなくなったので、「あきらめる」わけではないのですが。まあ、分かりやすさ優先で。 モチベーションが下がった 研究のモチベーションの低下が大きな理由です。厳密には論文を書くモチベーションがなくなりました。というより、最初からあったのか微妙ですが。これは修論を書いていていたころからそうです。修論を出した後、就職も考えましたが、もう少しモラトリアムを続けようと考えました。修論は初めて書いた論文なので苦労するのは当たり前です。調査や分析や議論など、論文を書くこと以外は楽しかったので、そこをクリアできればなんとかなるだろうと思いました。楽しくはなかったものの、書けないというわけでもありません。とりあえず博論さえ出してしまえば、あとはなんとかなるだ
あ...ありのまま 今 起こった事を(ry R5クラスでサブクラスを定義すると、スーパークラスがインスタンス化されます。 な… 何を言っているのか(ry 本当に意味が分からないです。 setRefClass("Parent", methods=list( initialize = function()print("run"))) setRefClass("Child", contains = "Parent") Parentクラスはインスタンス化されるさいに"run"と表示するだけのクラスです。ChildクラスはParentクラスを継承しているだけのクラスです。 > setRefClass("Parent", + methods=list( + initialize = function()print("run")) + ) > setRefClass("Child", contains
息抜きにRzThemeEditorで作ってみたら,息抜きにならないぐらい一瞬でした。 ggplot2のテーマを手軽に作成・編集する(R Advent Calendar 2012) - はやしのブログ Rev.3 せっかくなので公開しておきます。 「執筆・投稿の手引き」を見て作りましたが,正しさに責任は持ちません。 こんな感じです。 p <- ggplot(data = iris, aes(x = Sepal.Length, y = Sepal.Width, colour = Species)) p <- p + geom_point() p <- p + scale_colour_grey() p <- p + theme_JPR() print(p)
R Advent Calendar 2012の14日目です。 皆大好きggplot2ですが,多機能であるがゆえに使いこなすのはなかなか大変です。 特に見た目の調整については,そのままでもきれいなのであまり積極的にいじろうとは思わないのですが,ちょっと調整したいな,と思うと,どういじっていいのかわからず,そのたびに苦労してしまいます。 Ecxelはその点,図の編集が簡単にできていいですね。 しかしこのままExcel > Rという不等式を容認してしまってよいのでしょうか?いいはずがありません。 というわけでggplot2のテーマをGUIで作成・編集できる機能をRzにつけました。 ggplot2のthemeの全要素に対応しています。それぞれの要素が何を表しているのかはggplot2のドキュメントを見てください。 theme. ggplot2 0.9.3 フォントを変更する場合は,フォントをRで使
『はじめての「R」』やってきました! 第三回Japan.Rで入門セッションを担当させていただきました。 Japan.R当日の様子は@bob3bob3さんがまとめてくれています。 「第7回R研究集会(Rユーザー会)と第3回Japan.R #rjpusers #japanr」をトゥギャりました。 togetter.com/li/416482— Bob#3さん (@bob3bob3) 12月 2, 2012 で,入門セッションはというと, 50人くるはずが15人ぐらいしかいないw #JapanR— 林真広/HAYASHI Masahiroさん (@phosphor_m) 12月 1, 2012 こんな幕開けでしたが,最終的には30〜40人ぐらいのかたに来ていただいて無難に終えることができ,胸をなで下ろして午後の部を楽しんでいたのですが。 おや,slideshareにアップロードしたスライドに異変
RにもWeb化の波が来てますね。 RStudio, IncがリリースしたShinyはRのみでサーバーも他言語も必要とせずウェブアプリを作成できる画期的なパッケージです。 Introducing Shiny: Easy web applications in R - rstudio.com/shiny/ #rstats #rstudio #shiny— RStudioさん (@rstudioapp) 11月 8, 2012 概要はバタデ先生にお任せするとして,簡単なアプリを作ってみました。 ウェブアプリのスクリプトは,2つのファイルに分けて作成します。 1つめは,ui.Rという名前で作成します。 2つめは,server.Rという名前で作成します。 これらを1つのフォルダに保存します。ここではstockというフォルダを作って,そこに保存することにします。保存したら,Rを立ち上げ,stockのあ
Rで困ることはもうほとんどないのですが,唯一致命的なのが,まともなクロス集計表を出力する関数がないことです。論文で標準的な形式の,周辺度数込みで度数と行パーセントを並べているだけのものでいいんですが,tableやらprop.tableやらaddmarginsやらを駆使してもなかなか思い通りのものが作れない。gmodelsとかのCrossTable関数は悪くはないんですが,返り値がtableじゃない,オプションをいっぱい指定しないと好みのものができない,3重クロス表に非対応,など不満点はけっこう多いです。 パッケージでいい関数が作られてないか,数年間探し続けてたんですが,ラチがあかないので作りました。 使い方は簡単です。 > # 擬似データ作成 > 性別 <- factor(rbinom(1:1000, 1, 0.5), labels=c("男性", "女性")) > 年齢 <- facto
semパッケージはオワコン。通はOpenMxかlavaanを使う。そう思っていた時期が私にもありました。 ところが,semパッケージがこの半年の間に2回もメジャーバージョンアップを行っており,凄まじい進化を遂げていました。こういう定番パッケージは大幅な更新はないものと思い込んでいましたが,恥ずかしい見当違いでした。 ざっとヘルプに目を通したところ,以下のようなすばらしい更新点があります。 待ち望まれていた多母集団同時解析に対応! CFA用のモデル記法の追加 LISREL風のモデル記法の追加 モデルの結合や更新の機能 誤差項を自動的に追加するオプション その他多数 以下,Osaka.R #4の発表資料に対応させる形で解説していきます。 LISREL風記法について まず,LISREL風記法については,回帰式をそのまま書くような記法が使えるようになりました。 ものすごく簡潔でわかりやすいですね!
移転しました。 http://m884.jp/Rz_Ja.html * 更新履歴 Rzパッケージの更新履歴 2012-02-06 0.3-8 クイックエディタビュー,値ラベル編集機能,キーボードショートカット追加 2012-02-01 0.3-6 大幅更新 2011-04-04 0.2-1 初版 なお,開発版を次のリンクで公開しています(Windows用バイナリ,ソース)。CRANポリシーによりCRANへのアップロードは月に1回程度に制限されていますので,いち早く最新版を使いたい方はこちらをご利用ください(タイミングによってはCRANに上がっているものと同じバージョンかもしれません)。 このチュートリアルの更新履歴 2012-02-07 0.3-8対応 2012-02-02 0.3-6対応の初版 動作環境 主にWindowsとLinuxで動作確認をしています。Macは英語のみ,かつ公式GU
alarm ではみなさん,おもむろに下のスクリプトを実行してください。 alarm() 音が出ましたね。それだけです。 R Advent Calendar 2011のレベルが高すぎて泣きそうです。でも開き直って,しょーもない小ネタでお茶を濁したいと思います! ということで,utilsパッケージをざーっと眺めて,目に付いたものを紹介していきたいと思います。 ちなみにさきほどのalarm関数ですが,関数を使わなくとも,文字列で実現できます。alarmの中身を見れば分かりますが, cat("\a") これだけで音が出ます。これをcolnamesとかに仕込んでいたずらを…と思ったんですがうまくいきませんでした。 apropos 知ってる人が多いと思いますが。aproposはオブジェクトを検索する関数です。うろ覚えの関数を探すのに便利です。 apropos("sum") いろいろ合計する関数がありま
前回の最後に見たように,オブジェクトには種類があり,種類によって扱い方が異なる。計量社会学においてRを扱う上で最低限必要となるオブジェクトを再掲する。 ベクトル 数値ベクトル is.numeric() 文字列ベクトル is.character() 因子ベクトル(順序付き,順序なし) is.factor() 論理ベクトル is.logical() リスト リスト is.list() データフレーム is.data.frame() ベクトル Rにおいてのベクトルは,高校数学で習ったベクトルとは少し異なる。難しく考える必要はなく,Rにおいては,ベクトルとは以下のようなものである。 num <- c(1, 2, 3) # 数値ベクトル作成 num #=> [1] 1 2 3 char <- c("abc", "def", "ghi") # 文字列ベクトル作成 char #=> [1] "abc"
要R (≥ 2.13.0)です。では,おもむろに以下のスクリプトを実行してください。 install.packages("Rook") s <- Rhttpd$new() s$start(quiet=TRUE) s$browse(1) ブラウザが立ち上がり,テスト用のウェブアプリが表示されました。たったこれだけで! なぜこんなことができるかというと,Rは実はウェブサーバーを内蔵していて,Rookパッケージはこれを使ってウェブアプリを稼働させています。 Hello, World! ではお約束にとりかかりましょう。 app.hw <- function(env){ res <- Rook::Response$new() res$write("<html>\n<head><title>Test</title></head>\n<body>\n") res$write("<h1>Hello, Wo
これは古い情報です。最新の情報はこちらになります(2012/02/03) 長らく更新が止まっていたmemiscGUIパッケージですが,Rzパッケージと名前を変え,CRANに登録しました。パッケージの目的や使い方には大きな変化は無いですが,更新点は多数あります。 R5リファレンスクラスで全面的に書き直しました。 データセットとデータフレームのリンクが不要に。大局的環境のデータフレームとシームレスに同期。 一度読み込んだデータセットはキャッシュしておくことで,データセットの切替を高速化(ほぼ待ち時間なし)。 独自形式データ(*.rzd)の保存・読み込み機能(実態は独自クラスオブジェクトをsave()で保存しているだけ)。 変数名,変数ラベルの検索機能を実装。 リコード時に変数ラベルの付与が可能に。 その他,たくさんのバグフィックス。 自分でいうのもなんですが,memiscGUIと比べると,格段
R2.12から実装されたR5クラスの覚え書きです。日本語の情報はまだないみたいなので一番乗りを狙って。ちなみに継承関係は、面倒なので完全に無視してます。ごめんなさい。その他、網羅性は期待しないでください。 R5クラスの特徴 参照渡し オブジェクトを編集できる S4より緩くて使いやすい 他にもあると思いますが、触ってみた感想ということで。 とりあえずクラス定義 tc <- setRefClass(Class="testClass", fields = list(f1="numeric", f2="numeric"), methods = list( foo = function() { "f1とf2を足し合わせるメソッド" f1 + f2 })) R5クラスはsetRefClass()で定義します。主に使うオプションは、Classとfieldsとmethodsです。Classでクラス名を定義
リコード機能とログ機能を付けました。 追記 リコードのrange記法を追記しました。 リコード機能 変数上で右クリックしてリコードを選択すると,リコードのダイアログが表示されます。 一番上がその変数に存在している値です。その下の左側が変数の値とラベルの対応関係です。この二つを分けている理由が一見分からないかもしれませんが,ラベルは存在していない値にも付けることができ,反対に値は存在するがラベルはついていない場合があるので,そういったことを確認するためにこうこう構成にしています。 ラベルの欄の右側ついては,一番上がいまリコードしている変数の名前,その下がリコード結果を保存する変数の名前です。リコード先にリコード元と同じ名前,またはデータセット中に存在する変数名を入力すると,上書きされます。データセット中に存在しない変数名を入力すると,新変数として付け加えられます。 その下の「テンプレートの生
インストールはこちらで。 起動 インストール後,起動は以下のようにするだけです。 library(memiscGUI) memiscGUI() データの読み込み(ファイルから) 起動すると,上のようなWindowが表示されます。メニューバーのファイルをクリックすると,次の画像のようなメニューが出てきます。 まずは,インポートを選んでファイルを読み込んでみます。現在のところ読み込めるのはSPSSシステムファイル(*.sav),SPSSポータブルファイル(*.por),Stataファイル(*.dta)です。読み込む形式を変えたいときは,右下のドロップダウンメニューから選んでください。 大きなデータだと読み込みに時間がかかると思います。読み込みが終わると,以下のようにWindowの表示が変わります。 値ラベル以外は,行を一度選択してから,次に各セルをクリックすると編集できます。尺度はドロップダウ
Osaka.R #3で発表したmemiscGUIパッケージの紹介です。 memiscパッケージの詳細についてはこちらのスライド(PDF)を参照していただきたいのですが,SPSSの変数名ラベル,値ラベル,ユーザー欠損値などの機能がRでも使えるようになるパッケージです。 memiscGUIパッケージは,なんのひねりもない名前ですが,memiscパッケージの機能をGUIで扱えるようにするためのパッケージです。ようは,memiscパッケージの力を借りて,エセSPSSをR上で作ることを目指したものです。 以前DFBrowserという似たようなパッケージを作っていましたが,そのころはmemiscパッケージの機能を把握していなかったため(存在は知っていた),値ラベルやユーザー欠損値といった機能はありませんでした。後日無理矢理組み込もうとしたんですが,DFBrowserの作成当初はバックエンドとして用いて
Graphvizは,DOT言語という言語のスクリプトからきれいなグラフを描画できるソフトウェアなのですが,GraphvizにRからアクセスするためのRgraphvizというパッケージがあります。 非常におもしろいパッケージなんですが,GraphvizとRgraphvizのバージョンの組み合わせによっては動かないことがあります。というか最新版を入れるとたいてい動きません。かといって古いバージョンでもやっぱり動かなかったりします。 https://wiki.duke.edu/display/DUKER/Install+RGraphviz+under+Windows このページで推奨されたバージョン(graphviz-2.20.3a.msi)でうまくいったので,メモとして残しておきます。 インストール方法は, http://www.graphviz.org/pub/graphviz/stable
現在はDFBrowserの開発は凍結し,より高度なデータ管理機能を備えたmemiscGUIパッケージを開発しています。詳細はこちら。 文系ユーザーにRを進めるうえで最も障害になるのは,RのGUIの弱さです。 弱いといってもデフォルトでGUI環境がついてくる言語なんてほとんどないのでその意味では充実しているのですが,SPSS,Stataなど社会科学でメジャーな統計解析パッケージとは比較にもなりません。 Rにはプログラミング言語としての側面と統計解析環境としての側面がありますが,統計解析環境としての機能は(個々の関数はともかく)ほとんどありません。 そろそろ書くのがめんどくさくなってきましたが,「なければ作れ」,という天の声が聞こえてきたので作りました。 http://www.screentoaster.com/watch/stWEtdS0BIR19aRl5cXlJeVlRS/dfbrowse
タイトルの通りです。 パッケージ内に子環境を作ってオブジェクトを格納する 自作パッケージの関数で,パッケージの内部でしか使わない関数を大局的環境に読み込まないようにしたかった。twitterで聞いてみたところ,environmentという助言をid:syou6162にいただきました。 つまり,パッケージ内に子環境を作ってその中にオブジェクトを格納しておけば,子環境自体は大局的環境に読み込まれるものの,子環境の中のオブジェクトは大局的環境に読み込まれないわけです。 [パッケージ環境(大局的環境に読み込まれるオブジェクト[子環境(大局的環境に読み込まれないオブジェクト)])] こんな入れ子状になります。これは簡単にできます。 env.for.package <- new.env() assign("f", function(x, y){x*y}, envir=env.for.package)
R用エディタとしてはESS on Emacsが最強なのは間違いないですが,初心者にはとっつきづらいです。社会学界隈では大半の人が,エディタって何?おいしいの?ってレベルなので,とてもじゃないですがおすすめできません。 かといってWindowsのRはGUIがしょぼすぎる。というか実用レベルじゃない。プロンプトでshift+矢印で選択できないとかどういうこと?一向に改善されないのは開発者がみんなESS使ってるからなんでしょうか。 そこで外部エディタと連携させようというのが次善の策になるわけですが,おすすめしたいのがNotePad++とNppToRの組み合わせです。NotePad++はプログラマ用エディタで,そこそこ人気らしいです。色付けやら自動補完やらいろいろ便利な機能が付いています。そしてNppToRは,NotePad++とRを連携させてくれるありがたいソフトウェアです。Rのデフォルトのエデ
某所でRのformulaオブジェクトの扱い方について話題になっていて,自分自身あまり詳しくはなかったので,まとめておく。 formulaはRに特有のクラスで,使いこなせば分析を非常に効率化できるが,つっこんだ情報はあまり見かけない。formulaは基本的には回帰系の関数の引数に用いられる,モデルを表現するオブジェクトである。 fm1 <- y ~ x1 + x2 + x3 class(fm1) #=> [1] "formula" update(fm1, . ~ . + x4) # updateで書き換えられる #=> y ~ x1 + x2 + x3 + x4 update(fm1, . ~ . -x1) #=> y ~ x2 + x3 + x4 update(fm1, y2 ~ (.)^2) #=> y2 ~ x1 + x2 + x3 + x1:x2 + x1:x3 + x2:x3 #
このページを最初にブックマークしてみませんか?
『はやしのブログ Rev.3』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く