本文仅为学习记录,课程来自coursera《R Programming》
1.获取帮助
- 搜索引擎搜索:软件名+报错信息
- 查看软件帮助
- 阅读源代码解惑
- 去软件相关论坛寻找答案
- 请教一个比你厉害的朋友
- 写信请求帮助(地址:r-help@r-project.org,描述问题时应该详细)
如果以上都不能解决问题,思考以下问题:
1、哪个步骤出错了?
2、期望得到的输出是什么?
3、有什么替代的方法吗?
······
2. 数据类型
- 字符型 (character)
- 数值型 (numeric)包括实数和小数
1 表示的一个数值对象,如果在1后加个 L,如1L,那么就可以得到一个整型数据 - 整型 (integer)
- 复数型 (complex number)
- 逻辑型 (logical) (TRUE/FALSE)
如果创建的数据包含两个不同类型数据,那么向量会强制转化为两者最低级公共类型。character<numeric<logical
3. as系列
不同变量之间的转化
4. list列表
列表是有索引的,列表的元素由双层中括号[[ ]]包围 而其他向量只有一个中括号[] 这是把列表和其他类型的向量区分开的一种方法
x<-list(1,'a',True,4+5i)
5. 矩阵
具有维度属性的向量
1.dim(查询矩阵维度)
my_date<-matrix(1:20,nrow=4,ncol=5)
dim(my_date)
[1] 4 5
2.连接(rbind/cbind)
>my_date2('d','dd','ww','ssd')
> cbind(my_date,my_date2)
my_date2
[1,] "1" "5" "9" "13" "17" "d"
[2,] "2" "6" "10" "14" "18" "dd"
[3,] "3" "7" "11" "15" "19" "ww"
[4,] "4" "8" "12" "16" "20" "ssd"
6. 因子(factor)
一种特殊的向量类型,通常用来记录分类数据,如男/女。(因子的重要性在于 它们在建模函数如 lm() 和 glm() 中会受到特别对待,这些函数主要用来拟合线性模型)
1.levels
> f1<-factor(c('yes','yes','no','no','yes'))
> f1
[1] yes yes no no yes
Levels: no yes
> levels(f1)
[1] "no" "yes"
如果想改变level顺序
> f1<-factor(c('yes','yes','no','no','yes'),levels=c('yes','no'))
> f1
[1] yes yes no no yes
Levels: yes no
2.table
> table(f1)
f1
no yes
2 3
3.unclass
> unclass(f1)
[1] 2 2 1 1 2
attr(,"levels")
[1] "no" "yes"
4.labels
> f1<-factor(c('yes','yes','no','no','yes'),levels=c('yes','no'),labels = c('男','女'))
> f1
[1] 男 男 女 女 男
Levels: 男 女
- 缺失数据
NA :缺失数据值
NAN:无意义的值,如0/0
NA也有class,例如integer NA,character NA
NAN属于NA,但反之不然
>x<-c(1,2,NA,10,3)
>is.na(x)
[1] FALSE FALSE TRUE FALSE FALSE
7.数据框
用来储存表格数据,每一列可以是不同的类型,每一行都有名字(row.names),可以调用read.table 或者read.csv来创建数据框,也可以调用data.matrix()函数来把数据框转化为一个矩阵,也可以用data.frame来创建一个数据框。