ID EN
Vector & List

asplit

R Base 3.6.2 🇮🇩 Bahasa Indonesia

Pisahkan array atau matriks berdasarkan marginnya.

Syntax

R
asplit(x, MARGIN)

Arguments

Parameter Deskripsi
x an array, including a matrix.
MARGIN a vector giving the margins to split by. E.g., for a matrix 1 indicates rows, 2 indicates columns, c(1, 2) indicates rows and columns. Where x has named dimnames, it can be a character vector selecting dimension names.

Return Value

Sebuah “array daftar” dengan dimensi \(dv\) dan setiap elemen merupakan array berdimensi \(de\) dan nama dim yang dipertahankan sesuai ketersediaan, dengan \(dv\) dan \(de\) masing-masing adalah dimensi x yang disertakan dan tidak termasuk dalam MARGIN.

Details

Nilai pemisahan juga dapat diperoleh (kurang efisien) dengan split(x, slice.index(x, MARGIN)). apply selalu menyederhanakan hasil panjang umum, jadi mencoba membagi melalui apply(x, MARGIN, identitas) tidak berhasil (karena hanya menghasilkan x). Dengan merangkai asplit dengan lapply atau vapply, seseorang dapat memperoleh varian penerapan yang tidak disederhanakan secara otomatis.

Contoh

Example
R
# NOT RUN {
## A 3-dimensional array of dimension 2 x 3 x 4:
d <- 2 : 4
x <- array(seq_len(prod(d)), d)
x
## Splitting by margin 2 gives a 1-d list array of length 3
## consisting of 2 x 4 arrays:
asplit(x, 2)
## Spltting by margins 1 and 2 gives a 2 x 3 list array
## consisting of 1-d arrays of length 4:a
asplit(x, c(1, 2))
## Compare to
split(x, slice.index(x, c(1, 2)))

## A 2 x 3 matrix:
(x <- matrix(1 : 6, 2, 3))
## To split x by its rows, one can use
asplit(x, 1)
## or less efficiently
split(x, slice.index(x, 1))
split(x, row(x))
# }