是否可以同时对多个选定列进行编码?

2024-09-28 13:18:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我在我的大数据框中有一个分类列列表,我试图对它们进行编码,因为我使用的一些算法不接受字符串(例如knn)

这是我的密码:

#encode categories
from sklearn.preprocessing import LabelEncoder
# LabelEncoder
le = LabelEncoder()
# dataImputed[catgoricalValues] = dataImputed[catgoricalValues].apply(le.fit_transform) #didn't work
dataImputed[catgoricalValues] = le.fit_transform(dataImputed[catgoricalValues].astype(str))

我得到了这个错误:

ValueError: y should be a 1d array, got an array of shape (490546, 11) instead.

在维护数据帧中的所有其他值的同时,如何只对catgoricalValues列表中的那些值进行编码


Tags: 数据字符串le算法密码编码列表分类
1条回答
网友
1楼 · 发布于 2024-09-28 13:18:33

试试这个:

import pandas as pd

from sklearn.preprocessing import LabelEncoder

def MultiLabelEncoder(columnlist,dataframe):
    for i in columnlist:
        labelencoder_X=LabelEncoder()
        dataframe[i]=labelencoder_X.fit_transform(dataframe[i])

MultiLabelEncoder(catgoricalValuesColumnNameList,dataImputed)

相关问题 更多 >

    热门问题