【发布时间】:2020-10-22 06:56:49
【问题描述】:
我在堆栈中找不到解决方案,所以这是我的问题:
- 我有一个包含 342 列的 df。
- 我想创建一个只包含特定列的新 df
- 要保留的列列表在另一个 df 中,列在标题为 X、Y、Z 的 3 列中,用于 3 个新数据帧
这是我现在的代码:
# Read the data:
data <- data.table::fread("data_30_9.csv")
# Import variable names #
variable.names.full = openxlsx::read.xlsx("variables2.xlsx")
Y.variable.names = na.omit(variable.names.full[1])
X.variable.names = na.omit(variable.names.full[2])
Z.variable.names = na.omit(variable.names.full[3])
# Make new DF with only specific columns:
X.Data = data %>% select(as.character(X.variable.names)) # This works as X has only 1 variable
Y.Data = data %>% select(as.character(Y.variable.names)) # This give an error: Error:
# # Can't subset columns that don't exist.
帮助?
数据可在此处获得:
【问题讨论】:
-
那么最后你想得到 3 个数据帧吗?
-
是的,有 3 个数据框
标签: r dataframe dplyr tidyverse