簡體   English   中英

R如何從列表中提取數據集?

[英]R how to extract datasets from a list?

由於使用 map() 函數,我將以下數據幀存儲在列表中:

在此處輸入圖片說明

如何從列表中提取六個數據框? 我想這樣做是因為我想給每列一個不同的數據框名稱,然后將所有數據存儲在一個 csv 文件中? 或者我不必從列表中提取 dfs 嗎?

你有幾個選擇

假數據

library(tidyverse)

df <- tibble(a = 1:9,b = letters[1:9])


x <- list(df,df,df,df)

您可以綁定 dfs 並只創建一個

bind_rows(x)

您可以在所有 dfs 上執行您的邏輯

logic <- . %>% 
  mutate(c = a*3)

x %>% map(logic)

您還可以命名列表中的 dfs

names(x) <- letters[1:4]

bind_rows(x,.id = "id")

我不確定你到底在尋找什么,所以下面只是猜測你的目標:

  • 如果要將數據框提取為全局環境中的對象,則可以這樣做:
list2env(setNames(dats1,paste0("df",seq(dats1))),envir = .GlobalEnv)
  • 假設您將名稱"col1""col2"命名為列表中不同數據框的兩列,也許這可以幫助您
dats1 <- lapply(dats1, setNames, c("col1","col2"))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM