全网最快入门———R语言机器学习01

简介: R 语言是为数学研究工作者设计的一种数学编程语言,主要用于统计分析、绘图、数据挖掘。机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

R 语言是为数学研究工作者设计的一种数学编程语言,主要用于统计分析、绘图、数据挖掘。

机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

数据结构

数值型:数值可以用于直接结算,加减乘除

字符串型:可以进行连接、转换、提取等

逻辑型:或真或假

日期型等

向量

数值型:数值可以用于直接结算,加减乘除

字符串型:可以进行连接、转换、提取等

逻辑型:或真或假

日期型等

向量索引

1、正(负)整数索引

可以使用length()访问向量的个数,访问向量x的第一个值可以使用x[1];还可以使用负整数进行索引,表示访问除了这一行的其他行数据,比如不访问一个三行数据的第二行,可以使用x[-2]

2、逻辑向量索引

以上代码是只输出对应逻辑值为真的值。

还可以进行逻辑判断,例如:

对于字符串向量,我们可以使用一些特殊的操作符进行逻辑判断,例如“%in%”

也可以用于索引:

3、名称索引

我们可以使用names()函数为向量的每一个元素添加名称:

然后即可以通过每一个元素的names来访问它的值:

添加向量:

可以直接通过索引来添加向量;

也可以一次性添加多个元素:

在向量中插入一个新元素:

可以使用append()函数,以下代码表示,在x这个向量的5这个元素后面插入一个99的元素:

如果after=0则代表在向量的头部插入数据:

删除向量:

如果想删除整个向量,可以直接使用rm()函数,如果想删除某个函数,可以直接采用负整数索引的方式:

其实就是重新生成一个新的向量,替换掉原来的向量

修改向量值:直接将需要修改的值索引出来,然后给它赋一个新的值就可以了。

但是注意这里是数值型的向量,我们不能赋值给字符串,会把整个向量变成字符型向量

向量运算

向量是R中最基本的数据结构。

向量运算是对应位置的元素进行运算,其中长的向量的个数必须是短向量个数的整数倍。

Ceiling()不小于x的最小整数,floor()函数不大于x的最大整数:

Trunc()函数返回整数部分:

Round()函数用于进行四舍五入,digits用来表示返回的位数

Signif()保留小数部分有效数字

Which()函数可以返回索引值,也就是元素所在的位置

矩阵与数组

矩阵是一个按照长方阵列排列的复数或实数集合,向量是一维的,矩阵是二维的,需要有行和列。在R软件中,矩阵是有维数的向量,这里的矩阵元素可以是数值型,字符性改革或者是逻辑型,但是每个元素必须都拥有相同的模式,这个和向量一致。

我们可以通过matrix()函数来创建矩阵

行数和列数的分配要满足分配的条件,如果只给出一个行或者是一个列,R会自动进行分配,可以通过byrow来指定按行还是按列进行排列:

byrow = T 表明按照行匹配,反之

Dinames参数可以通过一个列表,指定矩阵行和列的名字:

第一个参数是行名,第二个参数是列名

Dim()函数可以显示向量的维数,可以通过dim()函数来对向量添加维数,从而构建矩阵

默认是按照列匹配

下面介绍一下数组这个数据结构。R中的数组其实就是多维的矩阵,我们重新定义一个向量x:

dim(x)<-c(2,2,5) 意思是3维  2x2x5的数组

只要向dim()函数传入三个参数,就可以构建三位数组,数组还可以使用array()函数来创建:

还可以创建字符型和逻辑型的数组,那么创建了矩阵,要如何访问矩阵的数据呢,下面是矩阵的索引:

首先可以通过矩阵下标进行访问,m[1,2]表示访问第一行第二列的元素

也可以一次访问多个元素,

比如访问第一行的第二、三、四列元素,访问第二、三行的第一列元素。

输出矩阵的一个子集:

如果下标只写一个数字,就是单独访问行或者列:

