R语言学习(二)

1.复数的向量:用complex()函数生成复数向量

EX:

> x<-seq(-pi,pi,by=pi/10)%x的值

> y<-sin(x)%y值
> z<-complex(re=x,im=y)%re为实部,im为复部

> plot(z);lines(z)%绘制图形

运行如下:

2.向量的下标运算

R软件提供了十分灵活的访问向量元素和向量子集的功能,x向量的某一个元素可以用x[i]格式访问

EX:

> x<-c(1,4,7)
> x[2]
[1] 4
> (c(1,3,5)+5)[2]
[1] 8

可以单独改变一个元素的值

> x[2]<-125
> x
[1] 1 125 7
> x[c(1,3)]<-c(144,169)
> x
[1] 144 125 169

3.逻辑向量

v和x等长的逻辑向量,x[v]表示取出所有v为真值的元素,Ex:

> x<-c(1,4,7)
> x<5
[1] TRUE TRUE FALSE
> x[x<5]
[1] 1 4

可以将向量缺失数据赋为0

EX:

> z<-c(-1,1:3,NA)
> z[is.na(z)]<-0
> z
[1] -1 1 2 3 0

可以将向量中非缺失数据赋给另一个向量

EX:

> y<-z[!is.na(z)]
> y
[1] -1 1 2 3

做相应的运算

> (z+1)[(!is.na(z))&z>0]->x
> x
[1] 2 3 4

4.下标的正整数运算

v为一个向量,下标取值在1到length(v)之间,取值允许重复,EX:

v<-10:20

v[c(1,3,5,9)]

[1] 10 12  14 18

5.下标的负整数运算

V为一个向量,下标取值在-lenght()到-1之间,EX:

> v<-10:20
> v[-(1:5)]
[1] 15 16 17 18 19 20

表示扣除相应的元素

6.取字符型值的小标运算

> ages<-c(Li=33,Zhang=29,Liu=18)
> ages
Li Zhang Liu
33 29 18

> ages["Zhang"]
Zhang
29

可以给向量加上名字

> fruit<-c(5,10,1,20)

> names(fruit)<-c("orange","banana","apple","peach")
> fruit
orange banana apple peach
5 10 1 20

时间: 2024-10-19 03:12:52

R语言学习(二)的相关文章

R语言学习笔记

參考:W.N. Venables, D.M. Smith and the R DCT: Introduction to R -- Notes on R: A Programming Environment for Data Analysis and Graphics,2003. http://bayes.math.montana.edu/Rweb/Rnotes/R.html 前言:关于R 在R的官方教程里是这么给R下注解的:一个数据分析和图形显示的程序设计环境(A system for data

R语言学习笔记2——绘图

R语言提供了非常强大的图形绘制功能.下面来看一个例子: > dose <- c(20, 30, 40, 45, 60)> drugA <- c(16, 20, 27, 40, 60)> drugB <- c(15, 18, 25, 31, 40) > plot(dose, drugA, type="b") > plot(dose, drugB, type="b") 该例中,我们引入了R语言中第一个绘图函数plot.pl

R语言基础(二) 可视化基础

> which.max(apply(x[c("x1","x2","x3")], 1, sum))49 > x$num[which.max(apply(x[c("x1","x2","x3")], 1, sum))][1] 2005138149 > hist(x$x1) > plot(x$x1,x$x2) > table(x$x1) 80 81 82 83 84

R语言学习(5)-字符串和因子

字符串和因子 1.字符串 创建字符串 > c("HELLO","WORLD") [1] "HELLO" "WORLD" 使用paste函数连接字符串 > paste(c("hello","hi"),"world") [1] "hello world" "hi world" > paste(c("hel

R语言学习中的小bug:R中矩阵相乘错误于A %*% B: 需要数值/复数矩阵/矢量参数

遇到了小bug: R中矩阵相乘错误于A %*% B: 需要数值/复数矩阵/矢量参数 看到网上别人的做法,发现了用class(A)和class(B)之后才发现,是因为读入的时候数据的类型不对,A.B的类型并不是matrix,才导致了这个问题. 用as.matrix来变型一下,就OK了. R语言学习中的小bug:R中矩阵相乘错误于A %*% B: 需要数值/复数矩阵/矢量参数,布布扣,bubuko.com

R语言学习(2)

向量矩阵和数组 1.vector函数可以创建指定类型.长度的矢量 (其结果中的值可以是0,FLASE,空字符串) > vector("numeric",5) [1] 0 0 0 0 0 > vector("complex",6) [1] 0+0i 0+0i 0+0i 0+0i 0+0i 0+0i > vector("logical",6) [1] FALSE FALSE FALSE FALSE FALSE FALSE > 

R语言学习(3)

列表和数据框 1.列表 list函数创建列表 > (a_list <- list(c(1,1,2,5,14,42),month.abb,matrix(c(3,-8,1,-3),nrow=2),asin)) [[1]] [1]  1  1  2  5 14 42 [[2]] [1] "Jan" "Feb" "Mar" "Apr" "May" "Jun" "Jul&qu

R语言学习(4)-环境和函数

环境和函数 1.环境 使用new.env函数创建环境 > an_environment <- new.env() 向环境中分配变量与列表相同 > an_environment[["pythag"]] <- c(12,15,20,21) > an_environment$root <- polyroot(c(6,-5,1)) > assign("moonday",weekdays(as.Date("1969/07/2

R语言学习(1)

将R作为科学计算器使用 1.例: > 1:5 + 6:10 [1]  7  9 11 13 15 > c(1,3,5,7,9)+c(2,4,6,8,10) [1]  3  7 11 15 19 > median(2:5) [1] 3.5 > 1:10 / 3 [1] 0.3333333 0.6666667 1.0000000 1.3333333 1.6666667 2.0000000 2.3333333 [8] 2.6666667 3.0000000 3.3333333 >