bagaimana melakukan prosedur kombinasi pada suatu vektor sehingga saya memiliki vektor asli sebagai baris pertama

Saya memiliki vektor ini

 b=c(5,8,9)

Saya ingin melakukan kombinasi pada b dengan memilih 2 item sekaligus sehingga saya memiliki elemen asli b sebagai baris pertama yang saya dapatkan

        [,1] [,2] [,3]
[1,]    5     8    9
[2,]    8     9    5

Saya mencoba combn(b, 2) dan ini memberi saya ini

        [,1] [,2] [,3]
[1,]    5     5    8
[2,]    8     9    9

Bisakah saya mendapatkan bantuan untuk mencapai hasil yang saya inginkan?


person user3327637    schedule 11.10.2018    source sumber
comment
Ini adalah permutasi karena keteraturan itu penting. Apa yang Anda amati dengan combn(b, 2) adalah semua kombinasi b pilih 2. Kebetulan ada 3 kombinasi seperti itu: (5, 8), (5, 9), (8, 9). Outputnya adalah matriks kolom bijaksana.   -  person Joseph Wood    schedule 11.10.2018
comment
Juga, apakah ini R? Jika ya, Anda harus menambahkan tag r.   -  person Joseph Wood    schedule 12.10.2018
comment
Tidak jelas apa yang Anda tanyakan. Jika Anda ingin baris pertama menjadi nilai asli, maka Anda sebenarnya tidak ingin memilih item 2 - Anda ingin menggunakan nilai pertama, lalu pilih (contoh) 1 dari dua nilai lainnya? jadi matriks Anda harus memiliki baris pertama sebagai 5, 8, 9, dan baris kedua sebagai (8 atau 9), (5 atau 9), (5 atau 8)?   -  person Tyler    schedule 12.10.2018
comment
Ya, Anda benar Tyler, saya memerlukan keluaran saya sebagai (5 8 9) dipetakan ke ( 8 9 5 ) atau (5 8 9 ) dipetakan ke ( 9 5 8).   -  person user3327637    schedule 13.10.2018


Jawaban (1)


Karena baris kedua dari hasil yang Anda inginkan tidak ditentukan secara unik, maka tidak diperlukan alat canggih apa pun:

b <- 1:10
rbind(b, c(b[-1], b[1]))
#   [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
# b    1    2    3    4    5    6    7    8    9    10
#      2    3    4    5    6    7    8    9   10     1

Dalam hal ini saya hanya "menggeser" b sebanyak satu posisi pada baris kedua, yang memang menghasilkan permutasi. Saya berasumsi bahwa elemen b tidak terulang.

person Julius Vainora    schedule 06.11.2018
comment
@ user3327637, apakah ini menjawab pertanyaan Anda? - person Julius Vainora; 17.11.2018