也可以同样使用负索引进行访问,还可以输入对应的行列名称进行访问:

矩阵中的四则运算需要行和列一致,与向量一致,可以使用colsums()、rowsums()、rowmeans()等函数对整个矩阵进行计算也可以进行矩阵的乘法:

分别是矩阵的内积(对应元素相乘)以及矩阵的外积

相关文章
|
1月前
|
机器学习/深度学习 数据采集 算法
R语言中的机器学习库:caret与mlr的深度解析
【9月更文挑战第2天】Caret和mlr是R语言中两个非常重要的机器学习库,它们在数据预处理、模型构建、调优和评估等方面提供了丰富的功能。Caret以其易用性和集成性著称,适合初学者和快速原型开发;而mlr则以其全面性和可扩展性见长,适合处理复杂的机器学习项目。在实际应用中,用户可以根据具体需求和项目特点选择合适的库进行开发。无论是学术研究、商业智能还是教育场景,这两个库都能为数据科学家和机器学习爱好者提供强大的支持。
|
1月前
|
机器学习/深度学习 算法 前端开发
R语言基础机器学习模型:深入探索决策树与随机森林
【9月更文挑战第2天】决策树和随机森林作为R语言中基础且强大的机器学习模型,各有其独特的优势和适用范围。了解并熟练掌握这两种模型,对于数据科学家和机器学习爱好者来说,无疑是一个重要的里程碑。希望本文能够帮助您更好地理解这两种模型,并在实际项目中灵活应用。
|
2月前
|
并行计算 IDE 数据挖掘
R语言入门:如何安装与配置环境
【8月更文挑战第27天】通过本文的指南,你应该能够顺利安装并配置R语言环境,以便进行数据分析和编程任务。R语言以其强大的功能和灵活的扩展性,成为数据分析领域的重要工具。希望本文能够帮助你入门R语言,并激发你进一步学习和探索的兴趣。随着经验的积累,你将能够充分利用R语言的优势,提高工作效率和数据处理能力。
|
2月前
|
数据采集 机器学习/深度学习 数据可视化
使用R语言进行统计分析:入门与实践
【8月更文挑战第10天】通过本文,我们介绍了使用R语言进行统计分析的基本流程,包括数据加载、数据清洗、描述性统计、假设检验以及数据可视化等关键步骤。R语言以其强大的功能和丰富的包资源,为数据分析师和科学家提供了强大的工具。随着你对R语言的
|
5月前
|
数据可视化
R语言机器学习方法分析二手车价格影响因素
R语言机器学习方法分析二手车价格影响因素
|
5月前
|
机器学习/深度学习 数据采集 算法
数据分享|R语言机器学习预测案例合集:众筹平台、机票折扣、糖尿病患者、员工满意度
数据分享|R语言机器学习预测案例合集:众筹平台、机票折扣、糖尿病患者、员工满意度
|
5月前
|
机器学习/深度学习 测试技术 数据处理
【视频】R语言机器学习高维数据应用:Lasso回归和交叉验证预测房屋市场租金价格
【视频】R语言机器学习高维数据应用:Lasso回归和交叉验证预测房屋市场租金价格
|
5月前
|
机器学习/深度学习 存储 搜索推荐
利用机器学习算法改善电商推荐系统的效率
电商行业日益竞争激烈,提升用户体验成为关键。本文将探讨如何利用机器学习算法优化电商推荐系统,通过分析用户行为数据和商品信息,实现个性化推荐,从而提高推荐效率和准确性。
210 14
|
5月前
|
机器学习/深度学习 算法 数据可视化
实现机器学习算法时,特征选择是非常重要的一步,你有哪些推荐的方法?
实现机器学习算法时,特征选择是非常重要的一步,你有哪些推荐的方法?
97 1
|
5月前
|
机器学习/深度学习 算法 搜索推荐
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)

热门文章

最新文章

下一篇
无影云桌面