这个Python语言相当于R语言的机器学习程序是什么?

时间:2020-01-04 19:15:52

标签: scikit-learn

作为学校关于DSL和代码生成的一部分,我必须将以下用Python / Scikit-learn编写的程序转换为R语言(本练习的主题是假设的机器学习DSL)。

import pandas as pd
from sklearn.tree import DecisionTreeRegressor
from sklearn.model_selection import cross_validate
from sklearn.metrics import mean_squared_error
from sklearn.metrics import mean_absolute_error
df = pd.read_csv('boston.csv', sep=',')
df.head()
y = df["medv"]
X = df.drop(columns=["medv"])
clf = DecisionTreeRegressor()
scoring = ['neg_mean_absolute_error','neg_mean_squared_error']
results = cross_validate(clf, X, y, cv=6,scoring=scoring)
print('mean_absolute_errors = '+str(results['test_neg_mean_absolute_error']))
print('mean_squared_errors = '+str(results['test_neg_mean_squared_error']))

由于我是机器学习的完美新手,尤其是R,所以我做不到。

有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

很抱歉,您的答案很晚,可能您已经完成了学校的作业。当然,我们不能只为您做,您可能必须自己弄清楚。而且,我没有得到您真正需要做的。但是一些技巧是:

  1. 读取csv文件

数据<-read.csv(file =“ name_of_the_file”,header = TRUE,sep =“,”) 数据<-as.data.frame(data)

header = TRUE表示文件具有一行,其中包含列的名称sep =','与python中的相同(文件中的分隔符为',') as.data.frame可确保您的数据以dataframe格式保存。

  1. 添加/删除列

数据<-数据[,-“删除列的名称”]#删除列 data $ name_of_column_to_be_added <-c(1:10)#add列

要添加一列,您需要添加将包含的元素。另外#号表示注释的开始。

  1. 建模

对于建模部分,我不确定要实现的目标,但是R提供了大量可供选择的算法(即,如果您想种一棵树,请浏览页面https://www.statmethods.net/advstats/cart.html,其中它使用以下脚本来种植一棵树

fit <-rpart(驼背〜年龄+数字+开始, method =“ class”,data =驼背))

相关问题