R语言课程资料

2023-10-31

第一节 R语言简介

  • R语言简介

R 既是一种语言(R是一种解释性语言),也是一个软件由AT&T贝尔实验室的S语言发展而来具有统计分析功能和强大的作图功能开源软件

目前在 R 网站上有 17500个程序包,涵盖了基础统计学、社会学、经济学、生态学、地理学、医学统计学、生物信息学等诸多方面.

  1. R语言的优势

 开源免费   提供丰富的统计分析工具  可以运行在多种平台,Windows、Linux、Mac

  1. R语言参考书籍:《数据挖掘与R语言》 《R语言实战》 《R语言编程艺术》
  2. R软件的下载与安装
  1. R-GUI编辑环境:网站http://cran.r-project.org/ 或 Download R for Windows
  2. RStudio是用于R语言开发的一个简单而功能强大的图形界面工具,下载地址https://www.rstudio.com/products/rstudio/download/

 

二.Rstudio

  1. Console:命令窗口,Tab、向上、向下键辅助输入。
  2. 文本编辑窗口:保存程序命令
  3. Environment:显示当前程序用的对象
  4. History:显示历史命令,可以to console
  5. File:文件存储路径
  6. Plots:显示图形
  7. Packages:加载的包
  1. 几个常用的命令

(1)工作路径设置

  1. 菜单命令
  2. setwd(“d:\\mywork”)   setwd(“d:/myword”)
  3. getwd() 获取工作路径

(2)历史命令

  1. 向上、向下或者Ctrl+p、Ctrl+N

(3)其他命令

  1. ls()列出内存中对象
  2. rm(list=ls(all=TRUE)) 把当前环境中的对象全部删除
  3. search()列出所加载的包
  4. help()帮助命令   或  使用“?”

(4)注释显示乱码 File   Reopen with Encoding...

(5)修改界面显示字体、快捷键、R版本 tools

2. 包package

作用:特定的分析功能,需要用相应的程序包实现。例如:做生存分析,要用到 survival 程序包; 做meta分析,要用到 meta 包等等。

是R函数、数据文件、帮助文档组成的集合。相当于C语言中的库

存储包的目录称为库(library)。

  1. 包下载

从官网下载,安装本地包

install.packages()            打开安装包目录

install.packages(“包名”)    安装一个包

  1. 包加载(包卸除:detach(“package:ggplot2”) )

library(包名)   加载一个包

search()        查看已经加载的所有包

  1. 查看包的信息

help(package=“包名”)

(1)常用包

R提供了大量功能各异的包    技术:绘图类、统计检验类、机器学习 

