そういえばTsukuba.Rに行ってきたんだった
- 2008-07-28
- カテゴリ: その他のプログラミング
- タグ: R 遅延評価 関数志向
なんか興奮してHaskellとか書いてたけど、一昨日Tsukuba.Rに参加して、Rを勉強してきたんだった。そこで、syou6162先生に教わったsapply()を使ってfizzbuzzを書いてみよう。
↓な感じ。
fizzbuzz <- function(x, y) {
sapply(x:y, function(n) {
ifelse(n %% 15, ifelse(n %% 3, ifelse(n %% 5, n, "Buzz"), "Fizz"), "FizzBuzz")
})
}
sapply()を使ったから、for文が消えて少しRっぽくなった気がするけど、いまいち芸がない。もう少し工夫ができそう。
Haskellっぽいfizzbuzz書けた!
- 2008-07-28
- カテゴリ: その他のプログラミング
- タグ: Haskell 入門 関数志向
昨晩、突然ひらめいてHaskellでfizzbuzzを書いてみた。
fizzbuzz :: Integer -> Integer -> [String]
fizzbuzz x y | x > y = []
| (mod x 15) == 0 = "FizzBuzz" : fizzbuzz (x + 1) y
| (mod x 3) == 0 = "Fizz" : fizzbuzz (x + 1) y
| (mod x 5) == 0 = "Buzz" : fizzbuzz (x + 1) y
| otherwise = (show x) : fizzbuzz (x + 1) y
なんかすごくHaskellっぽいコードを書けたような気がするんだけどどうだろう?少なくとも、依然書いた↓のfizzbuzzよりは手続き色が抜けてるんじゃないかな?
vimの<C-A>と<C-X>に感動した
vimでカーソル位置の数値をインクリメントする<C-A>とデクリメントする<C-X>って、便利そうだったけど今までほとんど使ってこなかった。単純に、コマンド覚えられなかったっていうのが大方の理由だったから、覚えるためにブログにポスト。
で、今日はじめて真面目に<C-A>と<C-X>を使ってみて、意外なほどの高機能ぶりに驚いた。
まず驚いたのが、単純にカーソルの下の数字だけをインクリメントするわけじゃなくて、カーソル周辺の数値も認識してちゃんと繰り上がりや繰り下がりしてくれること。簡単に言えば、ちゃんと↓みたいに繰り上がってくれるということ。
198 199 200 201
そして、01のように書かれていれば八進数として解釈して、0x1のように書かれていれば十六進数として解釈されることにも驚いた。負数もちゃんと処理してくれるし。
便利すぎるー
マークシート処理システム MarkScan の使い方まとめ 4日目
- 2008-07-22
- カテゴリ: 雑記
- タグ: Tips MarkScanの使い方まとめ
ちょっと間が空いてしまったけど、MarkScanの使い方まとめの4日目。
前回までで、MarkScan, MarkBuilderの使い方や実際にデータを取った後の解析の方法等をまとめました。これ以上は特にまとめることはないのですが、実際に調査をしたときに感じた「あーすればよかった」や「こーしとけばよかった」という点を簡単に書いておきます。あくまでも、「あーすればよかった」と思ったことを書いていくだけなので、今回の記事に書かれていることは実際に試してみたことではありません。それでも、書いておけば参考にする人もいるかもしれないので、書いておこうと思います。
このソースで統計を語るのは…
泥カン周りで↓のような記事が出ていたので、脊髄反射的にポスト。
「日本IT業界」は比較的泥ではない事を統計的に検証 (西岡Blog)
で、このエントリの命綱である「日本IT業界は日本の他の他業種に比べ、賃金など労働条件面では恵まれている」について説明します。そのために3つの統計記事を紹介します。
データを出して検証しているように見えるが、そのソースはひどいだろう。↑のエントリーで提示されているデータのソースは↓の3つ。
- IT系は本当に給料が安い? 2万人の年収比較! − @IT自分戦略研究所
- "時給・年収・ 満足度ランキング2007:職種別/リクナビNEXT[転職サイト]"
- IT技術者の4割は月200時間以上労働――IPAが調査 − @IT
「そもそも、調査結果が発表されている時点で、発表者に有利なように操作されているに決まっているだろう」というような議論に関しては、調査会社出身の私が、WEB上の数字について一言★ - Out of Order.という記事が出ている。
調査会社出身の私が、WEB上の数字について一言★ - Out of Order.
「企業の調査結果」は、パブリッシュメントされたその時点で所謂「二次ソース」だ。
企業に有利なバイアスがかかってる可能性が高いし、
調査の質にもバラつきがある。
その「統計的な数字」に乗っかると企業の思う壺だから、
原則疑ったほうが良いぜ、ベイビー★
まさに言うとおりだと思う。特に、リクナビが出すデータを鵜呑みにするなんて、就職活動中の新卒学生ですらやらない暴挙だぜ。
それで、こういう前提の下で、各資料をちょこっと見てみて感じた事を書き出してみると↓のような感じ。
マークシート処理システム MarkScan の使い方まとめ 2日目
- 2008-07-03
- カテゴリ: 雑記
- タグ: Tips MarkScanの使い方まとめ
前回の記事で、何となくはMarkScanの使い方がわかったかと思いますが、MarkScanを使って楽をするためには「様式」をしっかりと設定してやる必要があります。ということで、2日目の今回は様式の設定方法のまとめ。
マークシート処理システム MarkScan の使い方まとめ 1日目
- 2008-07-02
- カテゴリ: 雑記
- タグ: Tips MarkScanの使い方まとめ
大学で社会調査とか社会心理学とかを勉強していると、演習で実際に質問紙を配ってデータを取ったりすることがよくあります。そして、だいたいそういう時は、質問紙を回収した後にその内容をコンピューターに入力しなければいけなくて、それがものすごく面倒くさかったりして、鬱になってみたりするわけです。そういうときって、「マークシートで調査できればいいのに!」って本気で思ったりします。
それで、探してみると、意外にも簡単にマークシート処理システムが見つかったりするんです。家庭用のPCと普通のコピー機でマークシート用紙が作れて、普通のスキャナで読み込んで処理することができるものが。
そんな数あるマークシート処理システムの中に、MarkScanというソフトがあります。神奈川県立総合教育センターというところが配布しているソフトで、教育目的で、非営利の利用に限り
無償で利用できるものなので、まさに大学の演習などで使うにはうってつけなわけですね。
僕も半年ほど前の演習でこのソフトを実際に使って調査をしてみました。かなり癖があるので使い慣れるまではなかなか大変でしたが、データ入力にかかる時間はかなり節約することができました。その癖を文書の形でまとめようまとめようとずっと思っていながら、半年も経ってしまいましたが、そろそろ簡単にまとめておこうかと思います。卒論でまた使うかもしれないし、研究室の人々にもスキルのシェアを求められたりしていたので。
ということで、以下、MarkScanの使い方を思い出しながら簡単にまとめます。

