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

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

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

这节课我们来学校R语言中的高级操作——数据转换

读写R格式文件

R提供了两种存储的方式,一种时候.Rds文件,一种是Rdata文件

Rdata文件类似于工程文件,会存储所有导入的数据集和处理的数据

Rdse文件是保存数据集的文件,比如iris数据

<1>使用saveRds命令可以将数据集保存为Rds格式

将readRds赋值给一个变量x,可以完成对Rds文件的读取。

<2>使用load()函数可以直接打开Rdata文件。

数据转换(一)

#首先,使用openxlsx包中的read.xlsx()函数打开mtcars.xlsx文件

read.xlsx('mtcars.xlsx',sheet = 1,startRow = 1)

#将其赋值为car32变量

car32 <- read.xlsx('mtcars.xlsx',sheet = 1,startRow = 1)

可以使用is.data.frame()判断是否为数据框

is.data.frame(car32)

结果是ture,说明数据是数据框

is.data.frame()函数还可以将数据转换为数据框格式

unlist()可以用于转化成列表

as.factor、as.vector可以用来转化成因子和向量。

数据转换(二)

如何对数据取子集?

可以使用索引的方式:

who <- read.csv("WHO.csv",header = T)

取该数据集的前50行,10列

who1 <- who[c(1:50),c(1:10)]

也可以不连续的提取,取该数据集的1,3,5,8行,2,14,18列:

who2 <- who[c(1,3,5,8),c(2,14,18)]

还可以使用逻辑值来进行筛选,比如使用which函数取出who数据集中continent列的值等于7的数据集合:

who3 <- who[which(who$Continent==7),]

还可以使用逻辑值的设置范围进行取值:

who4 <- who[which(who$CountryID>50 &who$CountryID<=100),]

取出who数据集中CountryID列的值在50到100之间的数据集合

可以直接使用subset()函数进行子集的提取

who4 <- subset(who,who$CountryID>50 &who$CountryID<=100)

在R中可以使用sample函数进行随机抽样

x <- 1:100

(设置一个x样本,数据范围在1到100)

sample(x,30)

(随机取x中的30个样本)

sample(x,30,replace = T)

(随机取x中的30个样本,但是是有放回的抽样,也就是说样本中可以有重复数字出现)

sample函数用于数据框时,如下

who[sample(who$CountryID,30,replace =F),]随机取出了一个子集  

如何删除固定行?最简单的就是使用负索引的方式,如下

mtcars[-1:-5,]  删除对应的列,逗号在前,删除对应的行

将列的值赋值给NULL,相当于清空该列的值

mtcars$mpg <- NULL

数据框如何进行添加与合并?

最简单的方法是使用data.frame()直接生成一个新的数据框

data.frame(USArrests,state.division)

如果单纯的想添加一列,可以用cbind函数

cbind(USArrests,state.division)

直接在数据后面添加一列state.division的数据

但是添加行不容易,因为使用Rbind()必须两者的列名是一样的,下面进行一个示范:

data1 <- head(USArrests,20) 取出前20行数据

data2 <- tail(USArrests,20) 取出后20行数据

rbind(data1,data2) 将两个行合并

在使用cbind和rbind的时候,数据必须有相同的行数和列数

如果数据集中有重复的数据应该如何处理呢?

假设取一个50个数据量的数据集的两个子集,容量分别为30,重复的数据有10

data1 <- head(USArrests,30)

data2 <- tail(USArrests,30)

使用rbind合并

data4 <- rbind(data1,data2)

使用duplicated(data4)判断哪些是重复值,取出重复值:

data4[duplicated(data4),]

加感叹号取出非重复的部分 (感叹号是取反的意思)

data4[!duplicated(data4),]

可以使用unique()函数一步完成非重复部分的提取

unique(data4)

