采样数据以保持分布

时间:2018-04-24 15:30:50

标签: python-3.x pandas

vsample_data = credit_card.sample(n = 100,replace ='False')

打印(vsample_data)

在这里,我试图从数据集中抽取100个数据点,但无法获得正确的样本数据,以便保留信用卡欺诈数据集的原始分布,即0级(非欺诈)和类1(欺诈)。

1 个答案:

答案 0 :(得分:0)

增加样本量(n>> 100)。您从中采样的数据本身就是一个随机样本。通过随机选择创建子集本身就是一个随机过程。如果其中一个数据类的频率较低,则问题是您的样本量(100)太低。

如果将replace标志更改为“True”并重复采样,则表示您正在执行称为自举的操作。假设完整的数据集代表真实的人口分布,这个重新采样将为您提供更低n值(n = 100)可能获得的测量类型的示例。

另一种选择是如上文所述的分层策略。但是,在执行此操作时,您不会创建随机子集,现在已将分布假设内置到较小的数据集中。请注意,只有在查看整个数据集以确定其分布后才能实现此目的。可能不是你想要的。

如果您正在根据数据创建(受监督的)训练数据集,则可以重复代表性不足的数据来操纵偏差。