統計分析與R軟件-chapter2-2
阿新 • • 發佈:2018-03-01
元素 5.6 2.2.3 zhang labs date() 賦值 line max
2.2 數字、字符與向量
2.2.1 向量
1.向量的賦值
x<-c(10.4,5.6,3.1,6.4,21.7)
2.向量的運算
x<-c(-1,0,2);y<-c(3,8,2)
v<-2*x+y+1
v
x*y
x/y
x^2
y^x
5%/%3
5%%3
exp(x)
sqrt(y)
sqrt(-2)
sqrt(-2+0i)
x<-c(10,6,4,7,8)
3.與向量有關的函數
min(x) max(x) range(x) which.min(x) which.max(x) sum(x) prod(x) median(x) sort(x) var(x)
2.2.2 產生有規律的序列
1.等差數列
2.312:6
4:7.6
2*1:15
2.等間隔函數
seq(-5,5,by=.2)
seq(10,-5,2)
seq(length=5,from=-5,by=.2)
3.重復函數
x<-c(1,4,6.25);x
rep(x,times=3)
2.2.3 邏輯向量
x<-1:7
l<- x>3
z<- c(TRUE,FALSE,F,T);z
all(c(1,2,3,4,5,6,7)>3)
any(c(1,2,3,4,5,6,7)>3)
2.2.4 缺失數據
z<- c(1:3,NA);z ind<-is.na(z);ind z[is.na(z)]<-0;z x<-c(0/1,0/0,1/0,NA);x is.nan(x) is.finite(x) is.infinite(x) is.na(x)
在x的四個分量中,0/1為0,只有在is.finite的檢測下為真,其余均為假。0/0為不確定,但對函數is.nan和is.na的檢測下均為真,這是因為不確定數據也認為是缺失數據。1/0為無窮,因此只在is.infinite檢測下為真。NA為缺失數據,只有在is.na檢測下為真,因為缺失數據並不是不確定數據,所以在is.nan檢測下仍為假。
x[is.nan(x)]<-0;x
2.2.5 字符型向量
y<- c("er","sdf","eir","jk","dim") y paste("My","Job") labs<-paste("X",1:6,sep = "");labs paste("result.", 1:4,sep = ""); paste(1:10) paste("Today is",date()) date() paste(c(‘a‘,‘b‘),collapse = ‘.‘)
2.2.6 復數向量
x<-seq(-pi,pi,by=pi/10)
y<-sin(x)
z<-complex(re=x,im=y)
plot(z)
lines(z)
Re()計算復數實部,Im()計算復數虛部,Mod()計算復數的模,Arg()計算復數的幅角
2.2.7 向量下標運算
x<- c(1,4,7)
x[2]
(c(1,3,5)+5)[2]
x[2]<-125;x
x[c(1,3)]<-c(144,169);x
1.邏輯向量
x<-c(1,4,7)
x<5
x[x<5]
z<- c(-1,1:3,NA)
z[is.na(z)]<-0
z
z<-c(-1,1:3,NA)
y<-z[!is.na(z)];y
(z+1)[(!is.na(z))&z>0]->x;x
y<-numeric(length(x))
y[x<0]<-1-x[x<0]
y[x>=0]<-1+x[x>=0]
x<- -10:10
plot(x,y)
2.下標的正整數運算
v<- 10:20
v[c(1,3,5,9)]
v[1:5]
v[c(1,2,3,2,1)]
c("a","b","c")[rep(c(2,1,3),times=3)]
3.下標的負整數運算,表示扣除相應的元素
v[-(1:5)]
4.取字符型值的下標向量
ages<- c(Li=33,Zhang=29,Liu=18)
ages
ages[1]
ages["Li"]
fruit<- c(5,10,1,20);fruit
names(fruit)<- c("orange","banana","apple","peach")
fruit
統計分析與R軟件-chapter2-2