2016-04-07 29 views
-1

"a"は行列です。行列の値を変更して新しい行列を作成する

a<-matrix(1:20,5) 

は、私は「」1に新しいマトリックスを形成するために、「B」の最初の列を変更したい、と私はまた、それがあった「」として維持する必要があります。

今私はコードのみに従うことによって、この目標を達成することができます

b<-a 
b[,1]=1 

どのように私は、唯一の文のコードでこの問題を解決することができますか?

+0

私はあなたが気にする理由を尋ねることがありますか?美学、好奇心、...? (@ジュリアスのソリューションはいいですが、B 'よりも実際に多くの文字< - ; B [1] < - 1' ...) –

+0

@BenBolkerたぶん、あなたはこの質問を考えるならば、時間とよりシンプル – lightsnail

+0

@BenBolkerを節約するためにあまりにもネイティブで愚かな、あなたは少し複雑なもので私を助けることができる:http://stackoverflow.com/questions/36459958/match-list-to-rows-of-matrix-in-rありがとう! – lightsnail

答えて

2
replace(a, col(a) == 1, 1) 
#  [,1] [,2] [,3] [,4] 
# [1,] 1 6 11 16 
# [2,] 1 7 12 17 
# [3,] 1 8 13 18 
# [4,] 1 9 14 19 
# [5,] 1 10 15 20 

この場合もcbind(1, a[, -1])です。

+0

ありがとう!どちらも素敵です。 @ジュリアス – lightsnail

関連する問題