我不熟悉在R中使用列表函數。這是我第一次使用矩陣列表。我試圖從矩陣列表中的每個矩陣中刪除相同的列,但我不確定這是如何與R中的索引配合使用的。如何從R中的矩陣列表中刪除每個矩陣中的列?
現在我在列表中有8個矩陣。每個矩陣是[120,56]。我想從每個矩陣中刪除
行
列17-40和49-56。因此,我最終會列出8個[120,24]的矩陣。
這裏是矩陣列表的一個例子,我有:
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))
我知道這似乎是一個簡單的問題,但我是一個新手和我只是不知道如何使用的組合爲循環和內部索引刪除列。我寧願學習如何有效地做到這一點,而不是爲每個矩陣單獨做,然後創建列表。
任何幫助,將不勝感激。謝謝!
感謝您的貢獻。儘管迪文有一個可行的解決方案,但我的回答對我來說更容易。 – djhocking 2012-04-22 20:21:57
如果OP不明白我們的解決方案是完全相同的,那麼它只會延遲他對R的工作原理的理解。 (我懷疑我的速度更快,雖然在這個大小的問題上沒有任何意義。) – 2012-04-22 23:07:11
這並不是說我不明白它們是相同的,只是我仍然非常重視abc編程,即使效率更高,跳到交流節目更具挑戰性。我想這只是歸結爲我更傾向於認爲編程更像安德里的解決方案。這就是說,我非常高興能通過「[」來學習TRUE「技巧」。這就是爲什麼我提高了兩個。再次感謝! – djhocking 2012-04-22 23:40:19