【问题标题】:Stratified data set in RR中的分层数据集
【发布时间】:2018-01-31 20:29:25
【问题描述】:

我需要有关创建新数据框的帮助。我有一个数据框,我需要从中提取相同的 100 个样本。但是这个数据必须有与原始数据集相同的男性和女性比例。如何保持比例不变?

PTData 看起来像这样

PTNumb 。性。年龄 。系统BP。抽烟。 ...

1 .米。 12. 76 .否

2 。 F 。 13. 89 .是的

PTData 有 5000 组数据。我需要拉 100,男性的部分为 0.46,女性的部分为 0.54,并存储为新数据框。

我不想使用我最初使用的分层功能。

【问题讨论】:

    标签: r


    【解决方案1】:

    使用tidyverse工具,应该是这样的。我假设给定的 0.46 男性与 0.54 女性的比例是现有的数据集比例,因为这就是你所说的你想要的。以后最好查一下以前的资源,提供一个示例数据集。

    library(tidyverse)
    sampled <- PTData %>%
        group_by(Sex) %>%
        sample_n(size = 100)
    

    编辑:使用基本功能,您可以更手动地执行此操作:

    m <- PTData[Sex == "M", ]
    f <- PTData[Sex == "F", ]
    sample_m <- m[sample(1:nrow(m), size = 46), ]
    sample_f <- f[sample(1:nrow(f), size = 54), ]
    sampled <- rbind(sample_m, sample_f)
    

    【讨论】:

    • 我很抱歉。感谢您的帮助,但我不允许下载其他软件包
    • 为什么不将数据分成男性和女性,然后随机抽取 46 个男性和 54 个女性的观察值? ?sample
    • 我已经有 M 和 F 数据的 2 个子集。如何将它们添加到一个子集中?即使我希望程序随机提取 100 个数据集,我也希望它每次都生成相同的数据,这样我仍然可以使用种子函数,对吗?
    猜你喜欢
    • 1970-01-01
    • 2023-01-22
    • 2013-11-11
    • 1970-01-01
    • 1970-01-01
    • 2020-09-25
    • 2015-10-02
    • 2023-04-09
    • 1970-01-01
    相关资源
    最近更新 更多