2017-08-09 3 views
1

長さN x 1のベクトル(それをyと呼ぶ)を長さN x Nの行列に連結しようとしています。xの各値を連結する必要がありますxの値の位置によって決まる対応する行に移動します。私はループに依存しないベクトル化された答えを探しています。例示する:ベクトルをデータフレームに連結する

x <- as.data.frame(matrix(1:100,nrow=10,ncol=10)) 
y <- c(1:10) 

for(k in c(1:(ncol(x)))){ 
x[k,] <- paste0(y[k],x[k,]) 
} 

V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 
11 111 121 131 141 151 161 171 181 191 
22 212 222 232 242 252 262 272 282 292 
33 313 323 333 343 353 363 373 383 393 
44 414 424 434 444 454 464 474 484 494 
55 515 525 535 545 555 565 575 585 595 
66 616 626 636 646 656 666 676 686 696 
77 717 727 737 747 757 767 777 787 797 
88 818 828 838 848 858 868 878 888 898 
99 919 929 939 949 959 969 979 989 999 
1010 1020 1030 1040 1050 1060 1070 1080 1090 10100 

答えて

1

を我々はmatrixとベクトル 'Y' をpaste( 'X')とバック

x[] <- paste0(y, as.matrix(x)) 
x 
#  V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 
#1 11 111 121 131 141 151 161 171 181 191 
#2 22 212 222 232 242 252 262 272 282 292 
#3 33 313 323 333 343 353 363 373 383 393 
#4 44 414 424 434 444 454 464 474 484 494 
#5 55 515 525 535 545 555 565 575 585 595 
#6 66 616 626 636 646 656 666 676 686 696 
#7 77 717 727 737 747 757 767 777 787 797 
#8 88 818 828 838 848 858 868 878 888 898 
#9 99 919 929 939 949 959 969 979 989 999 
#10 1010 1020 1030 1040 1050 1060 1070 1080 1090 10100 
'X' に値を割り当てることができ
関連する問題