1
私のRプロジェクトにはいくつかの助けが必要です。平均相対劈開強度(RCI)に基づいて行列を作成したい。この私の生データ(MYDATA = 632 obsの3つの変数の。)である:私はこのコードを実行して、すべての可能なアミノ酸の組み合わせの平均RCIを計算するために、これまで管理してきたこれらのデータに基づいてforループで行列を作る方法
R.Int amino1 amino2
1 14 W I
2 0 K E
3 79 Q I
4 80 Q I
5 100 K V
6 100 K V
7 100 K P
8 24 K P
9 100 K I
10 100 K I
11 100 K I
12 100 K I
13 100 K I
14 100 K E
15 4 H E
16 0 H E
17 0 F Y
18 0 F Y
19 2 E Q
20 2 E Q
:
for (i in x) {
for (j in x) {
sub <- subset(mydata, mydata$amino1==LETTERS[i] & mydata$amino2==LETTERS[j])
g <- group_by(sub, amino1) %>% summarize(m = mean(R.Int))
h <- group_by(sub, amino2) %>% summarize(m = mean(R.Int))
c <- cbind(g,h)
d <- subset(c, select = -4)
neworder <- d[, c(1,3,2)]
n <- setnames(neworder, "m", "R.Int")
if (nrow(sub) > 0)
print(n)
}
}
上記のコードは、この出力を与える:
amino1 amino2 R.Int
1 A L 25
amino1 amino2 R.Int
1 A E 41
amino1 amino2 R.Int
1 A R 1.25
amino1 amino2 R.Int
1 A K 80
amino1 amino2 R.Int
1 A S 4.1
amino1 amino2 R.Int
1 G G 12
amino1 amino2 R.Int
1 G L 7
amino1 amino2 R.Int
1 G W 2
amino1 amino2 R.Int
1 G Y 0
amino1 amino2 R.Int
1 G D 0.4
私の質問は:どのように私はその上にマトリックスを構築するのですか?私は行列がそれぞれの可能なアミノ酸の組み合わせで平均RCI値を次のようになりたい:
A G I L P V F W Y D Q E R H K S T C M N
N NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
M NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
c NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
T NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
S NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
K NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
H NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
R NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
E NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
Q NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
D NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
Y NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
W NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
F NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
V NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
P NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
L NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
I NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
G NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
A NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
私は本当にあなたが私を助けることを願って、事前ここ
こんにちは、すぐにお返事ありがとうございます。しかし、私はまだ正しい方法で問題を解決しています。私はアミノの変数を "文字"に変換しましたが、最後の行に行くと値が入ります:myMat [cbind(dfAgg $ amino1、dfAgg $ amino2)]のエラー - dfAgg $ R .int:置換には長さゼロがあります – Pede
2列と多くの行がありますが、文字はありません – Pede
残念ながら、そうではありません。 – Pede