【问题标题】:Delete 90% of random rows by condition pandas [closed]按条件熊猫删除 90% 的随机行 [关闭]
【发布时间】:2019-05-08 23:30:44
【问题描述】:

我有一个 pandas 数据框,想删除 90% 的满足条件的数据。

条件很简单。如果“Parameter1”列的值大于阈值,则将其删除。

我的问题是如何删除其中的 90%,而不是连续删除 90% 的值,而是随机的

【问题讨论】:

    标签: python pandas dataframe random threshold


    【解决方案1】:

    boolean indexingsample 一起使用:

    df = pd.DataFrame({
        'A': [5] * 20 + [1] * 2,
        'B': list(range(22))
    })
    
    df = df.drop(df[df['A'] > 4].sample(frac=.9).index)
    print (df)
        A   B
    11  5  11
    15  5  15
    20  1  20
    21  1  21
    

    【讨论】:

    • 谢谢!效果很好!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-17
    • 2019-04-19
    • 1970-01-01
    • 2013-05-20
    • 2016-12-25
    • 1970-01-01
    相关资源
    最近更新 更多