【问题标题】:How to exclude one or two columns from label encoding in pandas?如何从熊猫的标签编码中排除一或两列?
【发布时间】:2021-04-29 02:10:00
【问题描述】:
代码如下。我想从标签编码代码中排除两列名称“卡类型”和“风险值”。如何排除那些?以下代码将所有对象类型编码为数字。
列是警报编号工作、贷款、城市、日期、卡类型、性别、收入水平、估计工资、风险值
le = LabelEncoder()
objList = bank_dataset.select_dtypes(include="object").columns
for feat in objList:
bank_dataset[feat] = le.fit_transform(bank_dataset[feat].astype(str))
【问题讨论】:
标签:
pandas
dataframe
machine-learning
data-science
label-encoding
【解决方案1】:
用途:
objList = bank_dataset.select_dtypes(include="object").columns
objList = objList.difference(['Card Type','Risk Value'], sort=False)
或者:
objList = [x for x in objList if x not in ['Card Type','Risk Value']]
【解决方案2】:
默认情况下,每个数据集操作都不会就地完成,我会像这样简单地使用 drop 函数:
objList = bank_dataset.drop(columns=['Card Type','Risk Value']).select_dtypes(include="object").columns