精华内容
下载资源
问答
  • R语言封装函数

    2019-07-15 23:21:00
    R语言封装函数 原帖见豆瓣:https://www.douban.com/note/279077707/ 一个完整的R函数,需要包括函数名称,函数声明,函数参数以及函数体几部分。 1. 函数名称,即要编写的函数名称,这一名称就作为将来调用R...

    R语言封装函数

    原帖见豆瓣:https://www.douban.com/note/279077707/

     

    一个完整的R函数,需要包括函数名称,函数声明,函数参数以及函数体几部分。

    1. 函数名称,即要编写的函数名称,这一名称就作为将来调用R函数的依据。
    2. 函数声明,函数名称 <- function, 即声明该对象的类型为函数。
    3. 函数参数,这里是输入的数据,函数参数是一个虚拟出来的一个对象。函数参数所等于的数据,就是在函数体内部将要处理的值,或者对应的数据类型。 函数体内部的程序语句进行数据处理,就是对参数的值进行处理 ,这种处理只在调用函数的时候才会发生。函数的参数可以有多种类型。R help的界面对每个函数,及其参数的意义及所需的数据类型都进行了说明。

    4.函数体

    运算过程

    R运算过程中,应该尽量减少循环的使用,特别是嵌套循环。R提供了 apply,replicate等一系列函数,来代替循环,应该尽量应用这些函数, 提高效率。 如果在R中实在太慢,那么核心部分只能依靠C或者Fortran 等语言编写,然后再用R调用这些编译好的模块,达到更高的效率。
    运算过程中,需要大量用到if等条件作为判别的标准。if和while都是需要数据TRUE/FALSE这样的逻辑类型变量,这就意味着,if内部,往往是对条件的判别,例如 is.na, is.matrix, is.numeric等等,或者对大小的比较,如,if(x > 0), if(x == 1), if(length(x)== 3)等等。if后面,如果是1行,则花括号可以省略,否则就必须要将所有的语句都放在花括号中。这和循环是一致的。

    例子1
    ## if与条件判断
    fun.test <- function(a, b, method = "add"){
        if(method == "add") { ## 如果if或者for/while;
            res <- a + b ## 等后面的语句只有一行,则无需使用花括号。
    }
        if(method == "subtract"){
            res <- a - b
        }
        return(res) ## 返回值
    }
    ### 检验结果
    fun.test(a = 10, b = 8, method = "add")
    fun.test(a = 10, b = 8, method = "substract")
     
    for循环有些时候是必须要用到的,for循环内部,往往需要用下标,访问数据内的一定元素,例如向量内的元素,这时候用方括号表示。一维的数据组合,或者数组,常常称为向量。二维的数据组合,往往称为矩阵,或者数据框。具体的访问方式主要是方括号内部有没有逗号的区别。for循环或者while循环有时候让人觉得比较困惑,可能需要专门的时间进行讲解。

    例2
    ### for循环与算法
    test.sum <- function(x)
    {
        res <- 0 ### 设置初始值,在第一次循环的时候使用
        for(i in 1:length(x)){
            res <- res + x[i] ## 这部分是算法的核心,
    ##总是总右面开始计算,结果存到左边的对象
        }
        return(res)
    }
     

    ### 检验函数
    a <- c(1,2,1,6,1,8,9,8)
    test.sum(a)
    sum(a)

     

    对于 博客中ggplot2的代码

    可如下进行封装:

    fun1 <- function(data, xlab, ylab, xname, yname) {
      ggplot(data, aes(xlab, ylab)) + 
        geom_bar(aes(fill = xlab), stat = 'identity') + 
        labs(x = xname, y = yname) +
        geom_text(aes(label = ylab), hjust = 1.5, colour = 'white') +
        coord_flip() +
        theme_minimal() +
        theme(legend.position = 'none')
    }

    调用如下:

    data <- head(df_CJT_USA, 10)
    xname <- 'CurrentJobTitleSelect'
    yname <- 'Count'
    fun1(data, reorder(data$CurrentJobTitleSelect, data$Count), data$Count, xname, yname)

     

    转载于:https://www.cnblogs.com/Grayling/p/11190313.html

    展开全文
  • 幕布斯5086720R语言实际上是函数的集合,用户可以使用base,stats等包中的基本函数,也可以自己编写函数完成一定的功能。但是初学者往往认为编写R函数十分困难,或者难以理解。这里对如何编写R函数进行简要的介绍。...

    5e8fa6decd2e7d656d9a782322394ae9.png

    幕布斯5086720

    R语言实际上是函数的集合,用户可以使用base,stats等包中的基本函数,也可以自己编写函数完成一定的功能。但是初学者往往认为编写R函数十分困难,或者难以理解。这里对如何编写R函数进行简要的介绍。函数是对一些程序语句的封装。换句话说,编写函数,可以减少人们对重复代码书写,从而让R脚本程序更为简洁,高效。同时也增加了可读性。一个函数往往完成一项特定的功能。例如,求标准差sd,求平均值,求生物多样性指数等。R数据分析,就是依靠调用各种函数来完成的。但是编写函数也不是轻而易举就能完成的,需要首先经过大量的编程训练。特别是对R中数据的类型,逻辑判别、下标、循环等内容有一定了解之后,才好开始编写函数。 对于初学者来说,最好的方法就是研究现有的R函数。因为R程序包都是开源的,所有代码可见。研究现有的R函数能够使编程水平迅速提高。R函数无需首先声明变量的类型,大部分情况下不需要进行初始化。一个完整的R函数,需要包括函数名称,函数声明,函数参数以及函数体几部分。1. 函数名称,即要编写的函数名称,这一名称就作为将来调用R函数的依据。2. 函数声明,包括 0), if(x == 1), if(length(x)== 3)等等。if后面,如果是1行,则花括号可以省略,否则就必须要将所有的语句都放在花括号中。这和循环是一致的。例子:## if与条件判断fun.test

    展开全文
  • R语言入门:函数介绍(2)%>%大家好,绝艺我又回来更新了!本期主要内容是介绍上次预告的中缀函数%>%,该函数封装于"dplyr"包中。同时剧透下一期内容为有同学点播要求学习的reshape2包中的melt()函数和cast()...

    R语言入门:函数介绍(2)

     %>%

    大家好,绝艺我又回来更新了!

    本期主要内容是介绍上次预告的中缀函数%>%,该函数封装于"dplyr"包中。同时剧透下一期内容为有同学点播要求学习的reshape2包中的melt()函数和cast()函数。

    函数介绍(3)

     %>%

    %>%函数,本质上而言就是编程中常用的管道符。什么叫管道符呢?顾名思义,就是像一个管道一样,把数据传输过去。在R中,%>%函数的作用是将上一个函数运行的结果作为下一个函数的第一个参数输入进去。那么这个功能就显得十分强大了,因为我们知道,大多数的R函数,其第一个参数通常是数据,这就使得我们能够简洁清晰的将数据的变化流程和对数据的操作展示出来。

    话不多书,我们看实例吧!

    %>%的常见用法

    本期仍然以我们非常熟悉的"mtcars"数据集作为示例来进行展示。

    我们知道,"mtcars"数据集是长这样的,每一行都是一个车型,然后有mpg、cyl、hp、drat、wt、qsec、vs、am、gear、carb这些变量。

    0138c4bb9df88c9a2ca38e0e37c7e85f.png

    那么,如果我们想要在这些车型中,筛选出cyl为4或6且mpg小于25且wt<3的所有车型,传统情况下应该如何进行取子集操作呢?

    ec94503c0a8e2ff9bd61c4a17fe01354.png

    那么显然,通过不断地向which()函数中添加筛选条件,我终于还是写出了这个东西,但是对于大多数人而言,这段代码的可读性太差了,需要非常艰难地才能看懂它的含义和逻辑关系是什么。下面让我们使用%>%来尝试解决这个问题吧!

    c4336f883b363c2e08e42f5daed21cb9.png

    通过取子集函数subset()的不断传输,我们可以清晰地看出我们对数据设置的筛选条件,并可以精确地做出改动。

    注:subset(data, formula),其中data是数据,formula是设置的筛选条件。管道符将上一个函数的结果数据作为下一个函数的第一个参数数据输入,以此来实现不断地数据传输处理。

    不仅是在数据清理方面,管道符还可以直接将数据输入到绘图、运算等多种函数中,实现非常灵活的功能。

    c6f374461aaeb66dc16556f9b3a59cc8.png 647d94ec47e6340459aa14349d4f171b.png

    注:select()函数可以选择在数据集中保留哪些变量,参数为select(data, variable)。

    卑微绝艺,在线求转发、关注~

    绝艺

    展开全文
  • 这方面有需求很棒的内容,转载不了我就直接扣过来了~~对这方面有需求的读者不妨收藏一下...用R语言很好地封装了,矩阵的各种计算方法,一个函数一行代码,就能完成复杂的矩阵分解等操作。让建模人员可以更专注于模型...

    这方面有需求

    很棒的内容,转载不了我就直接扣过来了~~对这方面有需求的读者不妨收藏一下。
    d0bc7c3f4cbef1579e6b502a63f03c9f.png
    作者: 张丹(Conan)来源:http://blog.fens.me/r-matrix/

    前言


    R 是作为统计语言,生来就对数学有良好的支持。矩阵计算作为底层的数学工具,有非常广泛的使用场景。用R语言很好地封装了,矩阵的各种计算方法,一个函数一行代码,就能完成复杂的矩阵分解等操作。让建模人员可以更专注于模型推理和业务逻辑实现,把复杂的矩阵计算交给R语言来完成。
    本文总结了 R 语言用于矩阵的各种计算操作。

    1. 基本操作

    # 生成矩阵 


    取对角线元素,生成对角矩阵:

    # 对角线元素


    上三角,下三角:

    # 上三角


    矩阵转置:

    20,


    对角矩阵填充:

    # 创建方阵


    填充后,发现矩阵并不是对称的,原因是上三角取值按列取值,所以先取 10 后取 13,导致上三角和下三角取值顺序不完全一致。

    16,


    调整后,我们要先转置,再取值再填充,形成对称结构。

    20,


    矩阵和 data.frame 转换,用行列形成索引结构。

    12,

    2. 矩阵计算

    加法,减法。

    # 加载矩阵计算工具包


    矩阵值相乘。

    > m0*m1
         [,1] [,2] [,3] [,4] [,5]
    [1,]   40  395  873  741 1326
    [2,]  186  192  480  112 1710
    [3,]  189   42  616  180  171
    [4,]  112  248  864  432  520


    矩阵乘法,满足第二个矩阵的列数和第一个矩阵的行数相等,所以把上面生成的 m0 矩阵( 4 行 5 列)转置为( 5 行 4 列),再用 m1 矩阵( 4 行 5 列),进行矩阵乘法,得到一个 5 行 5 列的结果矩阵。

    > t(m0)%*%m1
         [,1] [,2] [,3] [,4] [,5]
    [1,]  527  285  649  217  399
    [2,] 1423  877 1741  633 1231
    [3,] 2319 1469 2833 1049 2063
    [4,] 3215 2061 3925 1465 2895
    [5,] 4111 2653 5017 1881 3727

    # 通过函数实现矩阵相乘
    > crossprod(m0,m1)
         [,1] [,2] [,3] [,4] [,5]
    [1,]  527  285  649  217  399
    [2,] 1423  877 1741  633 1231
    [3,] 2319 1469 2833 1049 2063
    [4,] 3215 2061 3925 1465 2895
    [5,] 4111 2653 5017 1881 3727


    矩阵外积。

    6,


    矩阵直和。

    4,


    矩阵直积。

    4,

    3. 矩阵性质

    3.1 奇异矩阵

    首先,我们线创建一个非奇异矩阵,判断非奇异矩阵方法,行列式不等于 0,矩阵可逆,满秩。

    # 创建一个非奇异矩阵


    再创建一个奇异矩阵,判断奇异矩阵方法包括,行列式等于 0,矩阵不可逆,不是满秩。

    # 奇异矩阵

    3.2 逆矩阵

    # 创建方阵,非奇异矩阵
    > m0100,16),4,4);m0
         [,1] [,2] [,3] [,4]
    [1,]   24   31   80   37
    [2,]   84   13   42   71
    [3,]   95   62   93   86
    [4,]   69   16   94   35# 计算矩阵的逆矩阵
    > solve(m0)
                [,1]          [,2]        [,3]         [,4]
    [1,] -0.03083680 -0.0076561475  0.01258023  0.017218514
    [2,] -0.01710957 -0.0270246488  0.03152548 -0.004553923
    [3,]  0.01384721 -0.0003070371 -0.00886117  0.007757524
    [4,]  0.03142440  0.0282722871 -0.01541411 -0.024126340# 逆矩阵的性质,逆矩阵与原矩阵进行矩阵乘法,得到对角矩阵。
    > round(solve(m0) %*% m0)  # 对角矩阵
         [,1] [,2] [,3] [,4]
    [1,]    1    0    0    0
    [2,]    0    1    0    0
    [3,]    0    0    1    0
    [4,]    0    0    0    1


    广义逆矩阵,将逆矩阵的概率推广到奇异矩阵和长方形矩阵上,就产生了广义逆矩阵。

    # 创建奇异矩阵


    用 ginv 函数计算非奇异矩阵,和 solve() 函数比较。

    # 非奇异矩阵


    逆矩阵的特性。

    16,

    3.3  特征值和特征向量

    # 创建一个方阵


    当 symmetric=TRUE 时,计算对称矩阵的特征值和特征向量,当 m0 不是对称矩阵时,则取下三角对称结构进行计算。

    TRUE)

    4. 矩阵分解

    下面将介绍 4 种矩阵常用的分解的方法,包括三角分解 LU,choleskey 分解,QR 分解,奇异值分解 SVD。

    4.1 三角分解 LU

    三角分解法是将原方阵分解成一个上三角形矩阵和一个下三角形矩阵,这样的分解法又称为 LU 分解法。它的用途主要在简化一个大矩阵的行列式值的计算过程,求逆矩阵,和求解联立方程组。这种分解法所得到的上下三角形矩阵不唯一,一对上三角形矩阵和下三角形矩阵,矩阵相乘会得到原矩阵。

    # 创建一个矩阵

    4.2 choleskey 分解

    Cholesky 分解是把一个对称正定的矩阵表示成一个下三角矩阵L和其转置的乘积的分解。它要求矩阵的所有特征值必须大于零,故分解的下三角的对角元也是大于零的。Cholesky 分解法又称平方根法,是当A为实对称正定矩阵时,LU 三角分解法的变形。

    # 创建对称方阵

    4.3 QR 分解

    QR 分解法是将矩阵分解成一个正规正交矩阵与上三角形矩阵,所以称为 QR 分解法,与此正规正交矩阵的通用符号 Q 有关。

    # 创建对称方阵

    4.4 奇异值分解 SVD

    奇异值分解 (singular value decomposition, SVD) 是一种正交矩阵分解法。SVD 是最可靠的分解法,但是它比 QR  分解法要花上近十倍的计算时间。[U,S,V]=svd(A),其中 U 和 V 分别代表两个正交矩阵,而 S 代表一对角矩阵。和 QR 分解法相同, 原矩阵 A 不必为正方矩阵。使用 SVD 分解法的用途是解最小平方误差法和数据压缩。

    # 创建对称方阵

    5. 特殊矩阵

    下面介绍的多种特殊矩阵,都是在 matrixcalc 库中提供的。

    5.1 Hankel Matrix

    汉克尔矩阵 (Hankel Matrix) 是具有恒定倾斜对角线的方形矩阵。Hankel 矩阵的行列式称为 catalecticant。该函数根据 n 向量 x 的值构造 n 阶 Hankel 矩阵。矩阵的每一行是前一行中值的循环移位。
    矩阵定义:

    468452b712aa44acbd0e7be351aa509b.png
    6, 

    5.2 Hilbert Matrix

    希尔伯特矩阵是一种数学变换矩阵,正定,且高度病态(即,任何一个元素发生一点变动,整个矩阵的行列式的值和逆矩阵都会发生巨大变化),病态程度和阶数相关。希尔伯特矩阵是一种特殊的汉克尔矩阵,该函数返回 n 乘 n 希尔伯特矩阵。
    矩阵定义:

    091465650b32c4717ee329a754ccdfca.png
    4)

    5.3 Creation Matrix

    创造矩阵,n 阶创建矩阵也称为推导矩阵,该函数返回阶数 n 创建矩阵,在主对角线下方的子对角线上具有序列 1,2,…,n-1 的方阵。
    矩阵定义:

    cf04e4fdcde1c0375ecfa9fff6a7408c.png
    5)  

    5.4 Stirling Matrix

    斯特林公式(Stirling’s approximation)是一条用来取n的阶乘的近似值的数学公式。一般来说,当 n 很大的时候,n 阶乘的计算量十分大,所以斯特林公式十分好用,而且,即使在 n 很小的时候,斯特林公式的取值已经十分准确。
    斯特林矩阵(Stirling Matrix),该函数构造并返回斯特林矩阵,该矩阵是包含第二类斯特林数的下三角矩阵。
    矩阵定义:

    b297cc4439a7748d1e7ca5c75f2f4f15.png
    4)

    5.5 Pascal matrix

    帕斯卡矩阵:由杨辉三角形表组成的矩阵称为帕斯卡(Pascal)矩阵。此函数返回 n 乘以 Pascal 矩阵。在数学中,尤其是矩阵理论和组合学,Pascal 矩阵是一个下三角矩阵,行中有二项式系数。通过对相同顺序的对称 Pascal 矩阵执行 LU 分解并返回下三角矩阵,可以容易地获得它。
    帕斯卡的三角形是由数字行组成的三角形。第一行具有条目1.每个后续行通过添加前一行的相邻条目而形成,替换为 0,其中不存在相邻条目。pascal 函数通过选择与指定矩阵维度相对应的 Pascal 三角形部分来形成 Pascal 矩阵。
    矩阵定义:

    d37bdd9ab89f045a870c60aa4957e331.png
    4)

    5.6 Fibonacci matrix

    斐波纳契矩阵,该函数构造了从 Fibonacci 序列导出的 n + 1 平方 Fibonacci 矩阵。
    计算公式:

    ac9319d4a0b351934ab667c5babd8434.png
    4)

    5.7 Frobenius Matrix

    Frobenius 矩阵也称为伴随矩阵,它出现在线性一阶微分方程组的解中。此函数返回一个在数值数学中有用的 Fronenius 矩阵。
    矩阵定义:

    085137484a9fbc8d583c04406ac64bfa.png
    4)

    5.8 Duplication matrix

    复制矩阵,当 A 是对称矩阵时,该函数构造将 vech(A)映射到 vec(A)的线性变换 D。
    计算公式:

    d0cbcb7971fac2481fd7ccddf29eac1e.png
    3) 

    5.9 K matrix

    k 矩阵是由 H.matrices() 函数构造的,利用直积进行计算子列表的分量。K.matrix(r, c=r) ,返回阶数为 p=r*c  的方阵,对于 r 行 c 列的矩阵 A,计算 A 和 t(A) 的直积。
    计算公式:

    75da021c9132b3858ca0f74f27cd5486.png
    2,

    5.10 E Matrices

    E 矩阵列表, E.matrices(n) 使得每个子列表的分量,是从 n 阶单位矩阵计算向量的外积导出的方阵。
    计算公式:

    72fa486871159959e148e02ab105b6e5.png
    3)

    5.11 H Matrices

    H 矩阵列表, H.matrices(r, c=r) 使得 r 阶 c 阶的子列表的分量,计算从 r 行和 c 列的单位矩阵的列向量的外积导出的方阵。

    2,

    5.12 T Matrices

    T 矩阵列表, T.matrices(n) 高级别列表中的组件数为 n。n 个组件中的每一个也是列表。每个子列表具有 n 个分量,每个分量是 n 阶矩阵。
    计算公式:

    51e0ea718b22de3719af900f1b126b9f.png
    3)


    通过 R 语言,我们实现了对于矩阵的各种计算操作,非常方便!有了好的工具,不管是学习还是应用,都会事半功倍。本文只是列举了矩阵的操作方法,没有解释计算的推到过程,推到过程请参考线性代码的教科书。

    8fbe7c6d1a164c19680809d1cc5d0d24.png— END—

    f6aa279f7386acafa076807e23123ee2.png

    展开全文
  • R语言学习之函数

    千次阅读 2020-09-18 16:55:57
    R语言学习之函数 一、R函数 输入数据类型: 向量:sum,mean,sd,range,median,sort,order 矩阵或数据框:cbind,rbind 数字矩阵:heatmap R语言中常用lm()函数用于回归分析 > state <- as.data.frame(state.x77...
  • 本篇整理了较为全面的R语言绘图函数和可视化支持包,涵盖了金融、测绘、空间数据、教学等领域的可视化图表绘制方法。 R语言作为顶级的可视化编程语言,以其出色的绘图功能闻名于统计图届。 画图命令可以被分成三种...
  • r语言 函数

    2017-03-01 16:44:00
    R语言实际上是函数的集合,用户可以使用base,stats等包中的基本函数,也可以自己编写函数完成一定的功能。但是初学者往往认为编写R函数十分困难,或者难以理解。这里对如何编写R函数进行简要的介绍。函数是对一些...
  • R语言函数

    2016-04-28 16:57:49
    R语言实际上是函数的集合,用户可以使用base,stats等包中的基本函数,也可以自己编写函数完成一定的功能。但是初学者往往认为编写R函数十分困难,或者难以理解。这里对如何编写R函数进行简要的介绍。  函数是...
  • R语言时间处理函数

    万次阅读 多人点赞 2016-10-21 07:27:59
    把表示时间的字符串转成时间类型数据,在R语言里面有两个基本的函数:as.POSIXlt() 和 as.POSIXct()。两者都是S3泛型函数,根据参数的数据类型选择不同的转换方法,除字符串外还能够转换数字、因子等数据类型,适应...
  • 目录0引言1、类2、泛型函数一、一般的查看函数参数二、泛型函数的查看2.1 methods2.2 直接运行2.3 getAnywhere三、案例3.1生成数据构建模型数据3.2画图3.3查看类...这时就需要我们了解R语言函数封装手段:类和泛...
  • 注:参考书籍《R语言入门》 程序: 一般,R程序都会以.R的扩展名、ASCII格式保存。 #程序示例: layout(matrix(1:3 , 3 , 1)) data <- read.table("Swal.dat") plot(data$V1 , data$V2 , type = "1") title(data$...
  • R语言函数的编写

    千次阅读 2017-03-22 10:52:14
    R语言函数的编写 R语言实际上是函数的集合,用户可以使用base,stats等包中的基本函数,也可以自己编写函数完成一定的功能。但是初学者往往认为编写R函数十分困难,或者难以理解。这里对如何编写R函数进行...
  • R可以从各种数据软件中导入数据,如下图所示,R可从文本文件、Excel和Access、统计软件、数据库管理系统、专业数据库、网站和在线服务中导入数据。临床研究中常用数据处理软件有Excel、SPSS、SAS和Stata等,今天介绍...
  • R语言的apply族函数

    千次阅读 2018-07-19 00:38:19
    R语言的apply族函数 R语言作为统计学一门语言,一直在小众领域闪耀着光芒。直到大数据的爆发,R语言变成了一门炙手可热的数据分析的利器。随着越来越多的工程背景的人的加入,R语言的社区在迅速扩大成长。现在已...
  • R语言中apply函数族的介绍

    千次阅读 2019-01-20 17:21:33
    详细内容可以参考: http://blog.fens.me/r-apply/
  • 最近准备一篇关于自组织映射 (Self-organizing map)的文章...R语言包大部分是统计学家的,功能强大,数学上严谨,但是不怎么考虑代码的规范和简洁。 kohonen最重要的四个函数: som xyf supersom somgrid 这个...
  • R语言 使用手册(函数使用)

    热门讨论 2011-01-20 15:33:10
    统计学软件"R"的使用手册,你可以知道最基本的函数使用方法。
  • rstudio r语言 用于统计计算的R语言版本4.0.0已发布,其中对语言的语法以及与错误检查和长向量有关的功能进行了更改。 升级版于4月24日发布。R 4.0.0的源代码可从cran.r-project.org访问。 R是一个GNU项目,随着...
  • R语言绘图函数汇总

    千次阅读 2017-04-05 14:42:16
    #car包中的scatterplotMatrix() 函数也可以生成散点图矩阵,并有以下可选操作:  #?1以某个因子为条件绘制散点图矩阵;  #?2包含线性和平滑拟合曲线;  #?3在主对角线放置箱线图、密度图或者直方图;  #?4在各...
  • R语言泛型函数及S3,S4对象机制

    千次阅读 2016-11-01 11:48:55
    一组不同的函数定义同一个通用名称,关联不同对象,处理不同对象表现不同行为.(R函数重载机制),R中S3对象的方法和S4类的方法是通过泛型函数机制关联到目标,方法通过S3和S4泛型函数机制绑定到S3对象和S4类上的. ...
  • 掌握R语言中的apply函数

    万次阅读 2016-12-28 10:59:11
    R语言作为统计学一门语言,一直在小众领域闪耀着光芒。直到大数据的爆发,R语言变成了一门炙手可热的数据分析的利器。随着越来越多的工程背景的人的加入,R语言的社区在迅速扩大成长。现在已不仅仅是统计领域,教育...
  • 轻松创建R语言函数

    2016-01-09 18:16:00
    讲真,用R这么几年,始终未尝试过自己的包,看来这就是我与真正程序员的差距了——编程习惯等于没有。 昨天一个偶然的机会想开始自己的工具包,发现了前期教程的有一些过时。于是,一个**windows**下新的...
  • 张敬信:我的R语言新书信息汇总​zhuanlan.zhihu.com0.3 R 语言编程思想 0.3.1 面向对象R 是一种基于对象的编程语言,即在定义类的基础上,创建与操作对象;数值向量、函数、图形等都是对象。Python的一切皆为对象也...
  • R语言中的条件语句的一般格式为:(1) 一个分支if(2) 两个分支if例如,实现计算 的绝对值功能:if(3) 更多分支if注:中间可以有任意多个 else if 块。多个分支的意思是,若满足“条件1”,则执行“执行体1”;其它的...
  • R语言知识体系概览

    2021-02-21 02:59:49
    最近遇到很多的程序员都想转行到数据分析,于是就开始学习R语言。总以为有了其他语言的编程...R语言封装了各种基础学科的计算函数,我们在R语言编程的过程中只需要调用这些计算函数,就可以构建出面向不同领域、不同
  • r语言中怎样查看函数源代码

    千次阅读 2016-04-12 10:29:00
    源自:...在r中看函数源代码:在R中,代码可以分为如下几个级别: 首先,是你输入了函数对象名称,你可以直接看到代码的,如要获得函数对象fivenum...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 76,108
精华内容 30,443
关键字:

r语言如何写封装函数