抱歉,这似乎是一个简单的问题,但我找不到答案。
我正在使用关键字组来搜索字符串中的重要短语。我的表格(srchtbl)按类别(它们指的是一般事物)和组成部分(动作与描述)对单词进行分类
我的方法要求我向下钻取向量以提取要搜索的词组。我可以为每个类别名称和每个组件创建向量。
但是,我还想为每个类别创建由类别命名的数据框。
我的数据:
word pattern category component
<chr> <chr> <chr> <chr>
1 pack pack pkg action
2 protect protect pkg action
3 well well pkg description
4 clever clever pkg description
5 care care pkg description
6 safe safe pkg description
这些语句使用适当的名称创建适当的数据框:
catgroups <- unique(srchtbl$category)
assign(paste("df_", catgroups[i], sep = ""), srchtbl %>% filter(category == catgroups[i]) %>% group_by(component))
这很好,但是如何在不使用整个语句的情况下引用它?如果我使用:
print(paste("df_", catgroups[3], sep = ""))
[1] "df_pkg"
因此,就像不使用整个assign语句就无法再次引用它。
还有另一种方法来连接数据框名称并进行简单分配,例如:
"string" + catgroups[i] <- srchtbl %>% filter(category == catgroups[3]) %>% group_by(component))
最终代码将被循环,以便关键字表可以扩展到任意数量的类别和组件,因此我不想键入单个数据框名称
答案 0 :(得分:0)
考虑基数R的by
或split
,它从一个或多个分组中创建数据帧的命名列表,您可以在其中使用$
或{{ 1}}限定词。无需用许多类似结构的对象充斥全球环境。而是维护一个[[
对象。如果存储在list
中,则不会丢失数据框的功能。
list