R介绍入门

数据类型

1.数值型2.字符型3.逻辑型4.复数型5.特殊值

1.数值型

就是数字。

> x<-7
> class(x)
[1] "numeric"

2.字符型

使用单引号或者双引号括起来的就是字符

> x<-"7"
> class(x)
[1] "character"

3.逻辑型

> x<-T#真(T,TRUE)假(F,FALSE)
> class(x)
[1] "logical"
> x<-True
Error: object 'True' not found

4.复数型

> x<- 7+7i
> class(x)
[1] "complex"

5.特殊值

指Inf,NA,NaN
Inf:infinite无穷大的意思,还有-Inf
NA:not available,表示缺失值或者NULL
NaN:计算产生的没意义的结果,not a number

数据结构

1.向量2.矩阵3.数组4.因子5.数据框6.列表

VECTOR

创建vector

days_vector <- c("Monday", "Tuesday", "Wednesday", "Thursday", "Friday")
days_win_vector<-c(1,2,3,4,5)
days_win2_vector<-c(1:5)
days_win3_vector<-1:5

命名

names(days_win_vector)<-days_vector

查看属性

str(days_win_vector)

选取子集

###by number &反选
days_win_vector[1]
days_win_vector[c(1,2)]
days_win_vector[-1]
days_win_vector[-c(1,2)]

###by names
days_win_vector["Monday"]
days_win_vector[c("Monday","Tuesday")]

###by 条件
####布尔值
days_win_vector>3
days_vector!="Monday"

days_win_vector[days_win_vector>3]
subset(days_win_vector,days_win_vector>3)
days_vector[days_vector!="Monday"]
subset(days_vector,days_vector!="Monday")
days_win_vector[days_win_vector>3&days_win_vector<5]

其它操作

###获取向量长度
length(days_win_vector)

###获取均值,最大,最小,和,标准差
mean(days_win_vector)
max(days_win_vector)
min(days_win_vector)
sum(days_win_vector)
sd(days_win_vector)

###
x<-c(1,2,4,3,7,5,4)
sort(x,decreasing = T)
sort(x, decreasing = FALSE)

向量中的强制转换原则

logical

> x<-c(T,T,F,T)
> str(x)
 logi [1:4] TRUE TRUE FALSE TRUE
> x[2]<-2
> x
[1] 1 2 0 1
> str(x)
 num [1:4] 1 2 0 1
> x[1]<-"1"
> str(x)
 chr [1:4] "1" "2" "0" "1"

MATRIX

创建

x<-matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE,
       dimnames = NULL)
       
data<-1:15
cn<-c("a","b","c","d","e")
rn<-c("c1","c2","c3")
mymatrix<-matrix(data = data,nrow = 3,ncol = 5,dimnames = list(rn,cn))

查看属性

str(mymatrix)

选取子集

mymatrix[1,]
mymatrix[,1]
mymatrix[1,c(2,3)]
mymatrix[-1,]

数据框

创建

mydata<-data.frame(col1, col2, col3,...)

x<-c(1, 2, 3)
y<-c("large", "median", "small")
z<-c(NaN, Inf, 5)
mydata<-data.frame(x, y, z)

查看属性

str(mydata)
is.data.frame(mydata)
names(mydata)

选取子集

mydata[1,2]
mydata[1,]
mydata[,2]

mydata$x

总想加点什么

md=mydata
md[,4]<-c(4:6)
mydata$u<-1
mydata$v<-c(4,5,6)
w<-c(9,0,0)
mydata$w<-w

要删的话

mydata$w<-NULL

其他。提取子集方法,重新赋值。

重命名列名

names(mydata)<-c("x","y" ,"h" ,"u", "p")
names(mydata)[names(mydata) == "y"] = c("fff")
names(mydata)[4] = c("a")

任务:

#1.自己创建两个数据框(矩阵,向量),按列按行两种合并。观察并写下笔记
#2.记录整理is.datatype,as.datatype类型函数,写笔记。
#3.查看rnrom()函数,并使用它做一下基础的散点图,直方图,密度图。笔记。
#4.以上都不需要library()其他包。
#5.下次会说明factor,并讲述基础图的做法,以及package的安装方法,如果想看看的话,可以看看这个http://blog.csdn.net/BOOMBOY/article/details/77477181

#快捷键:1.清屏:Ctrl+L  2.执行脚本:Ctrl+R  3.删除当前位置到行尾:Ctrl+K  
#4.删除当前行所有: Ctrl+U   5.复制黏贴正常使用
#6.和linux 相同的  Tab可以补全,上下键调用历史


#有用命令:history()   ls()   rm(list=ls())  help() setwd()  getwd()  help.start()

你可能感兴趣的:(R介绍入门)