簡単な質問があると思うが、今まで私の間違いを見つけられなかった。 私は32人の参加者と1回の排除トーナメントを作りたいと思っています。私は:(リスト内の列にループを格納する方法R
>groups
A B C D
1 Player1 Player9 Player17 Player25
2 Player2 Player10 Player18 Player26
3 Player3 Player11 Player19 Player27
4 Player4 Player12 Player20 Player28
5 Player5 Player13 Player21 Player29
6 Player6 Player14 Player22 Player30
7 Player7 Player15 Player23 Player31
8 Player8 Player16 Player24 Player32
は今、私が保存したいしたいとそうするために、私は8人の選手となりましたforループで対戦を構築し、リストにそれらを保存したいとの4つのグループを作成したが、そのは動作していませんそのグループ内のペアとしてそれらは、後に小道具を受賞計算するための容易なアクセスを持っている は最初のグループA
>teams.group.A <- matrix(groups$A,nrow = 2,ncol = 4)
>teams.group.A
[,1] [,2] [,3] [,4]
[1,] "Player1" "Player3" "Player5" "Player7"
[2,] "Player2" "Player4" "Player6" "Player8"
ループのための私のアイデアだったため、次のようになります。
groupnames <- colnames(groups)
mylist <- list()
for(i in groupnames){
mylist[[i]] <- matrix(groups$i,nrow = 2,ncol = 4)
}
mylist
「データ」はベクタータイプでなければならないというエラーが表示されますか?
Thx、ここで私を助けることができれば!
出力として 'list'が必要ですか?あるいは 'data.frame'はOKですか? – CPak
エラーを説明する目的のためだけです。$ iを使用すると、Rはiを評価しません。つまり、存在しないデータフレームではiという変数を直接検索します。あなたがグループ[、i]を使うと、この場合、私は現在の値に置き換えられます。いずれにしても、@Valが投稿した解決策は、ループが他の言語と同じくらいRで好まれないように進む方法です。 – friep