我需要通过我创建的一系列列名称对数据帧(df)进行子集化 - 不确定如何将其注入到子域中。?
例如
colstoKeep is a character string:
"col1", "col2", "col3", "col4"
如何将其推入子集函数
df<- df[colstoKeep]
我确信这很容易。?因为上述方法不起作用。
答案 0 :(得分:0)
df <- data.frame(A=seq(1:5),B=seq(5:1),C=seq(1:5))
df
A B C
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 4
5 5 5 5
cols_to_keep <- c("A","C")
df[,cols_to_keep]
A C
1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
答案 1 :(得分:0)
curl -XPOST 'localhost:9200/schoolrecords/_close'
curl -XPUT 'localhost:9200/schoolrecords/_settings' -d '{
"analysis" : {
"analyzer" : {
"synonym" : {
"tokenizer" : "whitespace",
"filter" : ["synonym"]
}
},
"filter" : {
"synonym" : {
"type" : "synonym",
"synonyms_path" : "synonym.txt",
"ignore_case" : true
}
}
}
}'
curl -XPOST 'localhost:9200/schoolrecords/_open'
如果我正确理解您的问题,您的df <- data.frame(A=seq(1:5),B=seq(5:1),C=seq(1:5))
df
colsToKeep <- "\"A\", \"C\""
变量就是上面给出的字符串。为了提取变量,您必须将其转换为向量。如果我使用了正确的格式,您可以使用以下代码执行此操作。
colsToKeep
但是,如果我也理解你有一个折叠成字符串的向量(library(magrittr)
colsToKeepVector <-
strsplit(colsToKeep, ",") %>%
unlist() %>%
trimws() %>%
gsub("\"", "", .)
df[colsToKeepVector]
?),我强烈建议你不这样做。
(编辑为匹配问题中的字符串格式)