r - 有没有办法可以从较大的数据框中删除这个新的数据框?
问题描述
请我需要一些帮助来解决这个问题。我有一个包含超过 57,000 行和 129 列的数据框(myData),我的响应变量是 3 个级别的因子。我的意图是将我的响应变量中的一个即时类的大小减少 80%,但是当我使用此代码时,它反而创建了一个子集,从 myData 数据框中“减少”,这与我删除行的意图相反。我怎样才能从主数据框中减去这个子集,或者有其他方法可以做到吗?
reduced <- myData %>% filter(marker == "Natural") %>% dplyr::slice_sample(prop = 0.8)
解决方案
我没有安装 dplyr 1.0.0 所以我没有slice_sample
,但我假设你可以做类似的事情slice_sample
df <- data.frame(marker = rep(c('Natural', 'Other'), c(10, 10)),
x = runif(20))
df %>%
group_by(marker) %>%
sample_frac(if(first(marker) == 'Natural') .8 else 1)
# # A tibble: 18 x 2
# # Groups: marker [2]
# marker x
# <fct> <dbl>
# 1 Natural 0.359
# 2 Natural 0.529
# 3 Natural 0.466
# 4 Natural 0.424
# 5 Natural 0.623
# 6 Natural 0.431
# 7 Natural 0.126
# 8 Natural 0.828
# 9 Other 0.545
# 10 Other 0.522
# 11 Other 0.826
# 12 Other 0.788
# 13 Other 0.580
# 14 Other 0.244
# 15 Other 0.633
# 16 Other 0.432
# 17 Other 0.920
# 18 Other 0.124
推荐阅读
- r - 如何更新时间序列图表中的图例标签?
- python - 我可以在 PyGame 中更改图像的大小吗
- python - Python CGI - 关闭客户端连接
- javascript - 处理进度更新通知的更优雅的方式
- security - 如何证明应用程序源代码在运行时对应于指定的快照?
- python - 缺少数据范围 Pandas 数据框比较 Python
- typescript - Object Property 方法并具有 TypeScript 中函数的良好推断
- amazon-web-services - 无法让路由 53 域指向 Heroku 应用程序
- java - 如何在 Spring Boot 中使用 Enum 类返回验证消息?
- sql - 创建函数的问题