天天看點

R 清單

清單是 R 語言的對象集合,可以用來儲存不同類型的資料,可以是數字、字元串、向量、另一個清單等,當然還可以包含矩陣和函數。

R 語言建立清單使用 list() 函數。

如下執行個體,我們建立一個清單,包含了字元串、向量和數字:

list_data <- list("runoob", "google", c(11,22,33), 123, 51.23, 119.1)

print(list_data)

執行以上代碼輸出結果為:

我們可以使用 names() 函數給清單的元素命名:

# 清單包含向量、矩陣、清單

list_data <- list(c("Google","Runoob","Taobao"), matrix(c(1,2,3,4,5,6), nrow = 2),

   list("runoob",12.3))

# 給清單元素設定名字

names(list_data) <- c("Sites", "Numbers", "Lists")

# 顯示清單

清單中的元素可以使用索引來通路,如果使用來 names() 函數命名後,我們還可以使用對應名字來通路:

print(list_data[1])

# 通路清單的第三個元素

print(list_data[3])

# 通路第一個向量元素

print(list_data$Numbers)

我們可以對清單進行添加、删除、更新的操作,如下執行個體:

# 添加元素

list_data[4] <- "新元素"

print(list_data[4])

# 删除元素

list_data[4] <- NULL

# 删除後輸出為 NULL

# 更新元素

list_data[3] <- "我替換來第三個元素"

我們可以使用 c() 函數将多個清單合并為一個清單:

# 建立兩個清單

list1 <- list(1,2,3)

list2 <- list("Google","Runoob","Taobao")

# 合并清單

merged.list <- c(list1,list2)

# 顯示合并後的清單

print(merged.list)

要将清單轉換為向量可以使用 unlist() 函數,将清單轉換為向量,可以友善我們進行算術運算:

# 建立清單

list1 <- list(1:5)

print(list1)

list2 <-list(10:14)

print(list2)

# 轉換為向量

v1 <- unlist(list1)

v2 <- unlist(list2)

print(v1)

print(v2)

# 兩個向量相加

result <- v1+v2

print(result)

上一篇: R 字元串
下一篇: R 數組