熊猫按过滤条件抽样

时间:2019-12-14 21:22:32

标签: python pandas dataframe

我有一个像下面这样的数据框

d = {'var1': [1, 2, 3, 4], 'var2': [5, 6, 7, 8], 'class': ['a', 'a', 'c', 'b']}
df = pd.DataFrame(data=d)
df
    var1   var2  class
0     1     5      a
1     2     6      a
2     3     7      c
3     4     8      b

我希望能够更改class列的比例。例如,我想将a类随机降采样50%,但其他类的行数保持不变。结果将是:

df
    var1   var2  class
0     1     5      a
1     3     7      c
2     4     8      b

这将如何完成。

1 个答案:

答案 0 :(得分:0)

我使用此方法首先将DataFrame分为longdf_selection。 然后,我将df_remaining减少了df_selection,并将生成的DataFrame再次与REMOVE_PERCENTAGE合并。

df_remaining