Ruby

主催者が一番できる必要はない、僕がRubyKaigiで学んだこと

何となく朝から思ったこと。勉強会とかそういうイベントをやっていると、(本当に)ものっすごい勢いで参加者の人のレベルが上ってきたりだとか*1して、「あれ、これ俺なんかが主催とかしてていいんかな?もっと適切な人がいるんじゃないかな?」と時には思って…

昨日のmechanizeの問題が解決できたよー

mechanizeで分からないこと - Seeking for my unique color. id:elimさんからコメントを頂いた通りpostじゃなくってgetになってたのが原因でした。はてなグループのキーワード編集画面のところはディフォルトでpostになってるのに、なんねgetが適用されるん…

mechanizeで分からないこと

Tsukuba.Rの資料を作っていたんだけど、資料がどうやら長すぎるらしく414のエラーが返ってきてしまう。 /Library/Ruby/Gems/1.8/gems/mechanize-0.7.6/lib/www/mechanize.rb:199:in `get': 414 => Net::HTTPRequestURITooLong (WWW::Mechanize::ResponseCode…

クッキー処理のところを変更

この前のやつをちょっと変更。

mechanizeでログインした時に、ブラウザ側がログアウトしないようにするためのスクリプト

Firefoxのcookieを直接読み込んでたりするのが、いいのか悪いのか知らないんだけど、とりあえずこれでログアウトしなくなった。yamlにはこんな感じで書いておく。 cookies: /Users/yasuhisa/Library/Application Support/Firefox/Profiles/(何か英数字が入る…

そろそろRの本当の力を見せておくか

「RってTwitterで遊ぶためのものなのか」とか思われるとあれなので、ちょいまじめネタで行くことにします。「株価データの収集、基本的なデータの解析、株価の予想モデルの作成まで全部Rでできちゃうよ」編です*1。とりあえず、株価データの収集をしてくる関…

RにTwitterのtimelineを行列形式で取得できるようにした

発言はできるようになっていたので、後はtimelineの取得ですね。というわけで以下Rのコードです。どこからどう見てもRubyではなく、Rのコードです。 timeline <- function(){ ruby <- paste(" #!/usr/bin/ruby -Ke # -*- coding: utf-8 -*- require %q[rubyg…

Rから(ほぼ任意の)Rubyを自由に呼べるようにした

id:ujihisaがRubyKaigiでRubyの中でHaskellとかを書いていたりして、とても楽しそうだったので、僕もRの中でRubyを使いたいと思った!!なので、やろうとしたんだけど、RにはEOFみたいなヒアドキュメントがない。Rのコードの中にpasteとかでつなぎまくればどう…

適当に改良(?)した

この前のはさすがに俺俺すぎたので、設定ファイルとかで、他の人も使えるようにしている"途中"。ToDo タイムスタンプを見て、更新されているやつだけ差分でupdateする(はてダラと同じような感じで) cookieの処理をちゃんとしないとブラウザのほうがログアウ…

Rubyからはてなグループのキーワードを編集するための適当なスクリプト

Tsukuba.Rの資料をはてなグループのキーワードで書いていたんだけど、Emacsで書きたいので*1、mechanizeなRubyスクリプトに適当にはてなグループのキーワード用の資料を埋め込んだりしてみた。使いたい人はいるか知らないけど、その時はグループ名とか、キー…

RubyKaigi 0th day

とりあえず箇条書きで行くよ。 集合時間を間違って8:30に到着してしまった でも、Ruby札幌の人逹に一足早く会えてよかった 一緒に行っていったmiyagawa氏に迷惑をかけてしまったことだけはごめんなさい id:mrknさんが予想以上にイケメンすぎてやばかった 午…

TOEICのリスニングがだめだめだったので、鍛えることにした

この前受けたTOEICの結果が返ってきたわけですが、リスニングがぼろぼろすぎたので、どうにかしようと思いました。というわけでdictationの練習でもすることにしました。で、dictationの準備が面倒なんで、適当に教材をダウンロード&加工するスクリプトをRub…

はてなカウンターからアクセスログをちまちま収集して、DBにぶちこんでいくスクリプトを書いた

本当は問題発見と解決くらいの時に、これができてればよかったんだけどねwww。というわけで初めてsqliteとか使ってみました。DBの設計とかよく分からないというか、忘れてしまったので適当。マルチスレッドでやろうとしたんだけど、Singletonパターンででき…

はてダラのローカルタグ検索をRubyに移植した

Haskell版だとその日の関係ないエントリも上がってきてしまうので、どうにかするやつをRubyで書いた。-dオプションでエントリの内容詳細も出力するようにした。 require 'optparse' require 'kconv' class String def is_int? return /^#{self.to_i}(\.0+)?$…

つくば手帳オフをやったよ→追記したよ

手帳とか文具とかライフック(笑)が好きなid:syou6162、id:Hash、id:wakataka_423が中心となって、手帳オフなるものを開催しました。まあ、やりたいようにやりましたwww。他の参加者はid:blanc_et_noir、id:beatinaniwa、id:yuzuhara、途中からid:daftbeatsと…

マルチスレットなどなど

例えば、Twitterから同時にデータを取得するような例とかを考える。自分で結構考えてみたけど、処理が同時には走らない。どの辺がおかしいのかよくわからん。。。 #!/usr/bin/ruby -Ke require 'rubygems' require 'thread' require 'enumerator' require 'p…

run_r.rb

friend.rbの情報から動的にRの変数を作成させるためのRubyのコード。別に手でRのコード書いてもいいけど、面倒なので自動化した。変数になりそうなもの全部をregに入れておいてもいいけど、2^nで考えないといけないことが増えるので効きそうなものを放りこん…

prediction.rb

確率を予想したい人たちの説明変数を収集するのに必要な情報を収集するのに必要なプログラム。基本的にはmain.rbの使いまわし。

friend.rb

followersとかfollowingとかの人の情報を持っておくためのクラス。何か長いようですが、フラグを付けるためにいろんなメソッドがいろいろあるだけで難しいことはやってません。Hpricotとかで必要な要素を取ってきてます。例外処理とかよく分からない。あと、…

main.rb

mainとなる部分。何かベイズ使ってフラグの判定とかしてますが、最終的には使ってません。yamlにTwitterにログインするパスワードを書いておきましょう。

R Graphical Manualsから画像を引っぱってくる

Rでどんなプロットができるかの具体例が超大量に載ってるR Graphical Manualsというサイトがありました。 http://cged.genes.nig.ac.jp/RGM2/index.php?clear=all で、ここがWeb APIを提供しているので使ってみた。graphicsのパッケージの例の画像を片っ端か…

メモメモ

Timeクラスのインスタンスの差分の和を計算させる。Rのdiffに当たるものがあればsum(diff(x))で一発なのに。。。 time = [Time.mktime(2007, 6, 2, 16, 30, 50),Time.mktime(2006, 6, 2, 16, 30, 50),Time.mktime(2005, 6, 2, 16, 30, 50),Time.mktime(2007,…

iKnowの単語をごっそり持ってくるスクリプト

iPod touch用の単語帳を作ったのはいいんだが、TOEFL Reading Advancedを勉強しはじめてほとんど分からない、という自体に遭遇。csvファイルを手で書いていたが、面倒になったので、Rubyでcsv吐き出すスクレイピングのやつを書いた。urlはコースの表示件数を…

Rubyのevalっぽいこと

昨日出した問題には実は応用編も用意していた。お題はこんなの。 コマンドラインの引数から実行するメソッドの名前を受け取って、そのメソッドの計算をさせるようにしてください。 「それevalで」とか思ったけど「eval(method(array))」みたいにすると動かな…

みんなが作った問題に対する俺の回答

昨日書いたRuby勉強会第三回の続きです。今回はみんな課題ちゃんと作ってきてくれたお!! コマンドライン引数で渡したファイルを読んで、引数で渡した文字列から始まる行をとってくる id:InoHiroの課題 正規表現に変数入れるときは「#{}」ってやるってことで…

Ruby勉強会の事務的な連絡

来週はお休みです 再来週(25日)はあります 次は4章からなのですが、ここから問題を作るのは難しそうなので7章まで飛ばして一気に8章まで飛びます 8章はクラスとかだよ 8章には2週を費やします 25日の分の課題はクラスに慣れていない人もいるので、簡単な課題…

第3章コマンドを作ろう

目次 コマンドラインからのデータの入力 ファイルからの読み込み ファイルからテキストデータを読み込んで表示する ファイルからテキストデータを1行ずつ読み込んで表示する ファイルの中から特定のパターンの行のみを選んで出力する コマンドラインで引数に…

環境構築

明日はRuby勉強会第三回ということなので、Rubyの環境構築をすることにした。とりあえずデバッグ環境を整えることにした。 Wiki系過去ログ - あさあさ.tk 自分用リファレンス コマンド 意味 l num num行付近のソースを表示 w 現在位置を表示。関数やメソッド…

第2章便利なオブジェクト

目次 配列(Array) 配列を作る 配列からオブジェクトを取り出す 配列にオブジェクトを格納する 配列の中身 配列と大きさ 配列と繰り返し ハッシュ(Hash) ハッシュを作る ハッシュからオブジェクトを取り出す ハッシュの繰り返し 正規表現 パターンマッチ…

Rubyでスパイダリングとかをやってみた

Ruby勉強会番外編っぽくスパイダリング講座on Webをやるとか書いてたので、深夜Ustreamでやってみました。結果としては教えるより、教えてもらうような感じになったけどねwww。hpricotの付近からujihisaさんとid:beatinaniwaさんに教えてもらいました、あり…