【问题标题】:extract unique combinations of subset of parameters from tidy data从整洁的数据中提取参数子集的唯一组合
【发布时间】:2017-08-07 21:30:27
【问题描述】:

考虑以下虚拟数据集

library(plyr)

dummy_model <- function(...){
  data.frame(x = rnorm(100), y = rnorm(100))
}

params <- expand.grid(a=1:10, b=letters[1:4])

d <- mdply(params, dummy_model)
str(d)
# 'data.frame': 4000 obs. of  4 variables:
#   $ a: int  1 1 1 1 1 1 1 1 1 1 ...
# $ b: chr  "a" "a" "a" "a" ...
# $ x: num  0.812 1.183 2.839 -0.928 -1.427 ...
# $ y: num  -0.796 0.137 0.976 1.118 0.4 ...

给定数据d,如何取回原始参数?

我目前的策略是拆分数据并选择第一行,但这感觉不是很优雅。

library(dplyr)
d %>% group_by(a,b) %>% slice(1) %>% select(-x,-y)
# # A tibble: 40 x 2
# # Groups:   a, b [40]
# a     b
# <int> <chr>
#   1     1     a
# 2     1     b
# 3     1     c
# 4     1     d
# 5     2     a
# 6     2     b
# 7     2     c
# 8     2     d
# 9     3     a
# 10     3     b

有什么建议吗?

【问题讨论】:

  • 图书馆怎么样(dplyr);不同的(d[,c(1,2)])?

标签: r tidyverse


【解决方案1】:

也许您正在寻找dplyr::distinct()

    d %>% distinct(a, b)

【讨论】:

  • 太好了,谢谢!我知道这必须有一个动词
猜你喜欢
  • 2017-10-08
  • 2010-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-18
  • 1970-01-01
  • 1970-01-01
  • 2018-11-20
相关资源
最近更新 更多