r - R 唯一表达式
问题描述
我正在使用gramEvol 包生成表达式,然后用于进一步的数据处理。
有时,结果包含重复的表达式。
我怎样才能只保留独特的表达方式?(使用独特的功能不起作用,因为它没有为表达式定义)
这是一个演示该问题的可重现示例:
data("iris")
expr <- sapply(colnames(iris), as.expression)
expr
#expression(Sepal.Length = "Sepal.Length", Sepal.Width = "Sepal.Width",
# Petal.Length = "Petal.Length", Petal.Width = "Petal.Width",
# Species = "Species")
unique(expr)
#Error in unique.default(expr) :
# unimplemented type 'expression' in 'HashTableSetup'
expr <- c(expr, expr) # concat works
expr
#expression(Sepal.Length = "Sepal.Length", Sepal.Width = "Sepal.Width",
# Petal.Length = "Petal.Length", Petal.Width = "Petal.Width",
# Species = "Species", Sepal.Length = "Sepal.Length", Sepal.Width = #"Sepal.Width", Petal.Length = "Petal.Length", Petal.Width = "Petal.Width",
# Species = "Species")
unique(expr)
#Error in unique.default(expr) :
# unimplemented type 'expression' in 'HashTableSetup'
解决方案
这会将表达式转换为列表并使用duplicated
:
expr[!duplicated(as.list(expr))]
#expression(Sepal.Length = "Sepal.Length", Sepal.Width = "Sepal.Width",
# Petal.Length = "Petal.Length", Petal.Width = "Petal.Width",
# Species = "Species")
推荐阅读
- c# - 如何使用 .NET Core 在 Db2 数据库中设置属性 CharBitDataAsString?
- jquery - css:当由jquery创建的元素后不起作用
- python - Numpy exp 函数
- mysql - 如何按相应名称遍历表列表?
- odoo - 如何在 docker 中安装 odoo 12 企业版?
- swift - 使用 alamofire multipart 上传图像数组
- angular - 如何从多选中获取整个(选定的)对象 - Angular
- android - 向下滚动并更新 ListView
- java - Concatenate the words to obtain a single word with the longest possible substring composed of a single letter
- python - Pandas 源代码 _get_grouper 调用自己