将分类列添加到预测模型中

我得到了一个客户数据框和有关他们活动的信息,我建立了一个模型来预测他们是否购买产品。我的标签是一列“did_buy”,如果客户购买,则分配 1,否则分配 0。我的模型考虑了数字列,但我还想将分类列添加到预测模型中,但我不确定如何转换它们并在我的 X 列车中使用它们。这是我的数据框列的一瞥:


Company_Sector         Company_size  DMU_Final  Joining_Date  Country

Finance and Insurance       10        End User   2010-04-13   France

Public Administration       1         End User   2004-09-22   France

还有一些列:


linkedin_shared_connections   online_activity  did_buy   Sale_Date

            11                        65           1      2016-05-23

            13                        100          1      2016-01-12


墨色风雨
浏览 178回答 2
2回答

三国纷争

让我建议您首先确定哪些分类变量是有序的(订单计数,例如好、非常好、坏等),哪些是名义变量(顺序无关紧要,例如颜色)。对于序数,您可以使用 map 如下:    Category0   Excellent1   Excellent2   Bad3   Good4   Bad5   Very Good6   Very Baddf.Category = df.Categoy.map({'Excellent':5, 'Very Good':4,                               'Good':3, 'Fair':2, 'Bad':1, 'Very Bad':0})    Category0   51   52   13   34   15   46   0对于名义变量,您可以实施虚拟变量方法。示例:假设您的分类变量有两个值“Native”和“Foreign”。您可以创建一个名为“本机”的列,其中 1 表示本机,0 表示外来。可以为多个类别实施。data = pd.DataFrame({"Origin": ['Native', 'Native', 'Foreign', 'Native', 'Foreign']})    Origin0   Native1   Native2   Foreign3   Native4   Foreigndata['Native'] = pd.get_dummies(data['Origin'], drop_first=True)data.drop("Origin", axis = 1, inplace = True)这将导致:    Native0   11   12   03   14   0
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python