zoukankan      html  css  js  c++  java
  • R语言常用语法总结

    ## 1. 数据输入 ##
    a$b # 数据框中的变量
    a = 15 # 赋值
    a <- 15 # 赋值
    a = c(1,2,3,4,5) # 数组(向量)
    b = a[1] # 数组下标,从1开始
    b = a[1:5] # 子数组
    b = a[-2] # 子数组:扣除第2个的子数组
    b = a[c(1,3)] # 子数组:访问第1,3个元素
    b = c(a0,a1,a2) # 连接多个数组
    a = rep(c(1,2,3,4),each=8) # 生成重复数列,支持每个重复和整个重复
    a = seq(from=1,to=4,by=1) # 生成等差数列
    b = cbind(a0,a1,a2,a3) # 按列合并,生成二维数组
    b = a[,1] # 取第1列
    b = a[1:4,1]
    b = a[,c(1,3,4)]
    a = vector(length=8) # 生成向量
    a = matrix(1:20, nrow=8,ncol=4) # 生成矩阵
    colnames(a) = c("A","B","C","D") # 列名称。!! 函数作为左值
    b = as.matrix(cbind(a1,a2,a3)) # 利用cbind直接生成矩阵
    b = data.frame(b1 = a1,b2 = a2) # 生成数据框
    b = list(c(1,2,3),c("a","b","c","d"),matrix(nrow=2,ncol=2)) # 生成散列
    b = a$c == 1 # 生成一个用于筛选的向量 !!较难理解
    d = a[b,0] # 生成符合条件的子集
    d = a[a$c == 1,]
    b = order(a$c) # 生成一个用于排序的向量 !!较难理解
    a[b,] # 排序结果
    b = merge(a1,a2,by = "Sample",all = "TRUE") # join两个数据框
    a$fb = factor(a$b) # 因子化
    tapply(X=a$b,INDEX=a$c,FUN=mean) # 对所有子集作函数运算
    sapply(a,FUN=mean) # 对所有列作函数运算,输出向量
    lapply(a,FUN=mean) # 对所有列作函数运算,输出列表
    summary(a) # 计算所有列的基本统计信息
    table(a$b) # 计算列联表
    table(a$b,a$c)
    paste("a","b",sep=",") # 连接字符串

    ##2. 载入和输出数据 ##
    b = read.table(file="C:/data.txt",header=TRUE,dec=".") # 读取CSV数据
    library(RODBC) # 载入ODBC工具
    odbcConnect("MyDb.mdb") # 连接ODBC数据库
    b = sqlFetch(channel,"MyTable") # 取表
    write.table(a,file="temp.txt",sep=" ",quote = FALSE, append=FALSE,na="NA") # 输出

    ## 3. 绘图 ##
    plot(x=a$b,y=a$c,xlab="X",ylab="Y",main="Title",xlim=c(0,10),ylim=c(0,100),pch=1,col=2,cex=1.5) # 散点图,参数多支持向量
    lines() # 曲线
    jpeg(file="any.jpg") # 打开一个jpg文件
    dev.off() # 关闭图片文件

    ## 4. 语法 ##
    for (i in 1:10) {do sth...} # for循环
    a = function(a,b="n") { # 构造函数
    do sht...
    }

    ## A. 函数  ##
    # 运算 #
    colSums() # 按列求和
    max()
    median() # 中位数
    min()
    paste() # 连接字符串
    rowSums() # 按行求和
    solve() # 矩阵求拟
    sqrt() #
    sum() # na.rm=TRUE 忽略NA值
    t() # 矩阵转置

    # 数据定义 #
    attach() # 添加数据框为路径
    as.matrix() # 作为矩阵
    as.data.frame() # 作为数据框
    c() # 连接向量
    cbind() # 按列连接,生成二维
    colnames() # 列名
    detach() # 去除数据框作为路径
    dim() # 行数、列数
    factor() # 因子化
    is.matrix() # 是否矩阵
    is.data.frame() # 是否数据框
    lapply() # 对所有列作函数运算,输出列表
    matrix() # 生成矩阵
    names() # 查看list的元素名称
    nrow() # 行数
    ncol() # 列数
    order() # 数据框排序
    rbind() # 按行连接
    rep() # 重复数列。 each 自身重复
    rm() # 删除变量
    rownames() # 行名
    sapply() # 对所有列作函数运算,输出向量
    seq() # 等差数列
    str() # 数据框的每个属性
    summary() # 计算所有列的基本统计信息
    table() # 计算列联表
    tapply() # 对所有子集作函数运算
    unique() # 查找剔重值
    vector() # 生成向量

    # 环境与载入、输出数据
    read.table() # 读取数据文件
    scan() # 读取数据文件
    setwd() # 设置当前工作目录
    write.table() # 输出文件

    # 绘图
    jpeg() # 打开JPG图片
    plot() # 散点图
    dev.off() # 关闭图片文件

  • 相关阅读:
    多线程之同步代码块与同步函数
    图片上传客户端与服务端
    tcp上传学习二--文本文件上传
    javaScript编写9*9口诀
    tcp聊天
    udp聊天室--简易
    往sencha.cmd中恢复设计项时,不论是系统的还是应用的,恢复进去之后都应该一键发布到前端
    一个设计项上的按钮调另一个设计项的列表界面,同时加筛选条件
    点击【****】设计项上的某个按钮,直接调出另一个设计项的【编辑界面】
    前端向后端发送请求,后端返回的一个值的请求的ajax.get();方法
  • 原文地址:https://www.cnblogs.com/wuzhitj/p/4743544.html
Copyright © 2011-2022 走看看