【发布时间】:2021-01-07 13:23:56
【问题描述】:
您能帮我在 r-studio 中找到更好的方法吗? 随机选择 50% 的 mtcars 数据集而不进行替换,并将其命名为 mtcars 50。
要查找:从 mtcars50 数据集中,编写命令以仅选择 hp 大于 150 的观察值?
subset(mtcars50, mtcars50$hp>150)
我已经尝试过以下操作:
sample_frac(mtcars, 0.50, replace = FALSE)
#To select 50% of the mtcars dataset
mtcars50<-sample_frac(mtcars, 0.50, replace = FALSE)
我不确定这是否正确,但我这样做是为了命名新数据集。
但是当我运行下面的代码从 mtcars50 数据集中仅选择 hp 大于 150 的观察值时,其输出中的某些变量不包含在 mtcars50 数据集中。我假设我运行的代码创建了另一个子集,并从那里选择了观察结果。
subset(mtcars50, mtcars50$hp>150)
如果这有点令人困惑,我很抱歉。但我希望你能帮助我解决我的问题。非常感谢。
sample_frac(mtcars, 0.50, replace = FALSE)
mtcars50<-sample_frac(mtcars, 0.50, replace = FALSE)
mtcars50<-sample_frac(mtcars, 0.50, replace = FALSE)
【问题讨论】:
-
您能否尝试编辑您的帖子以清楚地显示您正在运行的代码(使用三个连续的反引号)、您得到什么输出以及您希望得到什么输出?并且请不要将输出的代码或结果显示为图像——当然,除非它是图像。
-
我不清楚你的问题是什么。在第二张图片的上半部分,似乎所有列出的汽车都适当地高于 150 马力,它们是来自完整 mtcars 数据集的采样部分。您对
subset(mtcars50, mtcars50$hp>150)的结果有何期待? -
“其输出中的某些变量未包含在 mtcars50 数据集中” - 您认为缺少哪些变量?我在您显示的所有输出中计算了行名 + 11 个变量。输出的总宽度不同,因为某些子集的行名没有其他子集那么长。
-
您好,欢迎来到 SO!我有你的问题。实际上,当您采样和存储它时,您会得到不同的结果,因为 R 每次都选择了不同的随机种子。请参阅我的答案以获得解释
标签: r subset sample random-seed