写在前面
随着大数据的崛起,近年来,R语言编程软件被频繁用于大量数据的处理运用之中,R语言具有编程简单,上手容易,分析快速等等有点,特别是拥有强大的诸如ggplot2等科研绘图包,是一款很棒的科研数据处理。
此外,你还可以运用R软件来对诸如销售数据挖掘、金融分析、金融量化交易、金融数据分析、行业分析决策等等,大数据时代,你需要一个快速上手且能迅速运用的数据分析软件。
当然,作为一款需要编的数据处理软件,编程是必须要学会的,敲代码是一个日积月累的过程,为帮助自己重新学习R软件,笔者决定重开公众号,一篇一篇的书写整个学习过程,也为大家提供一个很好的学习平台。
作者需要您的鼓励,看完之后如果觉得好的话,点赞一下哦!!
注意:学习是一个日积月累的过程,希望你每天都有进步哦!
1、向量
向量是几何里面的概念,向量具有方向。但R语言里面的向量却不是,它是一维数组,R语言里面的向量有数值型、字符型、逻辑型三种向量。如:
A
A1
A11
值得注意的是:以上三个分别属于数值型、字符型和逻辑型向量,且向量内部值均为相同类型并以函数c()来书写,注意:在字符型向量中,字符必须为在英文输入条件下的双引号。
1.2、向量扩展
向量可以进行四则运算,如下例子:
>A
>B
>A*B
[1] 0 3 8 15
>B
[1] 2 3 4 5
>A/B
[1] 0.0000000 0.3333333 0.5000000 0.6000000
>A+B
[1] 2 4 6 8
>A-B
[1] -2 -2 -2 -2
上面的代码第二行是自动生成一个2-5的数据型向量,而后面的代买实现了向量A与B的乘、除、加和减四则运算,当然也可以运行混合四则运算,大家可以自行尝试一下,当然大家也可以思考下如果在Excel里面完成四则运算特别是四则混合运算的麻烦程度。
当然,你也可以用自定义的数据向量来画图,仅需一行代码即可实现,如:
>A
>B
>plot(A,B)
上面三行代码实现了横坐标从0-3,纵坐标从2-5的一副散点图:
>A
>B
>lines(A,B)
上面三行代码实现了横坐标从0-3,纵坐标从2-5的一副散点图+回归线:
很明显的可以看出A与B之间是成非常强的正相关关系。
2、矩阵。
在R语言中矩阵是一个二维数组,矩阵内部的每一个元素都必须拥有相同的类型或模式(上面提到的三种数据类型)。矩阵内部有矩阵元素,行/列多少,行名列名。
例如:
>y
>y
[,1] [,2] [,3] [,4] [,5]
[1,] 1 5 9 3 7
[2,] 2 6 10 4 8
[3,] 3 7 1 5 9
[4,] 4 8 2 6 10
代码第一句的意思是:以数据1-10创建一个名为y的4列5行矩阵。这里面创建矩阵使用了matrix()函数,nrow=value是行的意思,ncol=value是列的意思。
2.1、矩阵填充。
实际运用中,如果我们需要创建一个待分析的数据矩阵如何实现呢?这个也很简单,首先是输入含数据向量,接下来是定义行和列名,最后使用matrix()函数进行实现。代码实现过程如下:
>y
>rnames
>cnames
>A
>A
c1 c2 c3 c4 c5 c6 c7 c8 c9 c10
r1 1 2 8 4 9 28 56 23 12 3
r2 1 2 8 4 9 28 56 23 12 3
r3 1 2 8 4 9 28 56 23 12 3
r4 1 2 8 4 9 28 56 23 12 3
r5 1 2 8 4 9 28 56 23 12 3
r6 1 2 8 4 9 28 56 23 12 3
r7 1 2 8 4 9 28 56 23 12 3
r8 1 2 8 4 9 28 56 23 12 3
r9 1 2 8 4 9 28 56 23 12 3
r10 1 2 8 4 9 28 56 23 12 3
以上代码实现了自己创作自己想要的矩阵过程,第二行和第三行代码分别创建了行名和列名的向量,第四行代码的意思是:选择y向量的数据,创建10X10行的矩阵,这个矩阵按照行进行填充(代码byrow=TRUE,如果按列进行填充则是byrow=FALSE),最后指定了该矩阵的行名和列名,第5行代码对其进行显示。
注意:如果待分析数据总和数量与行或列的数量一致的话,就会出现上面这种情况,所以要特别注意合理分配数据行数和列数。例如:
>y
>rnames
>cnames
>A
>A
c1 c2 c3 c4 c5
r1 1 2 8 4 9
r2 28 56 23 12 3
r3 1 2 8 4 9
r4 28 56 23 12 3
r5 1 2 8 4 9
这里体会一下按行填充的意思。
>y
>rnames
>cnames
>A
>A
c1 c2
r1 1 2
r2 8 4
r3 9 28
r4 56 23
r5 12 3
可以看到这里改变了列的数量,但填充依旧是按照行按y向量内数据的先后顺序来填充的。至于byrow=FALSE情况大家可以自行体会一下。
2.2、矩阵里如何选择和查看自己想要的数据呢?
上面提到过,矩阵是二维数组,也就是说它有个隐藏的X/Y轴,不过这个是以电脑屏幕左上角为(0,0)起点的坐标。所以,如果需要查看数据则可用以下几种方法:
>A
c1 c2
r1 1 2
r2 8 4
r3 9 28
r4 56 23
r5 12 3
>A[1,2]
[1] 2
>A[4,]
c1 c2
56 23
>A[,1]
r1 r2 r3 r4 r5
1 8 9 56 12
以上代码分别实现了在矩阵A中利用A[ ]函数选择了数据框中的第一行第二列数据、第四行数据、第一列数据。可以看出取数非常方便。当然在向量中取数也是运用A[ ]函数,不过向量中取数是取出第几个的意思。
好啦,本次分享完毕,你学会了吗?学习了的小伙伴们要多练习练习哦,如果你觉得对你有用,请分享出去,让更多参加考试的朋友学会这些方法吧!
领取专属 10元无门槛券
私享最新 技术干货