行业:微阵数据、信用风险建模、社会科学等

  1. base:   基本函数包,包括算术运算
  2. boot:自助重复抽样
  3. class:分类算法,包括最近邻、学习矢量化
  4. foreign:读取其他格式数据包,如SPSS等
  5. graphic:基本绘图函数
  6. ggplot2:高级绘图包
  1. 如何安装R程序包(packages)
  1. 在线安装 install.packages(“package_name") 
  2. 离线安装 https://cran.r-project.org/web/views/

注意:“*.tar.gz”是针对LINUX系统的,“*.tgz”是用于MAC OS的,只有“*.zip”才是用于WIN系统的,这一点非常关键。

  1. 如何加载R程序包(packages)
  1. 使用函数libray(包名)或require(包名)
  2. 菜单操作:√右下角的plots旁边的packages

3 .  .Rdata和.history

 以“.”开头的文件,通常用作配置,系统默认隐藏这类文件。

  1. “.Rdata”是保持工作空间的默认文件。
  2. “.history”是保存历史命令的默认文件。

如果打开Rstudio特别慢,可能是因为.Rdata保存了很大的变量,可以找到.Rdata文件删掉。

  1. Rstudio 输出结果

 

第二节 R 语言中的数据对象

一、数据对象object

1.数据对象(基本知识)

  1. 数据对象:在R中创建和控制的实体,也称变量;
  2. 对象命名    以字母开头,中间可以包含字母、数字、点及下划线。

区分大小写

不能使用关键字,如NA ,for 等

  1. 对象赋值  赋值符号:->、<-、=
  2. 对象查询        查询所有对象ls()

查询特定格式对象ls(pat=“m”)

查询对象及内容ls.str()

  1. 删除对象  rm()
  1. 数据对象(类型和属性)

数据对象的属性:类型,模式、长度、维度、名称等;

数据对象(变量)的类型

数据对象的类型

含义

数值型(numeric)

整数(integer)、单精度和双精度(double)

逻辑型(logical)

值为TRUE或FALSE

字符型(character)

用单引号或者双引号引用

复数型(complex)

a+bi

原子型(raw)

二进制形式保存

3.特殊的数据对象

  1. inf  无穷, 如1/0=inf,即Infinity,无穷大;
  2. NaN  不确定,即“Not a Number(非数)”  ;
  3. NA   缺失或无法得到 ,是“not available”的缩写;
  4. NULL  空; NA代表位置上的值为空,NULL代表连位置都没有,变量为空,其长度为0,表明“空无一物”。
  1. 对象类型判别与转换函数

类型

判别函数

转换函数

数值

is.numeric()

as.numeric()

整数

is.integer()

as.integer()

双精度

is.double()

as.double()

复数

is.complex()

as.complex()

字符

is.character()

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

R语言课程资料 的相关文章

  • IDEA 开发 vue项目 初学者配置和运行(mac版)

    前言 vue建议用VSCode进行开发 不是必要就不要用Idea啦 VSCode是免费的 直接移步官网直接下载 Tip1 安装插件 打开idea 首页选择configure gt plugins 搜索vue 安装vue js 按照提示操作即
  • vue中mixin的一点理解

    vue中提供了一种混合机制 mixins 用来更高效的实现组件内容的复用 最开始我一度认为这个和组件好像没啥区别 后来发现错了 下面我们来看看mixins和普通情况下引入组件有什么区别 组件在引用之后相当于在父组件内开辟了一块单独的空间 来
  • 实锤研究,ChatGPT能力掉线!

    早在一个多月前 ChatGPT性能下降的传闻便开始在网上流行 不少订阅了Plus版的用户纷纷表示 感觉ChatGPT在经历了几轮更新后开始降智 甚至有时反应速度也会出现问题 而如今 这一传闻终于得到了证实 就在本周 斯坦福大学和加州大学伯克
  • Linux System Calls Hooking Method Summary LD_PRELOAD

    Linux System Calls Hooking Method Summary 相关学习资料 http xiaonieblog com post 121 http hbprotoss github io posts li yong ld
  • 给idea设置注释(超便捷)

    效果 打开设置 File gt settings gt Editor gt File and Code Templates gt Files 点击I 设置头文件 ClassName NAME Author USER create DATE
  • CSS实现流线边框

    使用css实现简单 流线边框 显示上下边框 实例图 html div class box h1 CSS h1 div
  • object对象转数组

    解决方案 let arr for let ip in harddisklist const item Object assign ip harddisklist ip arr push item arr push ip harddiskli
  • C# winform中调用摄像头,拍摄并保存图片!

    首先在NuGet中 下载AForge包 把这些都添加进项目中 1 命名空间和公共属性 using AForge Video DirectShow using System using System Drawing using System
  • 点云中截取自己想要的点云

    文章目录 一 利用python保留自己想要的点云 二 将txt转换为pcd 三 可视化对比 一 利用python保留自己想要的点云 1 python读取pcd点云文件 需要使用python的库open3d读取 在pycharm中打开终端 输
  • educoder算法设计与分析 实验五 回溯法拓展2

    实验五 回溯法拓展2 第1关 非递归实现皇后问题 第2关 递归算法解决皇后问题 第3关 素数圈 第1关 非递归实现皇后问题 题目描述 本关任务 在n n格的棋盘上放置彼此不受攻击的 n 个皇后 按照国际象棋的规则 皇后可以攻击与之处在同一行
  • oracle数据库的 date 和 timestamp 类型区别

    1 date类型存储数据的格式为年月日时分秒 可以精确到秒 timestamp类型存储数据的格式为年月日时分秒 可以精确到纳秒 9位 2 date类型 Date类型的数据可以显示到年月日 也可以显示到年月日时分秒 主要看存储数据的精确度 注
  • 《软件架构设计》一书目录

    第一部分软件架构概念与思想篇 1第1章解析软件架构概念 3 1 1软件架构概念的分类 3 1 1 1组成派 4 1 1 2决策派 5 1 2软件架构概念大观 5 1 2 1Booch Rumbaugh和Jacobson的定义 5 1 2 2
  • 机智的Open3D学习生活(第一集):入坑前的准备工作

    1 Open3D的开源项目地址 https github com isl org Open3D 2 Open3D的官网地址 http www open3d org 3 Open3D的文档地址 http www open3d org docs
  • Jetson 上cmake 带cuda 的程序报错

    报错信息为 找不到CUDA 架构 https blog csdn net qq 19449259 article details 128001426 把cuda 的nvcc 加入环境变量之后 又报了如下错误 报错信息如下 D CUDACC
  • 猿人学APP逆向第一题

    一 抓包 加密参数sign 二 静态分析 2 1搜索app1直接直接定位到请求位置 查看用例直接定位到加密位置 可以直接看到Sign sign 方法就是加密函数 2 2frida hook加密函数 一目了然 第一题太简单了就不过多分析 直接
  • JavaScript数据结构之栈

    JavaScript 数据结构之栈思维导图 JavaScript 数据结构之栈源码
  • MUI蓝牙打印(Android)

    MUI蓝牙打印 Android 使用MUI开发手机APP时使用蓝牙打印功能可能较少使用 MUI官方并为集成蓝牙打印功能 而且似乎对iPhone蓝牙打印的类库支持也不够完善 忙完一阶段后回顾下之前的工作 想想蓝牙打印功能折腾了够长时间了 写这
  • Django数据库orm操作以list形式获取数据库中某列所有值

    文章目录 问题 解决办法 方式一 方式二 方式三 写在最后 问题 如图所示 Django数据库中存储如下字段 这是在前端渲染出的数据 现在的需求是 要把factory这一列数据从后端数据库提取出来得到一个list方便后续的 select o
  • 几何画笔

    在看书时看到了这个概念 画笔可以分为几何画笔和装饰画笔 目前从CSDN以及MSDN上大致看了一下几何画笔的用法 代码如下 HPEN hPen NULL DWORD dwStyle PS GEOMETRIC PS DASHDOT PS END
  • HIT SC ADT and OOP

    ADT Abstract Data Types 在上学期的数据结构中我们已经接触过ADT 抽象数据型 抽象数据型是一个数学模型和在该模型上定义的操作的集合 在软件构造中ADT概念也类似 不过多了些值得注意的点 首先看一下MIT官网列出的几个

随机推荐

  • metasploit

    概念 Metasploit是一款开源的安全漏洞检测工具 可以帮助安全和IT专业人士识别安全性问题 验证漏洞的缓解措施 并管理专家驱动的安全性进行评估 提供真正的安全风险情报 这些功能包括智能开发 代码审计 Web应用程序扫描 社会工程 团队
  • 为什么重写equals还要重写hashcode

    为什么重写equals还要重写hashcode 1 简介 equals和hashcode都属于Object类的方法 其中hashcode为本地方法 object中equals是比较是否为同一对象 public boolean equals
  • Java集成微信小程序生成二维码传回前端,提供下载按钮

    1 后端调用方法获取AccessToken的工具类 import com alibaba fastjson2 JSON import com alibaba fastjson2 JSONObject import org springfra
  • 《数据结构初阶》用队列实现栈&&用栈实现队列的细致解析

    纵有千古 横有八方 目录 一 本章重点 二 队列实现栈 三 栈实现队列 四 解题思路总结 一 本章重点 用两个队列实现栈 用两个栈实现队列 解题思路总结 二 队列实现栈 我们有两个队列 入栈数据1 2 3 可以将数据入队列至队列一或者队列二
  • 如何让微pe上网_如何用U盘重装系统

    现如今电脑普及程度已经涉及到我们生活中的方方面面 日常生活和工作都离不开电脑 作为一个Window使用者 遇到问题时 能自己独立重装操作系统 是一件很有成就的事情 U盘重装系统是目前比较流行和简单的方法 比过去的使用光盘更加简易 小白也能轻
  • JavaScript-运算符篇

    目录 一 算数运算符 二 递增和递减运算符 1 前置递增 2 后置递增 三 比较运算符 四 逻辑运算符 1 逻辑与 2 逻辑或 3 逻辑非 5 短路运算 逻辑中断 6 赋值运算符 7 运算符优先级 8 流程控制 1 顺序机构 2 分支结构
  • 小朋友高矮排列-华为OD

    题目描述 现在有一队小朋友 他们高矮不同 我们以正整数数组表示这一队小朋友的身高 如数组 5 3 1 2 3 我们现在希望小朋友排队 以 高 矮 高 矮 顺序排列 每一个 高 位置的小朋友要比相邻的位置高或者相等 每一个 矮 位置的小朋友要
  • java.sql.SQLException: Access denied for user ‘root‘@‘localhost‘ (using password: YES)

    错误如下所示 查了一下发现是配置文件中的数据库密码错了 并且在代码生成器中 也要修改数据库 在查资料时发现 如果出现的错误是using password YES 那么应该是密码输错了 java sql SQLException Access
  • 深度学习实战12(进阶版)-利用Dewarp实现文本扭曲矫正

    大家好 我是微学AI 今天给大家介绍一下深度学习实战12 进阶版 利用Dewarp实现文本扭曲矫正 我们在生活中会看到一些拍摄扭曲的图片 我们在通过OCR识别的时候 因为扭曲的厉害 而无法识别 我们需要对图片进行处理 文件图像的变形有扭曲
  • HarmonyOS学习路之开发篇—多媒体开发(媒体数据管理开发)

    一 媒体数据管理开发概述 HarmonyOS媒体数据管理模块支持多媒体数据管理相关的功能开发 常见操作如 获取媒体元数据 截取帧数据等 在进行应用的开发前 开发者应了解以下基本概念 PixelMap PixelMap是图像解码后无压缩的位图
  • Javascirp异步编程

    在上一篇彻底弄清Javascirpt中的同步和异步一问当中 介绍了Javascirp代码执行的概念 同步和异步的原理 学习过Javascript语言的同学都知道 从Javascript诞生之日起 就是一门单线程 非阻塞的脚本语言 Javas
  • ArcGIS Server开发Web GIS新手体验

    原创作者 lt 不详 gt 一 前述 原创作品网址 http www vscodes com article 3 2379 html 以下针对于windows操作系统 net开发环境 ArcGIS Server是ESRI公司最新推出的服务器
  • java一行代码实现集合写入Excel表格生成数据

    这里使用maven构建项目 导入依赖
  • 高精度加法c++

    介绍 当我们加出来是一个特别大的数 开了long long都会爆的时候 我们就会用到高精度加法了 原题链接 讲解 其实高精度加法就是模拟的竖式运算 竖式运算会出现进位的情况 比如说最高位的这个1是进位 比原来的3位还多出1位 那么我们就应该
  • 语音去噪深度学习模型论文总结(大多基于transformer)

    深度学习模型 我总结了之前看的模型 并又寻找了基于transformer的模型 挑选了四个性能较好 评判标准是各种语音评价指标 该论文提出的模型与已有模型相比较得到的结果 的模型 其中前面三个是基于transformer的模型 最后一个是基
  • 晒问答

    1 如果好人没好报 还要不要做好人 如果做好人的意义是为了让自己有好报 那便永远逃不出世间规律的死循环 自己的命运和选择要牢牢掌握在自己手中 不做一个被世俗绑架来的好人 也不做一个害怕背负骂名的坏人 2 看书太少和不爱思考哪个更致命 给纯粹
  • Windows 解决端口占用方法

    查询9200端口 netstat nao findstr 9200 删除端口关联进程PID taskkill pid 11560 F
  • ORA-12505, TNS:listener does not currently know of SID given in connect desc

    出现以上的问题是无法识别SID 解决方法如下 1 找到以下目录 opt oracle product 10 2 0 db 1 network admin 修改listener ora find name listener ora即可找到该文
  • 带隔离变压器的DC/DC单端正激变换电路设计与Simulink仿真

    前期已经介绍了4种DC DC变换电路 这4种电路有一个共同特点 输入输出直接电气连接 之间没有做隔离措施 但是在实际应用中 由于电压等级的变换 安全 系统串并联等原因 开关电源的输入和输出之间需要进行电气隔离 在基本的非隔离DC DC变换电
  • R语言课程资料

    第一节 R语言简介 R语言简介 R 既是一种语言 R是一种解释性语言 也是一个软件由AT T贝尔实验室的S语言发展而来具有统计分析功能和强大的作图功能开源软件 目前在 R 网站上有 17500个程序包 涵盖了基础统计学 社会学 经济学 生态