【问题标题】:Creating a function in python to bin data在python中创建一个函数来bin数据
【发布时间】:2020-01-30 06:21:21
【问题描述】:

我有一个包含 1000 行和 2 列的数据。一列带有 CustomerID,另一列带有值。我需要创建一个函数来分 5 组中的值。我需要使用的分箱过程如下。所有值 = 1 将被赋予一个分数 = 1。对于剩余的值,将采用它们的平均值,低于平均值的值将被赋予 2 分。此外,对于剩余的值(未评分),将采用它们的平均值,低于平均值的值将被赋予 score=3。很快。

【问题讨论】:

    标签: python function binning


    【解决方案1】:

    假设 5 个 bin 得分不计算,剩余项目得分为 0。

    import pandas as pd
    import numpy as np
    
    cid = np.arange(1,1001)
    score = np.zeros(1000, dtype=int)
    values = np.random.randint(0,100,1000)
    
    df = pd.DataFrame({'CID':cid, 'Values':values, 'Score':score})
    
    df.loc[df['Values'] == 1, 'Score'] = 1
    
    for i in range(2,6):
        mean = df.loc[df['Score'] ==0, 'Values'].mean()
        df.loc[(df['Score'] == 0) & (df['Values']<mean), 'Score'] = i
    
    print(df)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-10
      • 2019-06-20
      • 2019-05-15
      • 2016-08-06
      • 1970-01-01
      • 1970-01-01
      • 2019-03-08
      • 1970-01-01
      相关资源
      最近更新 更多