R

ランク付けにおける重複なし確認のやりかた

複数個の対象についてランク付けをしてもらいたいことがあります。例えば、6種類のソーダ水をおいしさ順に並べてもらい、ソーダ水どうしのおいしさの差を見るなどが考えられます。今回は、そのデータをとるときに「順位の重複を許さないように判定する方法」…

線形混合モデルを(Juliaで)理解したい

以前「線形混合モデルを理解したい」という記事を読んで、Rで線形混合モデルを試したことがあるのですが、今回は、Juliaで同じことをやってみたときにハマったところを書き残しておきます。 やりたかったことは、前述の記事からもってきた以下のようなコード…

RでOSを判別する方法

R

先日、JuliaでOSを判別する方法を書きました。 marui.hatenablog.com Rでも同じことをやりたい場合があるので、メモしておきます。Sys.info()関数を使うと、システムについてのさまざまな情報が得られます。その中でもsysnameがOSの種類を取ってくるものです…

東京都のCOVID-19データに指数関数をあてはめた

R

昨日、データが取って来れるようになりました。 marui.hatenablog.com そこで、緊急事態宣言解除後の新規陽性者数について指数関数をあてはめてみました。 縦の破線が緊急事態宣言と解除の日*1、赤色の実線が7日間移動平均線で、緑色が指数関数フィットです…

東京都のCOVID-19データを取ってくる(R版)

R

今日の東京都では366人の新規陽性者数が確認されましたね。今後どうなることやら。 catalog.data.metro.tokyo.lg.jp 統計を勉強している人は、生きているデータだとモチベーションが上がるし有用性もあるかもしれないから自分でもデータ分析してみよう、なん…

JuliaからRCallを使ってANOVA君を呼び出す

ANOVA君は、井関龍太氏が開発している、Rで動作する分散分析プログラムです。様々な実験計画に対応できるようになっており、分散分析に加えて多重比較や単純主効果の検定もやってくれます。自分ではlm()とかaov()なども使ってはいますが、ANOVA君は一回の関…

Julia(とR)で古典的多次元尺度法

昨日、こんなツイートを見た。 以前、県庁所在地と県庁所在地の間の距離が一番近いのどこか気になって、大津と京都が一番近いという無駄知識を得たんだけど、国土地理院さんが「都道府県庁間の距離」というなんのために作成されたのかまったくわからない図表…

ステレオパンニングの実装(R Advent Calendar 2014)

はじめに R Advent Calendar 2014 (ATND)の28日目の記事です。Qiitaにもアドベント・カレンダーがあるのですね。 昨年のカレンダーでもRを使って音響信号処理っぽいことをしたのですが、今年もその路線でやりたいと思います。今年は少し簡単な素材として、ス…

ラベル視認性が(若干)高いbiplot

R

因子分析(や主成分分析)の結果をバイプロットすることがあります。因子分析の場合は、Rのbiplot()関数を使うと以下のように因子負荷量(赤矢印)と因子得点(黒数字)を表しています。 この図を作るのには、まず因子負荷量・因子得点っぽいダミーの値を準…

R.appのロケール設定

R

ふだんRを使う時にはR Studio、ESS、R.appを併用しているが、R.appを起動する時だけ「ロケールの設定がうまくいっていない」といった警告メッセージが出てくるようになった。どうやらMacを新調してからこういったことが起こるようになったので、新しいMacで…

室内音響指標C値の計算 (R Advent Calendar 2013)

