向量是可以包含多种同一类型元素的对象
console中命令是一次性的不可重复利用
新建文件:保存和重复利用代码
注释用#
创建函数可以右键看到提示
vector:
创建方法1
第一个参数是这个向量里面元素的类型,第二个参数是向量包含的原色个数,长度如是10个
脚本文件中要选择这句话,点击右上角run
创建方法2
变量<-赋值1:4,即从一到四
创建方法3
使用c函数,需要在这个函数中输入你需要的在这个向量中的每一个元素的内容
注意:
如果向量中每一个量的元素的类型不一样,r会强制转换成同一类型的变量
上面的例子就是r把3个不同类型的元素类型都转换成了字符类型的元素
可以自我强制转换元素的类型,添加as.,如把字符型转换成数字型
强制转换的函数:
as.numeric(参数)
as.logical()
as.character()
以此类推
但是有可能会看到warning信息,因为r有可能不知道怎么把字符型转换成数字型函数,就会把无法转换的值用NA来替代
此外,记得可以用class查询向量的类型
对象的属性可以包含名称,向量中的每一个元素都是可以有名称的
names(向量x1)<-c(“a”,。。。。)
设置abcd四个是因为向量x1中有4个元素
上图可见,第一个元素的名称是a,第二个元素的名称是B,......
向量(vector):只能包含同一类型的对象
创建向量的方法:1. 定义 x <- vector(数据类型,数据长度)
2. x1 <- 1:4 #创建整型向量1-4
3. x3 <- c(向量的元素) # 例如构建向量x3<-c(1,2)
#对于向量中元素类型不同的情况,R语言中会自动强制转化
例如x3 <- c(TRUE,10,"a") 会转换为("TRUE","10","a")
as.numeric(x) #将x转换为数值型向量
as.logical(x) #将x转换为逻辑向量
as.character(x) #将x转换为字符型向量
names(x1) <- c("a","b","c") #给向量x1进行命名,“a”为第一个向量元
素的名字,依次类推
2-2向量
新建文件保存代码
向量(vector):只能包含同一类型的对象
注释的符号为#
如何生成一个指定长度的空向量
新建一个文件后 输入代码 选中代码点击右上角 Run运行
例:x<-vector("character(向量中元素的类型)",length=10(向量中包含的元素个数))
例:x1<-1:4 (创建了一个1到4的向量)
例:x2<-c(1,2,3,4)(用c函数来创建) 如果c中元素为不同类型,R会强制把元素转化为同一类型。
命令转化:例如:x4<-c("a","b","c") as.numeric(x4) 即把字符型转换成数值型
属性相关:
names(x1) <-c("a","b","c","d")给x1的元素添加名称
vector()
c()
as.
向量
只能包含同一类型的对象
创建向量
vector()
c()
as.logical()/as.numeric()/as.character()
创建向量的。。。
向量 类型转换
向量(vector):只能包含同一类型的对象
创建向量的方法:1. 定义 x <- vector(数据类型,数据长度)
2. x1 <- 1:4 #创建整型向量1-4
3. x3 <- c(向量的元素) # 例如构建向量x3<-c(1,2)
#对于向量中元素类型不同的情况,R语言中会自动强制转化
例如x3 <- c(TRUE,10,"a") 会转换为("TRUE","10","a")
as.numeric(x) #将x转换为数值型向量
as.logical(x) #将x转换为逻辑向量
as.character(x) #将x转换为字符型向量
names(x1) <- c("a","b","c") #给向量x1进行命名,“a”为第一个向量元
素的名字,依次类推
x1<- 1:4(:表示从1到4)
x2<- c(1,2,3,4)---第三种创建向量的方法,输入向量中的内容
向量中输入内容与之前的内容类型不一致,会强制转化为同类型
强制转换类型:as.数据类型
————eg:as.numberic(x2)
给向量内容字段赋名称:
name(x1)<-("a","b","c","d")
数据结构:
向量(vector)
——只能包含同一类型的对象
x<-vector("character",length = 10)
创建指定长度的空向量
创建向量
x<-vector(“character”,length=)
x1<-1:4
x2<-c(1,2,3,4)
若向量中的元素不是同一类型,计算机会自动转换为同一类型
也可以用强制转换as.numeric() as.logical() as.character()转换后会形成缺失值(NA)
> y <- "hello world"> y[1] "hello world"> class(y)[1] "character"> y <- TRUE> y[1] TRUE> class(y)[1] "logical"> y <- 1+iError: object 'i' not found> y <- 1+2i> y[1] 1+2i> class(y)[1] "complex"> y <- 1-iError: object 'i' not found> y <- i+1Error: object 'i' not found> length(y)[1] 1> m <- 1+2i> length(m)[1] 1> x <- vector("number",length = 10)Error in vector("number", length = 10) : vector: cannot make a vector of mode 'number'.> x <- vector("numeric",length = 10)> x [1] 0 0 0 0 0 0 0 0 0 0> x <- vector("character",length = 10)> x [1] "" "" "" "" "" "" "" "" "" ""> x <- vector("character",length = 10)> x <- vector("character",length = 10)> x <- vector("character",length = 10)> x <- vector("character",length = 10)> x <- 1:16> x [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16> x <- 1:100> x [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 [30] 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 [59] 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 [88] 88 89 90 91 92 93 94 95 96 97 98 99 100> x <- c(1,2,3,4)> t <- c(1,2,3)> t[1] 1 2 3> as.numeric(t)[1] 1 2 3> u <- c(1,3,5)> as.numeric(u)[1] 1 3 5> as.character(u)[1] "1" "3" "5"> u <- c(1,3,5)> #as.numeric(u)> as.character(u)[1] "1" "3" "5"> v <- c(100,200)> as.character(v)[1] "100" "200"> as.logical(v)[1] TRUE TRUE> b <- c(0,1,0)> as.logical(b)[1] FALSE TRUE FALSE> class(b)[1] "numeric"> class(v)[1] "numeric"> class(as.character(v))[1] "character"> names(b) <- c("上","中","下")> b上 中 下 0 1 0 > names(v) <- c("一班成绩","二班成绩")> v一班成绩 二班成绩 100 200 |
> |
向量,只能包含同一类型的对象,可以包含多个数据元素
注释的符号#,脚本文件中的命令需要点击Run才能运行,1:4中的冒号代表1到4,即1234
NA表示缺失值,强制转换(as.类型(参数))的后果可能会引入NA
# Vector
#需要新建一个文件然后保存,这样的话代码就能够被重复利用
x <- vector("character", length = 10)
#定义一个长度为10的字符型向量x
x1 <- 1:4
#把1-4的值赋给向量x
x2 <- c(1,2,3,4)
#直接给向量x赋值
x3 <- c(TRUE, 10, "a")
#向量内包含不同类型的元素,强制转换成同一类元素类型,如右所示本例转为了字符型。
as.numeric(x3)#同理可强制转换成别的类型
#可进行强制转换,但是可能会引入缺失值:"NA",上面代码运行后命令台的显示结果是:
#> as.numeric(x3) //把向量x3强制转换为数值型
#[1] NA 10 NA (用缺失值代替不知道该如果转换的元素值)
#Warning message:
#NAs introduced by coercion
class(x1)#查看x1属性的类型是什么
#运行后命令台的结果是“[1] "integer"”,说明x1向量是整型的。
names(x1) <- c("a","b","c","d")#给x1中的每个元素起个名字
x1 #输出x1
#运行结果是:
# a b c d
# 1 2 3 4
# Vector
#需要新建一个文件然后保存,这样的话代码就能够被重复利用
x <- vector("character", length = 10)
#定义一个长度为10的字符型向量x
x1 <- 1:4
#把1-4的值赋给向量x
x2 <- c(1,2,3,4)
#直接给向量x赋值
x3 <- c(TRUE, 10, "a")
#向量内包含不同类型的元素,强制转换成同一类元素类型,如右所示本例转为了字符型。
as.numeric(x3)#同理可强制转换成别的类型
#可进行强制转换,但是可能会引入缺失值:"NA",上面代码运行后命令台的显示结果是:
#> as.numeric(x3) //把向量x3强制转换为数值型
#[1] NA 10 NA (用缺失值代替不知道该如果转换的元素值)
#Warning message:
#NAs introduced by coercion
向量只能包含同一类型的对象;
创建向量可用用vector()函数,vector("类型", 长度);
创建向量还可以用c()函数,需要输入每一个元素;
用as.xxx()函数进行类型强制转换;
用names()函数给向量元素命名;
数据结构-向量
C()函数会将三个不同类型的数全都转换成character类型
如 x3 <- c(TRUE,10,"a")
x3 为 chr [1:3] "TRUE" "10" "a"
class查看类型
创建向量vector: 都是同一类型的对象,可以强制转换。
new profile:
x<-vector("character", length=10)记得run
x<-c(1,2,3,4)
x1<-1:4
as.logical()/numeric()/character()
name()
向量的每一个元素都是可以有名称
声明 x1向量 : x1<c(1,2,3,4)
给向量的每一个元素命名:
names(x1) <-c("a","b","c","d")
x4<-c("1","2","3")
as.numeric(x4) 向量类型转换为数值类型
注释符号: #
R数据结构
向量(vector):只能包含同一类型的对象
创建向量:
方法一:x <- vector("character", length = 10) #生成一个空向量,参数1:指定数据类型,参数2:指定向量长度
方法二:y <- 1 : 4 #生成一个包含1至4四个数字的向量
方法三:z <- c(1, 2, 3, 4) #使用函数c,参数:想要添加的元素
※如果传入的元素类型不一样,R会强制转换为相同类型。如: vec <- c(TRUE, 10, "a"),会生成向量char[1:3] "TRUE" "10" "a"
其他:(1) RStudio中,选中脚本文件中的某行,点击Run按钮,可直接执行该行代码。
(2) 强制类型转换:as.type(var) #将var转换为type类型,如as.numericx(), as.logical(y), as.character(z)
(3) 给向量元素赋名称:names(var) <- c("a", "b", "c", "d")
向量:只包含同一类型的对象
创建向量:vector();c();as.logical();as.character()
创建向量
verctor()
c()
强制转换类型:
as.logical()
as.numeric
as.character()
几种强制转换函数
x1<-c("a","b","c")#假定原始向量x1。
as.numeric(x1)#将x1向量强制转换为数值型向量;
as.character(x1)#将x1向量强制转换为字符型向量;
as.logical(x1)#将x1向量强制转换为逻辑型向量;
integer整数
class()#查看向量的类型
names()#函数可以给向量添加名称;names(x1)<-c(1,2,3)