如何为随机森林分类拟合分类数据类型?
数据挖掘
Python
scikit-学习
数据挖掘
随机森林
2021-09-18 02:17:10
3个回答
据我所知,出现此类错误存在一些问题。第一个是,在我的数据集中存在额外的空间,为什么显示错误,'输入包含 NAN 值;其次,python 不能处理任何类型的对象值。我们需要将此对象值转换为数值。为了将对象转换为数字,存在两种类型的编码过程:标签编码器和一种热编码器。其中标签编码器对 0 到 n_classes-1 之间的对象值进行编码,一个热编码器对 0 到 1 之间的值进行编码。在我的工作中,在为任何类型的分类方法拟合我的数据之前,我使用标签编码器来转换值,并且在转换之前我确保我的数据集中不存在空格。
是的,你可以用数字化,df.category_name.codes
但你会看到 1 或 0 或 -1 所以你必须编写这样的函数。
def numericalize(df, col, name, max_n_cat):
if not is_numeric_dtype(col) and (max_n_cat is None or len(col.cat.categories) > max_n_cat):
df[name] = col.cat.codes + 1