如何处理数据集中的大量类别?

数据挖掘 机器学习 特征选择 分类数据
2022-03-05 19:53:16

我有一个“书籍”数据集,最初包含 8 列,其中 3 列包含可以分类的文本值。3 栏包含书的“语言代码”、“作者姓名”和“书名”。由于 sklearn LinearRegression 不将文本作为输入,所以我决定使用“pandas_getdummies(...)”对这 3 列进行分类,但在对其进行分类后,列数从 8 超过了 20072,这太高了。

数据集网址为:https ://www.kaggle.com/jealousleopard/goodreadsbooks/downloads/goodreadsbooks.zip/6

所以我的查询是:

  1. 标题名称怎么办?分类好像不太对。
  2. 剩下的两列怎么办?如果我留下标题名称,那么列数将超过 7646。是否有任何其他算法可以直接提供数据集而不进行分类?
  3. 分类后如何处理这些大量特征?
1个回答

像决策树这样的算法也可以很好地处理序数值,即没有 OneHotEncoding。你可以试试这个。

另外我不确定标题名称的重要性,因此您必须根据要求做出决定。但我在我的用例中避​​免了。

此外,通常当您拥有大量类别时,您可以尝试将不常见的类别合并为一个。