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

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

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

这篇是介绍一些错误和对文件的读取写入的方法(操作文件是数据挖掘的基础)

常见错误

定义向量不要忘记加c,定义多个数据时记得要使用c()

使用函数要记得加括号,尽量多使用自动补齐功能

两个等号才是比较是否相等

获取数据

R获取数据一共有三种途径:

利用键盘来输入数据

通过读取存储在外部文件上的数据

通过访问数据库系统来获取数据

读入文件(一)

R读取文件

纯文本文件(.csv/.txt):

通常使用逗号,也可以使用空白分割

1.Read.table()函数可以读取一个纯文本文件,read.table(file=要读入的文件的名称;

2.sep=指定文件使用的分隔符,默认是空白分割;

3.header=代表在读取数据之后是否将数据的第一行作为变量的名称,而不是当成具体的值来处理,如果是,header=T,不是,header=F;

4.skip=表示读取参数时,跳过部分内容,比如说可以跳过一些介绍性文字;nrows=用于读取文件的行数;

5.na.strings=用于处理缺失值的信息)

  1. x <- read.table(file = "input.txt")#需要在工作目录下才可以直接输入名称

如果不在工作目录下,可以利用setwd()函数来更改R的工作目录,或者使用文件的全路径:

可以使用head()和tail()函数读取文件的前几行或者是后几行数据,可以通过函数中选项参数n的数值来确定显示的行数

使用sep可以指定对数据进行分割,使数据格式变得整洁:

如果提前知道文件格式,也可以直接用read.csv()进行直接读取:

例如需要读取文件前100行的数据:

在此基础上使用skip和nrows两个参数相结合,就可以读取任意部分的数据,比如读取上述文件的第10-50行数据:

read.table("input 1.txt",header = T,skip=10,nrows = 50)

R在读取数据时,字符串数据会被默认读取成因子型数据

读入文件(二)

如果一个纯文本文件并不在本机上,R可以支持读取网络文件,可以通过一些协议进行读取,只要将read.table()函数的选项参数file=文件的网络链接即可。R会将文件下载到本地。

如何读取非文本文件?

我们可以使用XML包进行读取,里面包含一个readHTMLTable()函数,可以用于读取网页中的数据。

R中的foreign包可以帮助导入其他软件的数据

或者可以直接导入剪切板的内容,直接将read.table()函数选项参数改为clipboard即可:

R可以直接读取压缩文件,并不需要解压缩

如何写入文件

使用write.table()函数可以将数据写入文件,函数中,write.table(x=写入的数据,file=数据的存储路径及格式”)

如:

x=read.table("input.txt")

write.tale(x,file="H:/Rdata/newfile.txt")

也可以使用sep参数确定分隔符,这样就等同于做了一次数据转换,将文本数据转变成了表格数据

write.table(x,file = "H:/RData/newfile.csv",sep=",")

每一次加载数据,R会自动给每一行数据添加行号,为避免多次打开数据导致行号重复,可使用row.names参数

write.table(x,file = "H:/RData/newfile.csv",sep=",",row.names = F)

R会覆盖同名文件,使用append参数可以添加同名参数

R可以直接写入压缩文件:

write.table(mtcars,gzfile("newfile.txt.gz"))

读写excel文件

可以使用两种方式:

将excel文件另存为csv文件,再使用read.csv()打开

如:

read.csv("H:/RData/mtcars.csv",header = T)

或者将数据复制到剪贴板,使用readclipboard()函数将数据导入R中,在R中打开:

readClipboard()

read.table("clipboard",sep = '\t',header = T)

在R中也提供了很多包用于直接读写excel数据

比如:xlconnect包(这个包依赖于JAVA,需要有java的环境),

如果该R包无法安装,可以使用openxlsx包进行读取,如下:

library(openxlsx)

read.xlsx("H:/RData/data.xlsx",sheet = 1)

还可以使用openxlsx包的函数创建并写入新的excel文件,代码如下:

wb <- createWorkbook()

addWorksheet(wb,sheetName = 1)

x <- mtcars

writeData(wb,sheet = 1,x,startCol = 1,startRow = 1)

write.xlsx(x,"cars.xlsx")

这样就创建了具有mtcars数据的excel文件。

相关文章
|
1月前
|
机器学习/深度学习 开发者 异构计算
机器学习入门-Colab环境
Google Colab(Colaboratory)是一个免费的云端环境,旨在帮助开发者和研究人员轻松进行机器学习和数据科学工作。它提供了许多优势,使得编写、执行和共享代码变得更加简单和高效。Colab在云端提供了预配置的环境,可以直接开始编写代码,并且提供了免费的GPU和TPU资源,这对于训练深度学习模型等计算密集型任务非常有帮助,可以加速模型训练过程。
32 0
|
3月前
|
机器学习/深度学习 数据采集 数据可视化
机器学习入门----线性回归实验记录
机器学习入门----线性回归实验记录
48 0
|
5天前
|
机器学习/深度学习 数据采集 算法
Python中的机器学习入门:从数据预处理到模型评估
Python中的机器学习入门:从数据预处理到模型评估
|
22天前
|
机器学习/深度学习 数据挖掘 程序员
深入理解Python协程:提升并发编程效率基于Python的机器学习入门:从理论到实践
本文旨在探讨Python协程(Coroutine)的内部机制及其在并发编程中的应用。区别于传统的线程和进程,协程提供了一种更轻量级、高效的并发编程模式。通过深入分析协程的工作原理,本文将展示如何利用协程优化程序性能,实现高效的异步任务处理。我们将通过实例探讨协程的创建、事件循环的管理、以及与异步IO的集成,为读者提供一套完整的协程应用方案。此外,本文还将对比协程与其他并发模型(如多线程和多进程)的优劣,帮助读者全面理解协程在现代编程中的重要性。 在本文中,我们将深入探讨机器学习的核心概念,并通过Python实现其基础应用。不同于传统的技术文章摘要,我们希望通过一个故事性的引入,让读者感受到
|
27天前
|
机器学习/深度学习 人工智能 算法
机器学习入门知识
机器学习入门知识
139 0
|
3月前
|
机器学习/深度学习 人工智能 算法
【机器学习基础】机器学习入门(2)
【机器学习基础】机器学习入门(2)
26 0
|
3月前
|
机器学习/深度学习 人工智能 搜索推荐
【机器学习基础】机器学习入门(1)
【机器学习基础】机器学习入门(1)
48 0
|
1月前
|
机器学习/深度学习 算法 数据挖掘
讲解机器学习中的 K-均值聚类算法及其优缺点。
讲解机器学习中的 K-均值聚类算法及其优缺点。
|
1月前
|
机器学习/深度学习 算法 数据挖掘
机器学习中的 K-均值聚类算法及其优缺点
机器学习中的 K-均值聚类算法及其优缺点
107 0
|
1月前
|
机器学习/深度学习 分布式计算 算法
Spark中的机器学习库MLlib是什么?请解释其作用和常用算法。
Spark中的机器学习库MLlib是什么?请解释其作用和常用算法。
16 0

相关产品