その他のプログラミング

[R][メモ] 卒論で使った分析

卒論のためにRを使って行った分析をメモ。

やったことは、

  1. 3要因分散分析 (被験者間計画)
  2. 検出された交互作用を検定するために単純主効果検定
  3. 単純主効果の強さを測定するために効果量を計算 (イータ2乗)

統計のこともRのこともあまりよくわかっていないけど、少なくとも手元のデータではSPSSと同じ数値が出た。

続きを読む

[メモ] pLaTeX+dvipdfmxを使って作成したPDFファイルにフォントを埋め込む方法

たぶんやり方はたくさんあると思うけど、僕が卒論の原稿にIPAフォントを埋め込んだときに使った方法。

OSはWindowsで、TeXのプログラムはW32TeXをほぼそのままインストールしただけ。

基本的にはdvipdfmxを使ってPDFを作成する。dvipdfmとかを使ってもうまくいくかは知らない。

続きを読む

心理学用BibTeXスタイルファイルのバグ(?)

心理学学会の投稿規定に沿った形に整形してくれるBibTeXスタイルファイルに、beta_jecon2nonote.bstというものがある。Googleで検索しても開発者のサイトにしかヒットしないから、あまり使っている人は多くないのかな?

卒論を書くのにすごく愛用しているんだけど、先日バグ(?)らしきものを見つけたので、ちょっとブログで公開してみる。開発者にメールで伝えるべきか迷っているけど、バグなのか使い方が間違っているのかがいまいちわからないから躊躇しているところ。

詳細は続きで。

続きを読む

[卒論] LaTeXのビルドにOMakeを使ってみた

OMake つかって LaTeX コンパイルしたら簡単すぎて身長が5cm伸びた - 日記を書く[・ _ゝ・]はやみずさん

LaTeX のコンパイルめんどくさい。何がめんどくさいって、ref つかうと2回コンパイルしなきゃいけないとか、bibtex の使い方覚えられないとか。そもそもファイル保存するたびにコンパイルしなおすとか、、、

(略)

で、OMake つかったらあまりに簡単すぎてわろた。

うわーーーん><こんな記事を上げられたらまた卒論そっちのけでTeXとかいじりはじめちゃうじゃないかーーー><

というわけで、

卒論原稿のLaTeXファイルをOMakeでビルドしてみました。Windows環境だからちょっと面倒かも。

OMakefile等は続きで。

続きを読む

[FontForge] IPAゴシックとDejaVu Sans Monoを合成するスクリプトを修正

前回のエントリーで、FontForgeのスクリプトを使ってDejaVu Sans MonoとIPAゴシックを合成したりしてみた。そのとき使ったスクリプトを手直しして、少しきれいに出力できるようになったぽいので、新しいスクリプトをメモしておく。

変更点

  1. 横幅の縮小率を75%から80%に変更
  2. カーニング情報が崩れていたのを修正
  3. ハイフン("-")が短すぎて見づらい問題を修正

ソースは続きで。

続きを読む

DejaVuフォントで日本語を使いたい!

DejaVu Sans Monoサンプル

プログラミングに使える良いフォントを探していたら、DejaVuフォントというものを見つけた。確かにすごくきれいだし見やすい。

で、VimでDejaVu Sans Monoを使おうと思ったんだけど、Vimでは欧文フォントと和文フォントを別々に指定することができないから、DejaVu Sans Monoを指定してしまうと日本語が表示できなくなってしまう。だから、いろいろと試行錯誤してみた。まだ途中だけどとりあえずメモ。

続きを読む

[Haskell] 素数列を生成するアルゴリズム×3

最近すっかりブログから離れていたので、リハビリがてらにメモ代わりのエントリー。

Haskellで素数の無限リストを生成する関数を3つほど作ったのでメモ。

primes1 = 2:f [3,5..] where f (x:xs) = x:f [y | y <- xs, mod y x /= 0]

primes2 = 2:filter f [3,5..]
    where f n = all ((/= 0) . (mod n)) (takeWhile ((<= n) . (^ 2)) primes)

primes3 = 2:f [3] [3,5..]
    where f (x:xs) ys = let (ps, qs) = span (< x^2) ys
                        in  ps ++ f (xs ++ ps) [z | z <- qs, mod z x /= 0]

primes2に関しては1000000個の素数 - HaHaHa! - haskellを、primes3に関しては誇大宣伝ではないエラトステネスの篩 - HaHaHa! - haskellをそれぞれ参考にした。

以下解説。

続きを読む

HaskellでProject Eulerに挑戦してみた

id:gomi-boxに触発されて、Project Eulerに挑戦してみた。

Project Eulerみたいな、アルゴリズム的なものを書いて一人でくねくねする遊びは、Haskellとの相性が良すぎる。

コードは続きで。

続きを読む

[Haskell] Monad周りで自分なりに考えてみたこと

Haskellを真面目に勉強し始めて10日ほど経つ。一応、Yet Another Haskell Tutorialをだいたい読み終わったわけだが、最後のモナドの章だけは断念した。日本語で何回説明されてもわからないものを英語で説明されてもわかるわけがない。

とはいえ、一応Haskellの文法などは勉強してみて、モナドについてもいろいろと聞きかじってみたわけで、自分なりに「モナドってこんなものなのかな?」っていうようなものはつかめたような気がする。なので、自分なりの理解やら疑問やらをメモっておこうかと思う。

自分の考えの整理のために書き連ねるので、もし間違っていたり考え違いをしているところがあれば (そんなところばっかだろうけど) 、容赦なく突っ込んでもらいたい。

続きを読む

そういえばTsukuba.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っぽくなった気がするけど、いまいち芸がない。もう少し工夫ができそう。

続きを読む