當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R c 將值組合到向量或列表中


R語言 c 位於 base 包(package)。

說明

這是一個結合了其參數的通用函數。

默認方法將其參數組合起來形成一個向量。所有參數都被強製轉換為通用類型,即返回值的類型,並且除名稱之外的所有屬性都將被刪除。

用法

## S3 Generic function
c(...)

## Default S3 method:
c(..., recursive = FALSE, use.names = TRUE)

參數

...

要連接的對象。所有 NULL 條目都會在方法分派之前刪除,除非位於參數列表的最開頭。

recursive

合乎邏輯的。如果是 recursive = TRUE ,則函數通過列表(和配對列表)遞歸下降,將所有元素組合成一個向量。

use.names

邏輯指示是否應保留names

細節

輸出類型由層次結構中組件的最高類型確定 NULL < raw < 邏輯 < 整數 < 雙精度 < 複雜 < 字符 < 列表 < 表達式。對列表被視為列表,而非向量組件(例如 name s /symbol s 和 call s)被視為單元素 list s,即使 recursive = TRUE 也無法取消列出。

有一種c.factor方法將因子組合成一個因子。

c 有時用於刪除除名稱之外的屬性的副作用,例如將 array 轉換為向量。 as.vector 是一種更直觀的方法,但也會刪除名稱。請注意,默認值以外的方法不需要執行此操作(並且它們幾乎肯定會保留類屬性)。

這是primitive 函數。

NULL 或適當模式的表達式或向量。 (如果沒有參數,則值為 NULL 。)

S4方法

該函數是 S4 通用函數,但帶有參數列表 (x, ...)

例子

c(1,7:9)
c(1:5, 10.5, "next")

## uses with a single argument to drop attributes
x <- 1:4
names(x) <- letters[1:4]
x
c(x)          # has names
as.vector(x)  # no names
dim(x) <- c(2,2)
x
c(x)
as.vector(x)

## append to a list:
ll <- list(A = 1, c = "C")
## do *not* use
c(ll, d = 1:3) # which is == c(ll, as.list(c(d = 1:3)))
## but rather
c(ll, d = list(1:3))  # c() combining two lists

c(list(A = c(B = 1)), recursive = TRUE)

c(options(), recursive = TRUE)
c(list(A = c(B = 1, C = 2), B = c(E = 7)), recursive = TRUE)

參考

Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.

也可以看看

unlistas.vector 生成 attribute-free 向量。

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Combine Values into a Vector or List。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。