如何获取多个Sample()矢量输出并将它们组合成一个数据帧

问题描述 投票:0回答:1

很抱歉,这是一个基本问题。但是我想使用sample()函数从每一天(来自单独的文件)中随机抽取数据样本,然后将每天数据中的每个采样行合并,并将其全部合并为一周数据帧仅来自当天数据集中的采样数据。

r
1个回答
0
投票

假设数据保存在当天的文件名中,例如mydata_2020_05_17.csv

library(tidyverse)
readDay <- function(date, dir, sampleN){
  path <- paste0(dir, "/", "mydata_", date, ".csv")
  read_csv(path) %>% 
    as_tibble() %>% 
      # You many not need this if the records already have the date
    mutate(DATE = date) %>% 
    sample_n(sampleN, replace = FALSE)
}

让我们从当月的第一个星期日开始

answerWeek = map_df(seq.Date(from = as_date("2020-05-03"), length.out = 6, by = 1),
                    ~ readDay(.x, "~/nefarious/data", sampleN = 20))

无法运行,因为我没有一个充满过时的csv数据的文件夹。让我们知道我是否误解了您要寻找的内容。

© www.soinside.com 2019 - 2024. All rights reserved.