R 语言基础 2022-06-13

  • R中的变量可以有数字、字母、下划线和点;只能以点或者字母开头
    查看已经定义的变量可以用ls()
    rm(list=ls())
  • >cat("a","的大写是","A","\n")
    >a 的大写是 A
    cat() 函数可以用于拼接,在拼接时自动加上空格
    cat(语句,文件路径) 将语句写入到文件中,不会保留原文件内容;
    cat(语句,文件路径,append=T) 保留原文件内容
  • sink(文件路径,split=T) 将输出保存到文件,控制台同时输出
    sink() 无参数的sink,取消输出到文件
  • readLines(文件) 读取的文件每一行必须有换行符,否则报错
  • getwd()
    setwd()

数据类型

  • 数值型(numeric)
  • 字符型(character)
  • 逻辑型(logical)
  • 复数型(complex)
  • 前端JS(number/string/boolean/undefined/null)

数据对象类型

  • 标量(scalar)
  • 向量 (vector)只能有一种数据类型
  • 因子(factor)只能有一种数据类型
  • 矩阵(matrix)只能有一种数据类型
  • 数组(array)一个元素中只能有一种数据类型
  • 列表(list)允许不同的数据类型
    -数据框(dataframe)同一列只能有一种数据类型
  • class() 查看逻辑数据类型,数据对象类型?
    typeof() 查看物理数据类型,数据类型?
    str() 查看数据结构和组织形式
  • 单行注释#
    多行注释if(F){注释块}
  • 整除 %/%
    整除求余数 %%
  • &对两个向量中的每一个元素进行与判断
    | 对两个向量中的每一个元素进行或判断
    && 对两个向量中的第一个元素进行与判断
    || 对两个向量中的第一个元素进行或判断
  • <- /= /<<- 向左赋值
    -> /->> 向右赋值
  • :用于创建数字的向量
    %in%判断元素是否在向量中
    %*%矩阵与矩阵的转置相乘

  • a[1:5] 取出向量a中第一项到第五项
    a[c(1,2,3)] 取出第1,2,3项
    a[c(-1,-2)] 删除第1,2项
    order(a) 返回的是排序之后的下标向量;a[order(a)] 排序后的原始向量
    rep(0,5) [1]0 0 0 0 0
    NA 代表缺失,没有数据但是有位置,占用内存?
    NULL 代表不存在,连内存也不占用?
  • which() 返回筛选数据的下标
    any() 判断向量c()中是否存在TURE
    all() 判断向量中是否全为TRUE
  • list() 中下标使用[[ ]]
    c() 中下标使用[ ]
    生成矩阵 matrix(vextor,2,3,byrow=T) 将向量转换为2行3列的矩阵,且按行填充
    apply(matrix,1,sum) 第二个参数为1是按行操作
    apply(matrix,2,sum) 第二个参数为2是按列操作
    switch(expression,case1,case2...) 如果expression是数字1,则返回case1对应的内容
    switch("my name",you="someone",my name="others") 返回"others"
  • seq(10,20) 输出10到20的所有数字
    mean(15:16) 计算平均数
    sum(1:15) 计算数字之和
  • 单引号可以包含双引号;双引号可以包含单引号
    单引号不能包含单引号;双引号不可以包含双引号
  • paste(LETTERS[1:5],1:5,sep="",collapse="_") sep用于连接LETTERS[1:5]与1:5的对应元素,collapse用于连接sep连接好的元素
    [1]a
    1_b2_c3_d4_e5
    substring("string",1,5) 截取字符串的第1位到第5位(包含第1位和第5位)
    nchar("string") 用于统计字符串的长度
    names(list)<-c() 可以给列表中的元素命名
    unlist() 转换为向量
    matrix(c(1,2,3,4),2,2,byrow=T,dimnames=list(c("aa","bb"),c("cc","dd")) dimnames=list(rownames,colnames)
    m-=t(m) 转置
    bb<-array(c(vector1,vector2),dim=c(3,3,2),dimnames=list(rownames,colnames,matrixnames))
    bb[,,1]获取第一个matrix bb[1,,1]获取第一个matrix的第一行 bb[,1,1]获取第一个matrix的第一列
  • factor(c("nan","nan","nv")) 将字符型向量转换为因子类型

  • cbind(c(),c(),c()) 将向量拼接为数据框,每个向量是数据框的一列
  • merge()左连接 merge(df1,df2,by="",all.x=T)
    merge()右连接 merge(df1,df2,by="",all.y=T)
    merge()外连接 merge(df1,df2,by="",all=T)
    merge()内连接 merge(df1,df2,by="")
  • .libPaths() 查看R安装的包的位置
    library() 查看已经安装的包
    search() 查看编译环境已经载入的包
  • .csv 以逗号为分割
    .tsv 以TAB为分割
  • data.frame取子集 subset(data,列名=="条件"&列名=="条件")
    使用subset取子集会保留原来的行索引为x列,使用subset(data,列名=="条件",row.names=F)
  • 读取EXCEL文件需要R包
    install.packages("xlsx", repos ="https://mirrors.ustc.edu.cn/CRAN/")
    验证包是否安装any(grepl("xlsx",install.packages()))
  • 读取XML文件需要R包
    install.packages("XML", repos ="https://mirrors.ustc.edu.cn/CRAN/")
    读取xml文件result <- xmlParse(file = "sites.xml")
    读取xml 文件的某一行用[] 某一行某一列用[[]][[]]
    xml转list xmlToList()
    xml转data.frame xmlToDataFrame()
  • 读取JSON文件需要R包
    install.packages("rjson", repos="https://mirrors.ustc.edu.cn/CRAN/")
    读取json文件result <- fromJSON(file = "sites.json")

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,185评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,445评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,684评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,564评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,681评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,874评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,025评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,761评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,217评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,545评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,694评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,351评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,988评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,778评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,007评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,427评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,580评论 2 349

推荐阅读更多精彩内容

  • 一.R环境设置 尝试在线环境 你真的不需要设置自己的环境来开始学习R编程语言。 原因很简单,我们已经在线设置了R编...
    JackHCC阅读 515评论 0 0
  • 一.R环境设置 尝试在线环境 你真的不需要设置自己的环境来开始学习R编程语言。 原因很简单,我们已经在线设置了R编...
    JackHCC阅读 1,042评论 0 1
  •   R语言是数学研究工作者设计的一种数学编程语言,主要用于统计分析、绘图、数据挖掘。R语言是解释运行的语言(与C语...
    生信师兄阅读 663评论 0 2
  • 1、向量是用于存储数值型,字符型或者逻辑型数据的一维数组。执行组合功能的函数为c(),可以用来创建向量。向量可根据...
    栀子不易阅读 1,886评论 0 3
  • 基础数据结构 R语言中主要有向量(vector),矩阵(matrix),列表(list),数据框(data fra...
    Sharalyn阅读 315评论 0 1