【发布时间】:2018-12-15 17:04:17
【问题描述】:
我有一个包含 4000 行的 DataFrame。我想从此数据框中选择 20 个随机行。
新的 DataFrame 必须是平衡的。这意味着我有一个名为 default 的属性,它可以采用两个值,是或否。因此,新的平衡 DataFrame 必须包含 10 个 yes 样本和 10 个 no 样本。
你能帮帮我吗?
【问题讨论】:
标签: python dataframe random sample
我有一个包含 4000 行的 DataFrame。我想从此数据框中选择 20 个随机行。
新的 DataFrame 必须是平衡的。这意味着我有一个名为 default 的属性,它可以采用两个值,是或否。因此,新的平衡 DataFrame 必须包含 10 个 yes 样本和 10 个 no 样本。
你能帮帮我吗?
【问题讨论】:
标签: python dataframe random sample
这可能不是最优雅的解决方案。
首先按类别分组
group_object = df.groupby('class')
然后为每个类应用 lambda 函数
group_object.apply(lambda x:x.sample(frac = 0.0025))
查看sample method 的文档
【讨论】: