SKLearn/Tabluar数据:如何处理包含列表而不是一个热编码的数据帧元素?

2024-04-28 22:56:17 发布

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

小结:我试图使用sklearn的RandomForestClassifier对大约1000行x 20列的数据集预测法庭案件的分类方面(例如结果)。我知道原告律师是其中的一个重要因素,在这类案件中,一家律师事务所有2或3名原告律师,另一家律师事务所有2或3名原告律师处理同一案件是很常见的

我在数据框中有一个专栏,里面有一个案件的律师名单。共有约1000行和约200个唯一的律师名称。处理这种情况的一种方法是用pd.get_dummies()对律师姓名进行热编码,这会导致模型过拟合或非常差(R^2:0.2)

鉴于我的数据集相对较小,有没有更好的解决方案?如果get_假人在数据集中出现次数超过n次,则可能仅使用get_假人?除了一个热编码之外,还有其他方法可以使用我的列表吗

例如:

index   attorney_name
0       [A1,A2,A3]
1       [A2]
2       [A6]
3       [A2,A19]
…       …
1004    [A200,A201]
1005    [A202]

Tags: 数据方法a2编码get分类sklearn因素