readnorm
整数で識別されるファイルから関連データのリストを返す関数があります。
readnorm <- function(n) {
a <- read.csv(paste("/tmp/diff-a-", n, ".txt", sep=""),
col.names=c("raw"), header=FALSE)
a <- list(n=n, raw=a$raw, median=median(a$raw), iqr=IQR(a$raw))
a$shifted <- a$raw - a$median
a$scaled <- a$raw / a$iqr
a$normed <- a$shifted / a$iqr
a$necdf <- ecdf(a$normed)
return(a)
}
以下を使用して、一連のファイルからデータを含むリストを作成できますlapply
。
> ns = c(5,6,7,8,9,10,15,20,25,30)
> data <- lapply(ns, readnorm)
> ls(data[[1]])
[1] "iqr" "median" "n" "necdf" "normed" "raw" "scaled"
[8] "shifted"
ここで、私がやりたいことはnormed
、scaled
、 などと呼ばれる一連のデータ フレームを構築することです。これは、データ内のコンポーネントからのエントリをグループ化します ( n
R で整数名が許可されている場合、名前は の値になる可能性があるため、normed$5
含まれています)。data[[5]]$normed
など)。
それは理にかなっていますか?raw
このようにして、たとえばデータ フレームを使用してすべての生データをプロットできます。それは、私が持っているデータ構造を「裏返し」に変えるようなものです。
私はRが初めてなので、非常に間違ったことをしている可能性があります。大まかに言えば、さまざまなファイルのデータは、シフトおよびスケーリングされた同様の分布からのものであると考えており、その仮説を調査したいと考えています。上記のコードは、体系的に整理できるようにするための私の試みです。
qqplot
したがって、私の主な質問はデータフレームを生成する方法ですが、この問題に取り組む方法に関するより一般的なガイダンスにも興味があります (データの管理方法 -分析自体に役立つようなツールについて知っています)。