【发布时间】:2018-09-14 20:40:26
【问题描述】:
我需要将一些 Python 代码翻译成 R。我需要做的是多次从更大的表中随机抽取行,以便以后使用。这是一个插图:
library(data.table)
library(dplyr)
test_table <- data.table(replicate(10, sample(0:1, 10, rep=TRUE)))
test_table
给出一个 10 x 10 的表格(在某些特定的运行中):
所以例如可以得到一个样本:
sample <- sample_n(test_table, 2)
sample
可能看起来像:
但是,我不明白采样多个样本时的结果:
kSampleSize <- 2
kNumSamples <- 3
samples <- replicate(kNumSamples, sample_n(test_table, kSampleSize))
samples
可以给:
但它看起来并不像“sample 列表”。我希望samples[1] 给出类似于sample 的结果,但我得到了一个奇怪的结果(每次运行不同):
1. 1 0
我做错了吗?我误解了输出吗?期望在 Python 中出现“sample 列表”而不是在 R 中?
【问题讨论】:
-
在可能的重复中查看答案,但您只需将
simplify = FALSE添加到replicate -
simplify的默认值是TRUE,在这种情况下强制输入list,这就是为什么你得到了你所做的数据结构。 -
@Mako212 好的!谢谢!我认为它也可能是重复的,但这个问题似乎还有很多事情要做,以至于我的问题仍然可能对其他人有用。
-
很公平,我会将我的评论移至实际答案
标签: r jupyter-notebook