基于CSV的R读入数据子集

基于CSV的R读入数据子集,r,csv,R,Csv,假设您有一个包含1000个变量的.DTA或.SAV文件。此文件称为“TOTAL-DATA”,您还有一个名为“SOME-DATA”的.CSV文件,其中包含一个名为KEEP的列;KEEP列中是“TOTAL-DATA”中25个变量的名称 R中是否有读取.DTA或.SAV文件的方法;如果文件是.sav,则可以使用read\u sav从haven读取变量,然后将其子集设置为KEEP列中的变量。它还有一个参数col\u select,可以获取列名向量。?read_sav中的文档显示 col_select-一

假设您有一个包含1000个变量的.DTA或.SAV文件。此文件称为“TOTAL-DATA”,您还有一个名为“SOME-DATA”的.CSV文件,其中包含一个名为KEEP的列;KEEP列中是“TOTAL-DATA”中25个变量的名称


R中是否有读取.DTA或.SAV文件的方法;如果文件是
.sav
,则可以使用
read\u sav
haven
读取变量,然后将其子集设置为KEEP列中的变量。它还有一个参数
col\u select
,可以获取列名向量。
?read_sav
中的文档显示

col_select-一个或多个选择表达式,如dplyr::select()中的表达式。使用c()或list()可以使用多个表达式。有关可用选择选项的详细信息,请参阅?dplyr::select。仅从数据文件中读取指定的列

策略是读取
.csv
文件,将“KEEP”列提取为
向量
,并输入到“read\u sav”的
列选择
`

library(readr)
library(haven)
library(dplyr)
cols_to_select <- read_csv("SOME-DATA.csv") %>%
                     pull(KEEP)

df1 <- read_sav("TOTAL-DATA.sav", col_select = cols_to_select)
库(readr)
图书馆(避风港)
图书馆(dplyr)
cols_至_选择%
拉(保持)

df1@Parfait谢谢我知道这些不是R文件。这不是任务的重点。问题是如何导入这些文件,然后使用.CSV中的列对变量进行子集设置though@parfait你读过这个问题吗?当我读到“TOTAL-DATA.sav”时,它几乎需要15分钟,因为它是一个如此大的文件。我想知道,有没有一种方法可以使用cols\u to\u select只读取select变量?或者这真的不可能吗?@bvowet说
col\u select
将只读取这些列。不是吗?