2.1R的简单 介绍
一、R是一种自由、免费、开源的解释型编程语言,具有强大的数据分析工具和图形工具,支持多种设备上的分析和展示。

S语言无须关心内存分配与数据结构细节,具有良好的可移植性与可扩展性。

2.2R的初步体验
一、R的下载与安装:
https://blog.csdn.net/m0_47397401/article/details/106070026

二、RStudio下载与安装:
https://blog.csdn.net/m0_47397401/article/details/106070609

2.3基本语法
R语言允许直接使用变量,不需要预定义数据类型

一、注释语句
以字符#开头的语句称为注释语句。注释内容占多行时,每行前面都要加上#。在RStudio中,可以使用快捷键Ctrl+Shift+C注释一块程序,也可以使用Ctrl+Shift+C去除注释。

二、表达式语句
1、在R中,所有的变量、数据及函数都以对象的形式保存在内存中。对象的名字必须以字母开头,中间可以包含点(.)及下划线(_)。

2、赋值功能:=、->、-<

3、加、减、乘、除、乘方、取模、整数除法:+,-,*,/,^,%%,%/%

4、+号也可以用作连字符

5、大于、小于、大于等于、小于等于、等于、不等于:>,<,>=,<=,==,!=

6、字符型数据可以用单引号或者双引号表示

7、与、或、非:&,|,!

8、a %in% b,可判断a是否在b中间

三、函数调用语句
函数调用语句的一般形式为:
函数名(实际参数1,实际参数2,……)

四、控制语句


五、函数
ls():列出内存中的所有对象名

help():获取关于函数的进一步介绍信息

rm()/remove():删除内存中的所有对象

paste():将多个字符型对象串起来



paste0():sep为空字符

cat():以用户自定义的形式输出结果

plot():作图画出y相对于x的变化情况

c():把若干个参数组合成一个向量或者列表,函数的返回值即为组合的结果

六、自定义函数:
R语言允许如下形式的自定义函数:

采用超级赋值**<<**可以使r从局部变量变为全局变量

2.4常用数据结构
2.4.1向量
一、向量和基础数据类型
R中的基本类型是向量,而不是标量

根据存储元素类型的不同,向量可以分为如下几类:
整数型、数值型、字符型、逻辑型、复数型


assign函数可替换为<-,可以使用**class()**函数来检查生成这4个向量的类型

在R中,逻辑值的表示为TRUE和FLASE,也可以简写为T和F。

seq():生成序列

rep():生成一个所有元素都相同的向量

或者使用如下函数,效果完全相同

常用的类型转换函数有:

在R中,无论数据类型如何,缺省值都用NA表示,进行任何操作所得的结果都是NA。对于NA值,一般使用is.na()来处理。

二、向量的运算

2.4.2因子
在R中,因子是用来表示分类变量的一种有效方法,所谓分类变量就是取值来自一个集合的变量

因子数据:如果将每个元素都存储为字符型数据,则会占用比较多的存储空间。为节省存储空间,可以用正整数的形式保存每个元素,并保存正整数到各个取值之间的映射关系。这样得到的数据就是因子数据,而所有不同的取值称为水平


将gender转化为因子数据


levels():获取所有水平值

2.4.3矩阵
一、矩阵的定义


array()matrix():获得矩阵

colnames(M):获取和修改M的列名
rownames(M):获取和修改M的行名

二、矩阵的运算
1、基本运算
矩阵乘积:A %*% B

输出:

solve():求解逆矩阵

2.4.4数据框
一、数据框的定义
数据框是R语言中最接近SAS和SPSSS数据集的数据结构,它在形式上类似于矩阵,但允许各列的数据类型不同,可以很方便地表示实际中的各种数据。

创建数据框的方法:
1、通过读取文件的方式创建数据框
2、手工创建数据框

二、 数据框的操作
rbind(dfa,dfb):按dfa中的列顺序依次捆绑dfa和dfb的行,生成一个新的数据框
cbind(dfa,dfb):按dfa中的行顺序依次捆绑dfa和dfb的行,生成一个新的数据框

expand.grid():将参数的不同组合保存在一个数据框中

2.4.5列表
R的列表是一个由对象的有序集合构成的对象。列表中包含的对象又称为它的分量。列表中的分量可以为任意类型,包括列表。

