python数据分类模型_用ScikitLearn建立分类数据的回归模型

我有一个超过10列的CSV文件,有些列有分类数据,有些分类列只有yes和{}值,有些列有颜色(green,blue,red…),有些列有其他字符串值。在

有没有一种方法可以使回归模型包含所有列?在

我知道yes和no值可以表示为1和0,但我读到用数字表示颜色名称或城市名称并不好。

有更好的/正确的方法吗?在

以下是包含伪数据的简单代码:import pandas as pd

from sklearn.linear_model import LinearRegression

df = pd.DataFrame({'par1':[1,3,5,7,9, 11,13],

'par2':[0.2, 0.4, 0.5, 0.7, 1, 1.2, 1.45],

'par3':['yes', 'no', 'no', 'yes', 'no', 'yes', 'no'],

'par4':['blue', 'red', 'red', 'blue', 'green', 'green', 'blue'],

'output':[103, 310, 522, 711, 921, 1241, 1451]})

print(df)

features = df.iloc[:,:-1]

result = df.iloc[:,-1]

reg = LinearRegression()

model = reg.fit(features, result)

prediction = model.predict([[2, 0.33, 'no', 'red']])

reg_score = reg.score(features, result)

print(prediction, reg_score)

在我使用的实际数据集中,这些字符串值对数据集非常重要,因此我不能只删除该列

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值