• [R]第一节 初始R语言



    R语言的特点

    1. 有效的数据处理和保存机制
    2. 完整的数组和矩阵计算操作符
    3. 连贯而又完整的数据分析工具
    4. 图形工具直接对数据进行分析和展示
    5. 简介而又高效的程序设计软件
    • R是一个内部实现了许多经典的、时髦 的统计技术的语言环境
    • 部分统计功能整合在R环境的底层,大多数的统计功能则以包(packages)的形式提供
      • 实现某些特定功能/算法(比较新颖)
      • 程序包包含函数、数据、帮助文件以及描述文件
    • R和其他主要的统计系统存在重要的差异
      • R一次统计分析被分解成了一系列步骤,并且所有的中间结果都被保存在了对象
        (object)中

    R备受青睐的原因

    1. 免费!!拥有丰富的扩展包,囊括了经济学,生态学,地理学,生物信息学,生物统计学和社会心理学等诸多学科
    2. 多平台,如Windows,MacOS和Linux等
    3. 它是彻底的面向对象的统计编程语言
    4. R与其他编程语言/数据库之间有很好的接口
    5. 其他:更新更加迅速,优秀的制图功能,DIY,GUI

    R的官方网站

    ->R官网

    R语言的基本规则

    • 基本命令
      • 表达式(expressions)、赋值(assignments)
      • 如果是表达式,解析(evaluate)后,结果显示在屏幕上,同时清空该命令所占用的内存
        • 1+2

        • [1] 3
    • 如果是赋值,解析表达式并且把值传给变量,但结果不会自动显示在屏幕上
      • x<-8

      • 这里就是给x赋值8
    • R对象的命名只能是数字、字母、“.”“_”
      • R中字母区分大小写
      • Y<-8

      • y<-6

      • Y == y

      • [1] FALSE
    • 必须以“.”或者字母开头
      • .s<-1

      • .1<-1

      • 错误0 .1 <- :(do_set)赋值公式左手不对
    • 命令可以被;隔开,或者另起一行,“#”进行语句的注释
    • 通过大括弧"{}"将基本命令放在一起构成一个复合表达式
    system.time(
      {
        sum<-0 #初始化结果值
        for (i in c(1:1000)){
          sum<-sum+i;print(i)
        }
        print(sum)
      }
    )
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • R每次启动的时候,对应安装软件时默认的工作目录。当数据存储在其他文件夹时,可以进行设定。之后的任何数据读取和保存都在设定的工作目录下进行
    • 设定工作目录
    > setwd("D:\\GREMMIE") #这里需要两个反斜杠,一个用来转译
    > setwd("D:/GREMMIE")
    
    • 1
    • 2

    getwd():得到工作目录
    source(“1.R”):运行1.R的文件。
    也可以把所有输出结果从控制台重新定向到外部文件中
    > sink(“外部文件”) #把所有输出结果从控制台重新定向到外部文件当中

    • 让输出流重新定向到控制台
      • sink()

    使用帮助

    • 为了得到任何特定名字的函数的帮助,如solve,可以使用如下命令。在大多数R平台中,你可以通过运行下面的命令得到HTML格式的帮助

    • help(solve)

    • ?solve

    • 对于有特殊含义的字符,可以采用逃逸符号:双引号或者单引号(一般适用于有语法含义的关键字和有特殊含义的字符,如if,for,function等)

    • help(“[[”)

    • ?“*”

    • help.start()

    保存,删除对象

    • R创建控制的实体称为对象
      • 向量
      • 矩阵
      • 数组
      • 数据框
      • 列表
      • 因子
      • 函数
      • 通过以上实体定义的更为一般性的结构
    • 罗列所有对象
      • ls()

      • objects()

    • 删除对象x,y,z
      • rm(x,y,z)
    • 删除所有对象
      • rm(list=ls())

    • 当前会话中的所有对象可以永久得保存在文件中,以便于以后的后续调用
      • 所有对象写入到.RData文件中
      • 所有命令保存在.Rhistory文件中
    • 当R再次启动时,可以导入对象和命令
    • 将对象x保存到硬盘
      • save(x,file=“yourname”)

    • 将当前空间下所有对象保存到硬盘
      • ** save.image**(file=“yourname”) #在这之前要重新设置工作目录,即用setwd(D:/…)

    • 载入保存的镜像
      • load(file=“yourname”)

    R包

    • 包是R函数,数据,预编译代码组成的实现某一功能的集合
    • 库(library):存储R包的目录
      • 查看库中已经有的R包:library()
    • 安装包
      • install.packages(“gclus”) #CRAN镜像网络下载

    • 载入包
      • library(gclus) #库中存在该包才能载入;载入之后可以使用包中的函数或者数据集

    • GUI下安装包
    • 在官方网站中可以找各种包,可以按照类型来找,也可以按照日期来找,也可以直接搜。
      • 也有源码包,是压缩文件形式的,需要编译
      • 也有Windows下的zip形式的文件,下载很快,可以直接在R中library使用。
        • 打开insatll package窗口

    基本运算

    • 算术运算
      • 加减乘除 幂^
      • 数学函数:sqrt() log() log10() exp() abs() sin() cos() tan()
    • 关系运算
      • 小于< 小于等于 <= 大于>
    • 逻辑运算
      • 与& 或| 非!
    • 1+(2>1)结果为2,因为关系运算得出的结果TRUE为1,FALSE为0
    • 2+3 | !(3>5)结果为TRUE,因为2+3是5,不为0,所以为TRUE。
    • 对于&来说,如果左边是FALSE的话,就不会再去判断右边的内容,表达式的值直接就是FALSE

    变量赋值

    最新版的R语言赋值可以使用左箭头<- 等号= 右箭头->赋值

    # 使用等号=赋值
    > var.1 = c(0,1,2,3)
    > print(var.1)
    [1] 0 1 2 3
    
    # 使用左箭头和右箭头赋值> c(TRUE,1) -> var.3
    > print(var.3)
    [1] 1 1
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    查看已定义的变量可以使用ls()函数

    > print(ls())
    [1] "var.1" "var.2" "var.3"
    
    • 1
    • 2

    删除变量可以使用rm()函数

    > rm(var.3)
    > print(ls())
    [1] "var.1" "var.2"
    
    • 1
    • 2
    • 3

    交互式编程

    我们只需要在命令行中执行R命令就可以进入交互式的编程窗口

    R
    
    • 1

    执行完这个命令后会调出R语言的解释器,我们在>符号后面输入代码即可
    交互式命令可以通过q()来退出

  • 相关阅读:
    Docker consul的容器服务更新与发现
    从Excel的一个工作表中获取第一行(标题行)的单元格内容-代码解释
    【PG】PostgreSQL客户端认证pg_hba.conf文件
    天翼云全场景业务无缝替换至国产原生操作系统CTyunOS!
    Lombok的一些使用心得
    Kubernetes为什么会赢
    php redis分布式锁
    Mask R-CNN训练自己的数据集
    【重温基础算法】内部排序之希尔排序法
    开放智慧,助力学习——电大搜题,打开学无止境的新篇章
  • 原文地址:https://blog.csdn.net/qq_63511424/article/details/127414541