R语言基本函数及参数 101:150
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
R语言基本函数及参数 101:150 101. 数据集取子集
example:
> newdata<-leadership[,c(5:9)]
102. 剔除变量
example:
> my<-names(leadership)%in%c("q3","q4")
> my
[1] FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUE FALSE
> newdata<-leadership[!my]
> newdata
manager date gender age q1 q2 q5
1 1 10/24/08 M 3
2 5 4 5
2 2 10/28/08 F 45
3 5 5
3 3 10/1/08 F 25 3 5 2
4 4 10/12/08 M 39 3 3 NA
5 5 5/1/09 F 99 2 2 1
或,在知道q3和q4是第8个和第9个变量的情况下,可以:
> newdata<-leadership[c(-8,-9)]
或
> newdata$q1<-newdata$q2<-NULL
103. 选入观测
example:
> newdata <- leadership[1:3,] #选择第1行到第3行作为观测值
> newdata <- leadership[leadership$gender=="M" &
+ leadership$age > 30,] #选择所有30岁以上的男性
example:
> leadership$date<-as.Date(leadership$date,"%m/%d/%y")
> startdate <- as.Date("2009-01-01")
> enddate <- as.Date("2009-10-31")
> newdata <- leadership[which(leadership$date >= startdate &
+ leadership$date <= enddate),]
> newdata
manager date gender age q1 q2 q3 q4 q5
5 5 2009-05-01 F 99 2 2 1 2 1
104. 选取子集函数
example:
> newdata <- subset(leadership, age >= 35 | age < 24,
+ select=c(q1, q2, q3, q4))
> newdata #选择所有age值大于等于35或age值小于24的行,保留了变量q1到q4
q1 q2 q3 q4
2 3 5 2 5
4 3 3 4 NA
5 2 2 1 2
example:
> newdata <- subset(leadership, gender=="M" & age > 25,
+ select=gender:q4)
> newdata #选择所有25岁以上的男性,并保留了变量gender到q4之间所有的列
gender age q1 q2 q3 q4
1 M 3
2 5 4 5 5
4 M 39 3 3 4 NA
105. sample(),随机抽样函数(有放回或无放回)
Usage:sample(x, size, replace = FALSE, prob = NULL)
example:
> mysample<-leadership[sample(1:nrow(leadership),3,replace=FALSE)]
> mysample
date gender q1
1 2008-10-24 M 5
2 2008-10-28 F 3
3 2008-10-01 F 3
4 2008-10-12 M 3
5 2009-05-01 F 2
Ps:sample()函数中的第一个参数是一个由要从中抽样的元素组成的向量,上例的向量是1到数据框中观测的数量;第二个是要抽取的元素的数量;第三个参数表示无放回抽样
example:
> mysample<-leadership[sample(1:nrow(leadership),3,replace=TRUE),]
> mysample
manager date gender age q1 q2 q3 q4 q5
1 1 2008-10-24 M 3
2 5 4 5 5 5
5 5 2009-05-01 F 99 2 2 1 2 1
5.1 5 2009-05-01 F 99 2 2 1 2 1
106. abs(x),求x的绝对值
107. sqrt(x),求x的平方根
108. ceiling(x),不小于x的最小整数,如ceiling(3.475)返回值为4
109. floor(x),不大于x的最大整数,如floor(3.475)返回值为3
110. trunc(x),向0的方向截取的x中的整数部分,如trunc(5.99)返回值为5
111. round(x,digits=n),将x舍入为指定位的小数,如round(3.475,digits=2)返回值为3.48
112. signif(x,digits=n),将x舍入为指定的有效数字位数,如signif(3.475,digits=2)返回值为3.5
113. cos(x),求x的余弦
114. sin(x),求x的正弦
115. tan(x),求x的正切
116. acos(x),求x的反余弦
117. asin(x),求x的反正弦
118. atan(x),求x的反正切
119. cosh(x),求x的双曲余弦
120. sinh(x),求x的双曲正弦
121. tanh(x),求x的双曲正切
122. acosh(x),求x的反双曲余弦
123. asinh(x),求x的反双曲正弦
124. atanh(x),求x的反双曲正切
125. log(x,base=n),对x取以n为底数的对数
126. log(x),以自然数为底的对数
127. exp(x),指数函数
128. mean(x),求x的平均数
Usage:mean(x, trim = ?, na.rm = FALSE, ...)
Ps:x表示对象;trim表示丢弃最大?%和最小?%的数据;na.rm=TRUE表示丢弃缺失值
129. median(x),求x的中位数
Usage:median(x, na.rm = FALSE)
130. sd(x),求x的标准差
Usage:sd(x, na.rm = FALSE)
131. var(x),求x的方差
Usage:var(x, y = NULL, na.rm = FALSE, use)
132. mad(x),求x的绝对中位差,如mad(c(1,2,3,4))返回值为1.48
133. quantile(x,probs),求分位数,其中x为待求分位数的数值型向量,probs为一个由[0,1]之间的概率组成的数值型向量
example:
> x<-c(1,2,3,4)
> y<-quantile(x,c(0.3,0.84))
> y
30% 84%
1.90 3.52
134. range(x),求值域,如range(x)返回值为c(1,4)
135. sum(x),求和
136. diff(x,lag=n),滞后差分,lag用以指定滞后几项,默认的lag值为1,如x<-c(1,5,23,29),diff(x)返回值为c(4,18,6)
137. min(x),求x的最小值
138. max(x),求x的最大值
139. scale(x,center=TRUE,scale=TRUE),为数据对象x按列进行中心化(center=TRUE)或标准化(center=TRUE,scale=TRUE)140. 概率函数中第一个字母,d=密度函数(density);p=分布函数(distribution function);q=分位数函数(quantile function);r=生成随机数函数。
141. 常见的概率分布函数