代码之家  ›  专栏  ›  技术社区  ›  Amit Rastogi

如何标记和编码多个不连续的数据帧列

  •  0
  • Amit Rastogi  · 技术社区  · 6 年前

    我有一个熊猫数据帧与多个列(其中一些非连续)这将需要标签编码。根据我对LabelEncoder类的理解,对于每一列,我都需要使用不同的LabelEncoder对象。我正在使用下面的代码(下面代码中的字符串列表是需要进行标签编码的所有列的列表)

    for col in list_of_string_cols:
          labelenc = LabelEncoder()
          train_X[col] = labelenc.fit_transform(train_X[col])
          test_X[col] = labelenc.transform(test_X[col])
    

    这样对吗?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Vivek Kumar    6 年前

    是的,没错。

    在当前版本的sciketlearn(0.19.2)之前,您使用的是编码多列的正确方法。看看这个问题,它也做你正在做的事情:

    OrdinalEncoder 可用于一次对所有分类功能列进行编码。