私はRのリスト関数の使用に慣れていません。これは私の最初の行列リストです。私は行列のリスト内の各行列から同じ列を削除しようとしていますが、Rでの索引付けでどのように動作するかわかりません。Rの行列リストの各行列から列を削除するには?
今はリストに8つの行列があります。各行列は[120,56]です。各マトリックスから
行
列17-40と49-56を削除したいと思います。したがって、私は[120、24]の8つの行列のリストで終わるだろう。ここで
は、私が持っている行列リストの例である:
MatrixList <- list(maxT = matrix(1:56, 120, 56, byrow = TRUE),
minT = matrix(1:56, 120, 56, byrow = TRUE),
meanT = matrix(1:56, 120, 56, byrow = TRUE),
rain24 = matrix(1:56, 120, 56, byrow = TRUE),
rain5d = matrix(1:56, 120, 56, byrow = TRUE),
maxT2 = matrix(1:56, 120, 56, byrow = TRUE),
minT2 = matrix(1:56, 120, 56, byrow = TRUE),
meanT2 = matrix(1:56, 120, 56, byrow = TRUE))
私はこれは単純な問題のように思える知っているが、私は初心者だとちょうどループの組み合わせを使用するかどうかはわからないと列を削除するための内部索引付け。私はむしろ、効率的にこれを行う方法を学びたいと思うのではなく、個々の行列ごとに個別に行い、リストを作成するのではなく、
ご協力いただければ幸いです。ありがとう!
この寄付に感謝します。 DWinには効果的な解決策がありましたが、あなたの答えは私の頭を包み込む方が簡単です。 – djhocking
OPが私たちのソリューションが完全に同等であると理解していない場合、Rがどのように動作するかの理解を遅らせるだけです。 (そして、私はこれよりも速いと思っていますが、このサイズの問題は何も意味しません) –
私はそれらが同等であることを理解していないわけではなく、私はまだabcのプログラミングのポイントにありますより効率的であっても、acプログラミングに飛びつくことは、より難しい課題です。私はそれがちょうど私がAndrieのソリューションのようなプログラミングを考える傾向があるという事実になると思う。そう言えば、私は "["でTRUE "トリック"を学ぶのはとてもうれしいです。だからこそ私は両方を支持した。再度、感謝します! – djhocking