《实用机器学习》(孙亮 黄倩.著)笔记——第二章 R语言相关推荐

  1. Web前端开发笔记——第二章 HTML语言 第四节 超链接标签

    目录 前言 一.超链接标签 (一)链接其它子网页 (二)链接其它站点 (三)虚拟超链接 二.从当前页面链接到指定位置 三.链接的访问情况 四.在新窗口中打开链接 例题 结语 前言 本节介绍超链接标签即 ...

  2. java语言定义一个具备栈功能的类_Java学习笔记 第二章 Java语言基础

    第二章 JAVA语言基础 一.关键字 1.关键字的定义和特点 定义:被Java语言赋予了特殊含义的单词 特点:关键字中所有的字母都为小写 2.用于定义数据类型的关键字 c;ass  interface ...

  3. Web前端开发笔记——第二章 HTML语言 第六节 区域标签、列表标签

    目录 一.区域标签 (一)div标签的定义 (二)div标签的属性 二.列表标签 (一)列表标签的定义 (二)列表标签的类型 1.有序列表 (1)有序列表的定义 (2)有序列表的属性 2.无序列表 ( ...

  4. Web前端开发笔记——第二章 HTML语言 第十节 画布标签、音视频标签

    目录 一.画布标签 二.音视频标签 (一)音频标签 (二)视频标签 (三)资源标签 结语 一.画布标签 <canvas> </canvas> 画布标签用于图形.字符等的绘制,它 ...

  5. Web前端开发笔记——第二章 HTML语言 第三节 文本格式化标签

    目录 前言 一.文本加粗.斜体标签 二.文本字体缩小.放大标签 三.文本下标.上标标签 四.文本下划线.删除线标签 五.双引号字符 结语 前言 这里主要介绍对html语言中对文本的处理. 一.文本加粗 ...

  6. Web前端开发笔记——第二章 HTML语言 第十一节 语义标签

    目录 一.语义标签的定义 二.头部标签.底部标签 三.导航栏标签 四.内容栏标签.区段标签 五.其它内容标签 六.< figure > 和 < figcaption >标 结语 ...

  7. Web前端开发笔记——第二章 HTML语言 第九节 框架标签、脚本标签

    目录 一.框架标签 (一)显示目标页面 (二)规定大小的框架 (三)规定边框的框架 二.脚本标签 结语 一.框架标签 (一)显示目标页面 <iframe></iframe>标签 ...

  8. Web前端开发笔记——第二章 HTML语言 第八节 表单标签

    目录 一.表单的定义 二.输入标签 (一)文本框和密码框 (二)提交按钮和重置按钮 (三)数值选项菜单 (四)滑动条 (五)搜索框 (六)input标签的其它type属性 (七)单选框和复选框 (八) ...

  9. Web前端开发笔记——第二章 HTML语言 第七节 表格标签

    目录 一.表格标签的定义 二.表格标签的属性 (一)边框属性 (二)单元格属性 三.表格标签的表头 表头属性 四.表格标签的标题 五.表格标签的嵌套 结语 一.表格标签的定义 在html中,表格标签表 ...

最新文章

  1. Forms Authentication timeout and Expiration
  2. document.body ,window.screen javascript对象属性取值意义
  3. C++ Primer 5th笔记(chap 13 拷贝控制)拷贝赋值函数
  4. JDBCUtils工具类编写
  5. 重磅|阿里云发布“一站式敏捷数据仓库解决方案” 实现库仓一体数据分析能力(内含干货PPT下载)
  6. JAVA中构造器和方法的区别点
  7. rabbitmq如何保证消息不丢失_RabbitMQ的去重与防止消息的丢失
  8. Wexflow:C#中的开源工作流引擎
  9. MySQL多对多创建表语句(防忘记)
  10. mllib逻辑回归 spark_《Spark大数据分析实战》笔记
  11. 2级c语言题库及答案,计算机二级c语言考试题库及答案
  12. APICloud AVM框架 开发CRM客户管理系统
  13. Linux程序设计(常用Linux命令)
  14. 数组中的键值对去重_数组去重-
  15. IC在測試生產過程的靜電放電(ESD)擊傷及電性過壓(EOS)現象
  16. Android软键盘弹出和收起的监听
  17. 微软mysql官网_az mysql
  18. 测开系列Selenium Webdriver Python(21)--元素定位2
  19. linux 磁盘缓存设置,Linux下的磁盘缓存
  20. 微信小程序《仿支付宝首页应用管理》

热门文章

  1. 北风设计模式课程---观察者模式
  2. 三国无双格斗版演示2007年05月18日更新
  3. ubuntu系统下禾赛激光雷达驱动安装
  4. Java语法核心——面向对象编程
  5. linux grep more命令,linux more命令详解
  6. 坚持#第238天~开始接触shell脚本了
  7. nvidia-docker(GPU)和存储驱动(storage_driver)
  8. PHP-MySQL图书管理系统(附源代码)
  9. 常用动画二:心跳效果
  10. 操作系统:操作系统概论