R で三元主成分分析を実行したいと考えています。その仕組みと結果の解釈方法を説明している記事をいくつか見つけましたが、R での実行方法に関するオンラインの有用なガイドを見つけることができません。
私のデータは、230 個のサンプル、250,000 個の変数、および 50 個の注釈で構成されています。通常、次のタイプのデータに対して 1 つの注釈のみを使用して、標準の PCA を実行するだけです。
標準データ:
var1 var2 var3 var4
Sample1 1/1 0/0 1/1 1/0
Sample2 1/0 1/1 1/1 1/0
Sample3 0/0 1/1 1/1 1/1
Sample4 0/0 0/0 1/1 0/0
Sample5 1/0 1/0 0/0 1/1
ただし、50 個のマトリックスすべてを組み合わせて分析に使用するように、すべての注釈情報を分析に実装したいと考えています。このように、注釈の組み合わせは、単一の注釈が単独で行うよりも多くのサンプル間の分散を説明する場合があります。たとえば、注釈 1 と 4 を一緒にすると、注釈 1 単独よりも多くの分散が説明されます。
注釈 1:
var1 var2 var3 var4
Sample1 1/1 0/0 1/1 1/0
Sample2 1/0 1/1 1/1 1/0
Sample3 0/0 1/1 1/1 1/1
Sample4 0/0 0/0 1/1 0/0
Sample5 1/0 1/0 0/0 1/1
注釈 2:
var1 var2 var3 var4
Sample1 missense none STOP synonymous
Sample2 missense missense STOP synonymous
Sample3 none missense STOP synonymous
Sample4 none none STOP none
Sample5 missense missense none synonymous
注釈 3:
var1 var2 var3 var4
Sample1 0.30 0.00 0.01 0.04
Sample2 0.30 -0.24 0.01 0.04
Sample3 0.00 -0.24 0.01 0.04
Sample4 0.00 -0.24 0.01 0.00
Sample5 0.30 -0.24 0.00 0.04
注釈 4:
var1 var2 var3 var4
Sample1 CTCF NONE NONE MAX
Sample2 CTCF NONE NONE MAX
Sample3 NONE NONE NONE MAX
Sample4 NONE NONE NONE NONE
Sample5 CTCF NONE NONE MAX
私が見つけたものから、Tucker 3-way PCA を実行できる 3 つのパッケージがあります: ThreeWay、PTAk、および rTensor。ThreeWay を実行しようとしましたが、ThreeWay が使用するデータ構造は非常に扱いにくいようです。これでうまくいくかもしれませんが、ThreeWay の記事の例でもエラーが発生したため、別のパッケージを使用することをお勧めします。
ThreeWay データ構造:
var1_anno1 var1_anno2 var1_anno3 var2_anno1 var2_anno2
Sample1 1/1 missense 0.30 0/0 missense
Sample2 1/0 missense 0.30 1/1 missense
Sample3 0/0 none 0.30 1/1 missense
Sample4 0/0 none 0.30 0/0 none
Sample5 1/0 missense 0.30 1/0 missense
PTAk パッケージには次のものが必要です: 「次数 k のテンソル (配列として)。非同一性メトリクスが使用されている場合、X は配列としてデータを含むリストであり、メトリクスのリストを満たしています」
これが何を意味するのかは私には明らかではありません。テンソルを生成する方法のテンソルパッケージを調べようとしましたが、データからテンソルを作成する方法の基本を説明するのではなく、さまざまなテンソルで大量の乗算を行うため、それらの例は非常に複雑です。
このアプローチの弱点と、テンソルを作成する方法、およびパッケージを使用してそれらを分析する方法についての両方のコメントをいただければ幸いです。
ありがとう