【问题标题】:How I do I get a second sample from a dataset in Python without getting duplication from a first sample?如何从 Python 中的数据集中获取第二个样本而不从第一个样本中获取重复?
【发布时间】:2022-01-02 18:12:03
【问题描述】:

我有一个 python 数据集,我设法从中提取样本并放入第二个数据集中。 之后,我将需要从原始数据集中生成另一个样本,但我不希望第一个样本再次出现。 理想情况下,这需要任何标志只存在一年,以便在该时间过去后再次对其进行采样。

【问题讨论】:

  • 这能回答你的问题吗? How to incrementally sample without replacement?
  • 我不明白“理想情况下这需要任何标志只存在一年”这句话。
  • 对不起,我不清楚。我将每隔几个月从数据集中抽取一次样本,如果样本行是在过去 12 个月内采集的,我不希望重复。在该时间段之后,可以再次选择该行。
  • 请说明您当前如何从数据集中抽取样本。我不太明白数据集在您的场景中是如何表示和存储的。
  • 请提供足够的代码,以便其他人更好地理解或重现问题。

标签: python random dataset


【解决方案1】:

用 A 表示您的原始数据集。您生成 A 的一个子集,用 B1 表示它。然后,您可以从 A_leftover = A \ B1 创建 B2,其中 \ 表示集合差异。然后,您可以从 A_leftover 生成 B3、B4、... B12,其中 Bi 是从 A_leftover = B(i-1) 生成的。

如果你想在下一年放回 B1,A_leftover = A_leftover \ B12 U B1,你可以由此生成 B13 的子集(或者你可以将它表示为 B1 为 13%12 = 1)。所以在 12 之后,你可以说你可以从 A_leftover = A_leftover \ B(i-1) U B(i-11) 生成 Bi。或者你可以从一开始就使用这个公式,为 [0,1,2,...,10] 中的每个 i 定义 B(-i) = empty set。

【讨论】:

    猜你喜欢
    • 2017-04-28
    • 1970-01-01
    • 1970-01-01
    • 2018-07-13
    • 1970-01-01
    • 2012-06-18
    • 1970-01-01
    • 1970-01-01
    • 2021-08-25
    相关资源
    最近更新 更多