リスト構文に関する別の質問 (私はゆっくりと学んでいると思います)。次の簡略化された形式のデータがあります。
a=c(1,2,3,4,5,NA,NA)
b=c(6,7,8,9,10,NA,NA)
c=c(6,5,3,NA,NA,NA,NA)
d=c(NA,NA,NA,NA,NA,NA,NA)
A=data.frame(a,b,c,d)
B=data.frame(c,b,a,d)
C=data.frame(d,c,b,a)
mylist=list(A,B,C)
bins=c(0,2,4,6,8,10)
定義されたビンに従ってデータフレームのリストの各列をビン化し、各データフレームの各ビンの平均数を返したいと思います。出力がどのような形式であるか、データフレームまたはベクトルのリストであるかは特に気にしません。したがって、この例では:
hist(a,bins, plot= FALSE)
hist(b,bins, plot= FALSE)
hist(c,bins, plot= FALSE)
数を与える
$counts
[1] 2 2 1 0 0
$counts
[1] 0 0 1 2 2
$counts
[1] 0 1 2 0 0
それぞれ。
私はそれを行う方法を知りませんが、 d には NA のみが含まれているため、返してもらいたいです:
$counts
[1] 0 0 0 0 0
(各NAを0にすると思います)。
したがって、A (a、b、c、d を含む) の平均は次のようになります。
$counts
[1] 2 2 1 0 0 +
$counts
[1] 0 0 1 2 2 +
$counts
[1] 0 1 2 0 0 +
$counts
[1] 0 0 0 0 0 +
= 2 3 4 2 2 / 4
= 0.5 0.75 1 0.5 0.5
これは、データフレームAの望ましい出力になります。ベクトルの最終リストには、BとCに関連するベクトルも含まれますが、最初のリストの各データフレームの列のデータフレームも問題ありません。ビンの中点に対してこれらの平均カウントをプロットします。
私の説明が、私がやろうとしていることを理解するのに十分であることを願っています。