あけましておめでとうございます。R Advent Calendar 2013の32日目の記事です。僕の専門は音響と心理との学際領域で、ふだんは音に関する主観評価実験の準備・分析にMatlabやRを使用しています。今回は室内音響分野で使われる計算をRでやってみます(その分…

ANOVA4 on the Web、R(のaov)、SPSS、ANOVA君で分散分析

R

ANOVA4 on the Webは、広島女学院大学の桐木氏が作成した、ウェブ上で4要因(四元配置)までの分散分析を実行できる便利な環境です。同サイトで公開されているANOVA4 on the Web専用の入力フォーマット(ANVファイル)のサンプルファイルをANOVA4で実行した…

信号の包絡線を計算する

R

統計以外の様々なことにもRを使用し始めています。今日はインパルス応答のピーク検出をするために、信号の包絡線(エンベロープ、envelope)を計算するプログラムを書きました。以前Matlabで書いたものをそのまま移植しようとしたら、ヒルベルト変換の関数が…

実効値(RMS)を計算する

R

これまでMatlabでやってきたことをR言語で置き換えられないか、検討を続けています。R言語は統計処理に強いのですが汎用的にも用いることができるので、もちろん信号処理的なことができないわけはありません。今回は音ファイルの実効値の計算をしてみました…

複数ファイルを一度に処理

R

knitrを使ってドキュメント生成をしている。ひとつのトピックにつきひとつの.Rmdファイルを作るので、ディレクトリ内に多くの.Rmdファイルができてしまう。それらをひとつづつHTMLに変換していくのは面倒なので、一括処理を行うための簡単なスクリプトを書い…

各党の経済再生手法を主成分分析

R

今日は選挙ですね。各政党の経済再生手法への賛成・反対の表が、日経新聞朝刊に載っていました。それをささっとRで主成分分析してみました。2次元までで90%の累積寄与率になっています。 D <- read.csv("20121216_nikkei.csv", header=TRUE, row.names=1) bi…

wavread

R

Rで、Matlab互換のwavreadが欲しかったのだけど、いろいろ探しても3ch以上のファイルに対応したものがなかったので、しょうがなく自分で作ってみた。これで5.1chのファイルもいじれる。 source("wavread.R") x <- wavread("filename.wav") とするとfilename.…

シェッフェの一対比較法(中屋の変法)

先日の浦の変法に続き、シェッフェの一対比較法(中屋の変法)を実装してみました。佐藤信『統計的官能検査法』(日科技連出版社)に書かれている方法をそのままコードにして、今度はp値の計算結果も表示するようにしただけです。詳しいことは同書を参照して…

シェッフェの一対比較法(浦の変法)

自分の仕事でよく使うシェッフェの一対比較法(浦の変法)を、Rの勉強がてら実装してみました。佐藤信『統計的官能検査法』(日科技連出版社)に書かれている方法をそのままコードにしただけなので、詳しいことは同書を参照して下さい。使用例は以下の通り。…

プロットのPNGファイルへの保存

R

dev.copy2pdf(file="hoge.pdf") を使ってPDFファイルに保存して、他のプログラムを使ってPNGに変換していたけれど、Quick-Rによると png("hoge.png") t <- seq(from=0, to=2*pi, length=50) plot(t, sin(t), type="b") dev.off() で、直接PNGファイルに保存…

二項分布のグラフの続き

R

昨日の二項分布の続き。昨日は「p0という確率のもとで、n回の試行のうちk回以上が成功する」というところから、k回以上の部分に色を塗る図を作った。今日は、それに加えて「pという確率のもとで、n回の試行のうちk回未満が失敗する」ところに色を塗ったもの…

二項分布の図を描いてみる

R

コイントスのような二項分布において「10回中8回以上表が出る場合」のような図を使いたいときはよくあるので、今回はRを使って作図してみた。p、n、kを変化させると、異なる分布の図が書ける。今回はn回の試行のうちk回以上成功するところに色を付けたかった…

残響時間を求めるRのプログラム

R

今日はR言語がどのていど信号処理っぽい目的に使えるか試してみました。とは言ってもガリガリと信号処理をするわけではなく、簡単にフィルタがかけられて、結果がグラフにできればいいので、室内のインパルス応答から残響時間を求めるプログラムを作成してみ…

Rで円を描く

R

2chで話題が上がっていたので、それを参考にRで中心(x=2, y=5)で半径r=3の円を描いてみました。 x <- 2 y <- 5 r <- 3 th <- seq(0, 2*pi, length.out=100) plot(x+r*cos(th), y+r*sin(th), type="l", asp=1) asp=1でアスペクト比を1:1にしていますが、これ…

Rで日本語文字をプロットする

R

普段は英数字しかプロットに使わないので日本語が書けなくて困ったりはしなかったものの、相談されたので調べてみると、いくつかのブログに対処法が掲載されていました。まずは MacOSXのRでコンソール上では日本語使えるのにplotすると文字化けする場合の対…

配列を宣言してから中身を入れると速い

「R in a Nutshell」を読み進んでいます。第8章に、配列というのはあらかじめメモリを確保してから中身を入れた方が速いということが説明されています。たとえば create.vector.of.ones <- function(n) { return.vector <- NA; for (i in 1:n) { return.vect…

R in a Nutshell

iPhone用のO'Reilly書籍アプリが600円。そしてKindleやiBooks用にフォーマット変換できてしまうので、調子に乗ってまた一冊購入。今度は「R in a Nutshell」。これまで何冊かRの本を読んでみましたが、いまいちピンと来ない部分があり、Rを常用するまでには…

R言語のどこにSchemeが入っているのか

日本語版WikipediaでR言語のことを調べると、「影響を受けた言語」という部分にS言語とSchemeが書かれています*1。S言語から大きく影響を受けたことはもちろんのことですが、なぜSchemeなのかと常々思っていました。プログラムを見てもSchemeのようなLISP族…

R言語勉強メモ(ベクトルと行列)

R

『Rによるやさしい統計学』でなおも勉強中。第1部「基礎編」を読み終わり、第2部「応用編」に入ったところ。第2部冒頭の行列とデータフレームのあたりが分かれば、放ってあったU.リゲス著『Rの基礎とプログラミング技法』を読むのが楽になるかも。Javaで言う…

Rによるやさしい統計学

R言語をオンライン文書をつかって勉強していたのですが、今は『Rによるやさしい統計学』で勉強しています。著者は心理統計学を専門とする人で、『よくわかる心理統計』という本も出しています。高校数学の知識しか持たない学部生が、心理学の卒業研究のため…