《R语言数据挖掘:实用项目分析》——1.2 R语言简介

 2024-01-20 05:05:30  阅读 0

本书本节节选自华章计算机所著《R语言数据挖掘:实用项目分析》一书第1章第1.2节,作者【印度】 (),黄云译,更多内容章节可访问云栖社区“华章电脑”公众号查看。

1.2 R语言简介

本节将开始使用基本的 R 编程知识进行数据管理和数据处理,并且还将讨论一些编程技巧。 R 可以从下载。 用户可以根据自己的操作系统下载并安装 R 二进制文件。 R编程语言作为S语言的扩展,是一个统计计算平台。 它提供先进的预测建模、机器学习算法实现和更好的图表可视化。 R还提供了其他平台的插件,例如R.Net、rJava和R.Net,提高了其在大数据场景下的可用性。 用户可以将 R 脚本移植到其他编程环境。 关于R的详细信息,建议读者参考:

1.2.1 快速入门

启动R时的信息如下所示。 输入到 R 控制台的所有内容都是一个对象。 在单个 R 会话中创建的对象具有不同的属性,附加到对象的公共属性称为其类。 在R中执行面向对象编程有两种相对常见的方式,即S3类和S4类。 S3和S4的主要区别在于前者更加灵活,后者是更加结构化的面向对象编程语言。 S3 和 S4 方法都将符号、字符和数字视为 R 会话中的对象,并提供使该对象可用于进一步计算的函数。

1.2.2 数据类型、向量、数组和矩阵

数据集可分为两种主要类型:原子向量和复合向量。 在R语言中,原子向量可以分为5种类型,即数值或数字类型、字符或字符串类型、因子类型、逻辑类型和复数类型; 复合向量分为4种类型,即数据框、列表和数组。 和矩阵。 R中最基本的数据对象是向量,即使你将一位数字分配给字母,它也会被视为单元素向量。 所有数据对象都包含模式和长度属性,其中模式定义了对象中存储的数据类型,长度定义了对象中包含的元素数量。 R语言中的c()函数用于将多个元素连接成一个向量。

让我们看一下 R 中不同数据类型的一些示例:

数据挖掘文本挖掘_数据挖掘与r语言 pdf_数据挖掘语言培训

在上面的代码中,向量 x1 是一个具有 5 个元素的数值向量。 class() 和 mode() 返回相同的结果,因此两者都确定向量的类型:

数据挖掘文本挖掘_数据挖掘语言培训_数据挖掘与r语言 pdf

在上面的代码中,向量x2是一个由5个元素组成的逻辑向量。 逻辑向量的元素或值可以写成T/F或TRUE/FALSE。

上面的代码中,向量x3代表一个长度为25的字符向量。这个向量中的所有元素都可以用双引号(" ")或单引号(' ')来调用。

因子是另一种数据格式,因子向量中列出了多个类别(也称为“级别”)。 在上面的代码中,向量a是一个特征向量,其两个级别/类别以一定的频率重复。 as.() 命令用于将字符向量转换为因子数据类型。 使用该命令后,我们可以看到它有 5 个级别: 、 、 、 和 。 table()命令可用于显示因子变频表的计算结果:

数据挖掘文本挖掘_数据挖掘与r语言 pdf_数据挖掘语言培训

数据帧是 R 中另一种常见的数据格式,可以包含所有不同的数据类型。 数据帧是包含多个等长向量和不同类型数据的列表。 如果您只是从电子表格导入数据集,则数据类型将默认为数据框。 之后,可以更改每个变量的数据类型。 因此,数据框可以定义为由包含不同类型变量的列组成的矩阵。 在前面的代码中,数据框x包含三种数据类型:数字、逻辑和字符。 大多数现实世界的数据集包含不同的数据类型。 例如,零售商店数据库中存储的客户信息包括客户 ID、购买日期、购买数量、是否参加会员计划等。

关于向量的重要一点:向量中的所有元素必须属于同一类型。 如果不是,R将执行强制转换。 例如,在数值向量中,如果一个元素是字符类型,则向量的类型将从数值转换为字符。 代码如下所示:

数据挖掘文本挖掘_数据挖掘语言培训_数据挖掘与r语言 pdf

R 区分大小写,例如“cat”和“Cat”是不同的。 因此,用户在为向量指定对象名称时必须特别注意。

有时记住所有对象名称并不总是那么容易,示例包括:

如果你想知道当前R会话中的所有活动对象,可以使用ls()命令。 list 命令还打印当前 R 会话中的所有活动对象。 我们来看看什么是列表,如何从列表中提取元素,以及如何使用列表函数。

1.2.3 列表管理、因素和顺序

列表是可以包含抽象对象的有序对象集合。 列表中的元素可以通过双方括号获取。 所包含的对象不要求是同一类型,示例如下:

在上面的示例中,客户 ID 和电话号码是数值变量,而客户姓名和电子邮件地址是字符变量。 上面的列表一共有4个元素。 如果要从列表中提取元素,可以使用双方括号; 如果只想从中提取子列表,可以使用方括号,如下所示:

关于列表,下一步是如何合并多个列表。 多个列表可以通过cbind()函数进行合并,也就是列合并函数。 示例如下:

因素可以定义为分类或名义变量中以一定频率出现的水平。 换句话说,在分类变量中重复出现的水平称为因子。 在下面给出的示例脚本中,字符向量“”包含多个级别,并且可以使用该命令估计每个级别的频率。

序列是可以形成序列数据集的重复次数的迭代,无论是数值的、分类的还是名义的。 可以使用冒号运算符生成数字序列。 如果要使用因子变量生成序列,可以使用 gl() 函数。 该函数在计算分位数和绘制函数时特别有用。 gl()函数还可以应用于其他一些场景,示例如下:

第一行代码生成升序序列,第二行生成降序序列,最后一行生成因子数据类型序列。

1.2.4 数据导入导出

如果设置了目录路径,则将文件导入R系统时,不需要输入文件的完整路径。 如果目录路径设置为系统上的另一个路径并且您仍然想读取该文件,则需要给出该文件所在的完整路径:

无需指定详细路径即可读取文档中的所有文件。 因此,建议读者将目录设置为文件所在目录。

文件格式有很多种,其中CSV或TXT格式最适合R语言平台。 示例如下。 不过,我们也可以导入其他格式的文件。

如果使用read.csv命令,则不需要将()设置为True,也不需要将()设置为逗号(comma)。 但如果你使用的是read.table命令,你必须这样设置,否则R会从表头开始读取数据。

输入解压文件路径时,可以使用“/”或“\”。 在实际项目中,典型的数据以Excel格式存储。 而如何从Excel表格中读取数据是一个挑战。 以 CSV 格式保存数据然后将其导入 R 并不总是很方便。下面的脚本将展示如何在 R 中导入 Excel 文件。我们需要调用两个外部库来导入关系数据库管理系统 (RDBMS) 文件,例如优秀。 脚本中会提到这两个库,脚本中还提供了一些示例数据:

导入SPSS文件的方法如下。 传统企业级软件系统生成的数据要么是SPSS格式,要么是SAS格式。 导入 SPSS 和 SAS 文件的语法需要额外的包或库。 导入SPSS文件需要使用Hmisc包,导入SAS文件需要使用库:

要将数据集从R导出到任意外部地址,可以将读取命令更改为写入命令,然后将目录路径更改为导出文件的路径。

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码