相关文章
|
3月前
|
机器学习/深度学习 数据采集 算法
R语言中的机器学习库:caret与mlr的深度解析
【9月更文挑战第2天】Caret和mlr是R语言中两个非常重要的机器学习库,它们在数据预处理、模型构建、调优和评估等方面提供了丰富的功能。Caret以其易用性和集成性著称,适合初学者和快速原型开发;而mlr则以其全面性和可扩展性见长,适合处理复杂的机器学习项目。在实际应用中,用户可以根据具体需求和项目特点选择合适的库进行开发。无论是学术研究、商业智能还是教育场景,这两个库都能为数据科学家和机器学习爱好者提供强大的支持。
|
5月前
|
机器学习/深度学习 人工智能 算法
没想到!AlphaZero式树搜索也能用来增强大语言模型推理与训练
【7月更文挑战第26天】Xidong Feng等研究人员提出了一项创新方法,通过采用AlphaZero式的树搜索算法来增强大语言模型(LLMs)的推理与训练能力。这项技术,称为TS-LLM(Tree-Search for LLMs),将LLMs的解码过程视为搜索问题,并运用AlphaZero的树搜索来指导这一过程。TS-LLM不仅提升了模型的通用性和适应性,还在多个任务中实现了显著的性能提升。此外,它能在训练阶段指导LLMs学习更优的解码策略。尽管如此,TS-LLM依赖于高质量的预训练LLM,并面临较高的计算成本挑战。[论文](https://arxiv.org/abs/2309.17179)
83 5
|
2月前
|
机器学习/深度学习 数据采集 人工智能
R语言是一种强大的编程语言,广泛应用于统计分析、数据可视化、机器学习等领域
R语言是一种广泛应用于统计分析、数据可视化及机器学习的强大编程语言。本文为初学者提供了一份使用R语言进行机器学习的入门指南,涵盖R语言简介、安装配置、基本操作、常用机器学习库介绍及实例演示,帮助读者快速掌握R语言在机器学习领域的应用。
56 3
|
2月前
|
机器学习/深度学习 并行计算 数据挖掘
R语言是一种强大的统计分析工具,广泛应用于数据分析和机器学习领域
【10月更文挑战第21天】R语言是一种强大的统计分析工具,广泛应用于数据分析和机器学习领域。本文将介绍R语言中的一些高级编程技巧,包括函数式编程、向量化运算、字符串处理、循环和条件语句、异常处理和性能优化等方面,以帮助读者更好地掌握R语言的编程技巧,提高数据分析的效率。
44 2
|
3月前
|
机器学习/深度学习 算法 前端开发
R语言基础机器学习模型:深入探索决策树与随机森林
【9月更文挑战第2天】决策树和随机森林作为R语言中基础且强大的机器学习模型,各有其独特的优势和适用范围。了解并熟练掌握这两种模型,对于数据科学家和机器学习爱好者来说,无疑是一个重要的里程碑。希望本文能够帮助您更好地理解这两种模型,并在实际项目中灵活应用。
|
4月前
|
并行计算 IDE 数据挖掘
R语言入门:如何安装与配置环境
【8月更文挑战第27天】通过本文的指南,你应该能够顺利安装并配置R语言环境,以便进行数据分析和编程任务。R语言以其强大的功能和灵活的扩展性,成为数据分析领域的重要工具。希望本文能够帮助你入门R语言,并激发你进一步学习和探索的兴趣。随着经验的积累,你将能够充分利用R语言的优势,提高工作效率和数据处理能力。
|
4月前
|
数据采集 机器学习/深度学习 数据可视化
使用R语言进行统计分析:入门与实践
【8月更文挑战第10天】通过本文,我们介绍了使用R语言进行统计分析的基本流程,包括数据加载、数据清洗、描述性统计、假设检验以及数据可视化等关键步骤。R语言以其强大的功能和丰富的包资源,为数据分析师和科学家提供了强大的工具。随着你对R语言的
|
5月前
|
算法 API 数据中心
魔搭社区利用 NVIDIA TensorRT-LLM 加速开源大语言模型推理
魔搭社区于 2022 年 11 月初创建,首次在业界提出了 “模型即服务”( MaaS, Model as a Service)的理念。
|
7月前
|
机器学习/深度学习 存储 搜索推荐
利用机器学习算法改善电商推荐系统的效率
电商行业日益竞争激烈,提升用户体验成为关键。本文将探讨如何利用机器学习算法优化电商推荐系统,通过分析用户行为数据和商品信息,实现个性化推荐,从而提高推荐效率和准确性。
244 14
|
7月前
|
机器学习/深度学习 算法 搜索推荐
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)

热门文章

最新文章

下一篇
无影云桌面