代码之家  ›  专栏  ›  技术社区  ›  user288609

为特征工程生成规范化离散值

  •  -2
  • user288609  · 技术社区  · 6 年前

    有一个dataframe,其中一列存储离散值,如下所示。我想创建另一个存储规范化值的列。例如,对于 4050 4 . 有没有什么有效的方法来代替编写自己的函数?在Sklearn中,是否有生成规范化值的函数?

    enter image description here

    1 回复  |  直到 6 年前
        1
  •  0
  •   sacuL    6 年前

    根据你的评论:

    大约有20个不同的值,范围是从1000到9999,所以我想使用每1000个作为一个类别

    从严格意义上讲,这并不是真正的正常化。但是,要做到这一点,可以很容易地使用楼层分隔( // ):

    df['new_column'] = df['values']//1000
    

    >>> df
       values
    0    2021
    1    8093
    2    9870
    3    4508
    4    2645
    5    1441
    6    8888
    7    8921
    8    7292
    9    8571
    
    df['new_column'] = df['values']//1000
    
    >>> df
       values  new_column
    0    2021           2
    1    8093           8
    2    9870           9
    3    4508           4
    4    2645           2
    5    1441           1
    6    8888           8
    7    8921           8
    8    7292           7
    9    8571           8