17人加入学习
(0人评价)
01 R语言编程与统计分析

数据是信息时代的“新能源”。

价格 ¥ 699.00
该课程属于 R语言数据分析师 请加入后再学习

程序控制

————————————————————

for

> for (n in x)
+         print(n^2)
[1] 1
[1] 4
[1] 16

while

> x <- 1
> while(x<3){
+         print(x)
+         x = x+1
+ }
[1] 1
[1] 2

if else

 

subset、which取值

 m<-seq(1,20,by=2)
> m
 [1]  1  3  5  7  9 11 13 15 17 19
> subset(m,m>5)
[1]  7  9 11 13 15 17 19
> m[which(m>5)]
[1]  7  9 11 13 15 17 19

apply

 

[展开全文]

外部数据的导入

——————————————————

txt

csv

excel

spss

sql

1.使用R自带的数据集

data()

CO2

 

2.读取外部数据

read.table()

header属性:第一行含不含标题,默认是F,T第一行作为列名

stringAsFactors 默认是将字符变量转成因子变量

R能接受的地址格式:

D:/R/

D:\\R\\

setwd()设置默认路径

getwd()查看默认路径

> getwd()
[1] "D:/rgit/R-Learning"

library(readxl)读取excel

读取sheet2的时候报错

 

 

 

[展开全文]

数据框

————————————————————

矩阵形式,二维关系,每一列都是一个数据类型,每一行是一个观测值。

> d <- data.frame(name = c("张", "王", "李", "赵"),
+                 age = c(10,11,12,13),
+                 height = c(170,181,190,173),
+                 gender = c("m", "f", "f", "m"))
> d
  name age height gender
1   张  10    170      m
2   王  11    181      f
3   李  12    190      f
4   赵  13    173      m

as.data.frame()强制转数据框

数据框的引用:

1.d[1,2]

2.[[]],$

> d[1,2]
[1] 10
> d$name
[1] 张 王 李 赵
Levels: 李 王 张 赵
> d[[1]]
[1] 张 王 李 赵
Levels: 李 王 张 赵
> names(d)
[1] "name"   "age"    "height" "gender"
> rownames(d)
[1] "1" "2" "3" "4"
> colnames(d)
[1] "name"   "age"    "height" "gender"

> d[d$height > 173, ]
  name age height gender
2   王  11    181      f
3   李  12    190      f

> d[d$height == 173, ]
  name age height gender
4   赵  13    173      m

> table(d[4])

f m 
2 2 

> tapply(d[[3]], d[[4]], mean)
    f     m 
185.5 171.5 

attach()函数可以把数据框链接如当前的名字空间

> d$r <- d$height/d$age
> d
  name age height gender        r
1   张  10    170      m 17.00000
2   王  11    181      f 16.45455
3   李  12    190      f 15.83333
4   赵  13    173      m 13.3076

d$r <- NULL

删除一列

 

[展开全文]

矩阵

——————————————————

二维数组 每个单元格数据类型相同

byrow = T 按行排列

A[3, ]  调用第三行

A[, 2] 调用第二列

diag(A)创建对角线是什么的矩阵

cbind 行合并

rbind 列合并(增加列)

定义矩阵 引用矩阵

> b1 <- rbind(a1,a2)
> b1
     [,1] [,2]
[1,]    1    2
[2,]    3    4
[3,]    5    6
[4,]    7    8
> b2 <- cbind(a1,a2)
> b2
     [,1] [,2] [,3] [,4]
[1,]    1    2    5    6
[2,]    3    4    7    8

> b1[1,]
[1] 1 2

> b2[,1]
[1] 1 3

数组

——————————————————

多个下标 类型相同的元素集合

一维=向量

二维=矩阵

> y <- array(1:18,dim = c(2,3,3))
> y
, , 1

     [,1] [,2] [,3]
[1,]    1    3    5
[2,]    2    4    6

, , 2

     [,1] [,2] [,3]
[1,]    7    9   11
[2,]    8   10   12

, , 3

     [,1] [,2] [,3]
[1,]   13   15   17
[2,]   14   16   18

 

列表

———————————————————

列表的元素有下标,元素类型可以是任意。

> x <- c(1,2)
> y <- c("as", "aaaa")
> LST <- list(class = x, sex = y)
> LST
$class
[1] 1 2

$sex
[1] "as"   "aaaa"

 could not find function "LSTlist"

函数不存在,包没下,函数打错了

> m <- list(name = "zs", age = 36, s = c(11,12,13))
> m
$name
[1] "zs"

$age
[1] 36

$s
[1] 11 12 13

> m[[1]]
[1] "zs"
> m[[3]][3]
[1] 13

[[]]取值与该元素类型相同

[]取出的是列表

> m$name
[1] "zs"
> m$age <- 33
> m$age
[1] 33

因子

——————————————————

> f <- factor(c(1,2,1,2), levels = c(1,2), labels = c("f","m"))
> f
[1] f m f m
Levels: f m

levels(f)

table()求频数

 

[展开全文]

数据类型:

数值型

字符型

逻辑性

复数型

R里区分大小写

is.na(x)返回x是否含有缺失值

任何数与缺失值的运算仍为缺失值

判断数据类型 is

转换数据类型 as

查看数据类型 mode(x)

> x3
[1] 3
> mode(x3)
[1] "numeric"

重点知识:

向量

数组

列表

因子

矩阵

数据框

 

1.向量

——————————————————

有相同基本类型元素的序列,一维数组

访问向量元素x[4]

x[-3] 排除第3个

x[x > 10] 逻辑嵌套在取值里

> a <- c(1:3)
> a[2]
[1] 2

ctrl_+shift+c 添加注释

> a[a>2]
[1] 3

which.min()

which.max() 返回最大值

> a[which.max(a)]
[1] 3

append(x, 7 , after = 2) ##在第二个数据后面追加7

> append(a, 7, after = 1)
[1] 1 7 2 3

反排序rev()

替换 replace(x, list, values)

> b <- append(a, 7, after = 1)
> replace(b, c(1,3),c(9,9))
[1] 9 7 9 3

连接

paste(.sep=)

> paste("k", 1:3, .sep = "")
[1] "k 1 " "k 2 " "k 3 "

怎么把软件学好,每一个程序都跑一次。

rep(c(1:3), 4)重复

rep(c(1:3, each = 4))

 

 

[展开全文]

查看包

t1 <- .package

 

查看已安装的包

t2 <- installed.packages()

sessionInfo()

安装包

install.packages("arules")

加载包

library(arules)

查看帮助

?glm

help(options)

?factor

ctrl+回车 调取帮助

帮助详解:

1.description:告诉函数是干嘛的

2.usage:用法,里面有参数

3.arguments:每个参数的含义是什么,应该怎么设置

4.detail:详细的细节

5.value:函数的输出结果,可以调用

6.reference:参考了什么资料

7.example:例子

 

[展开全文]

课程特色

视频(17)
下载资料(2)
作业(1)