ls()查看当前R内存中的数据对象
> data <- c(1,2,4,5)
> strings <- "I like R"
> ls()
[1] "data" "strings"
rm()删除内存中的数据对象
> rm(data)
> ls()
[1] "strings"
R中区分大小写
a <- 1
A <- 2
会产生两个数据对象
length()返回长度
> v <- c(4,7,23,56,32)
> length(v)
[1] 5
mode()返回类型
> mode(v)
[1] "numeric"
seq()创建等差序列
> x <- seq(1,10,2) # 2为步长
> x
[1] 1 3 5 7 9
rep()创建重复序列
> rep(1:3, 3)
[1] 1 2 3 1 2 3 1 2 3
rnorm()生成正态分布的随机数值
> rnorm(6,mean=6, sd=2)
[1] 7.305837 9.610760 5.246849 5.629409 1.948709 8.719698
x[条件语句]返回x向量中符合条件语句的元素
> x <- c(0,-3,4,-1,45,98,-12)
> x[x>0]
[1] 4 45 98
> x[-5] # 将第5个元素去掉
[1] 0 -3 4 -1 98 -12
> x[-(1:3)] # 将第1到3个元素去掉
[1] -1 45 98 -12
列表元素
> mylist <- list(stud.id=1234,
+ stud.name="Tom",
+ stud.marks=c(12,3,14,25,16)
+ )
> mylist
$stud.id
[1] 1234
$stud.name
[1] "Tom"
$stud.marks
[1] 12 3 14 25 16
> a <- mylist[1] # 列表使用单括号返回值为列表类型
> a
$stud.id
[1] 1234
> mode(a)
[1] "list"
> b <- mylist[[1]] # 列表使用双括号返回值为列表中该元素的类型
> b
[1] 1234
> mode(b)
[1] "numeric"
names()返回列表中的各个元素名称
> names(mylist)
[1] "stud.id" "stud.name" "stud.marks"
用names() <- c()来更改列表的元素名称
> names(mylist) <- c("id", "name", "marks")
> mylist
$id
[1] 1234
$name
[1] "Tom"
$marks
[1] 12 3 14 25 16
列表中添加元素
> mylist$parents <- c("Mother","Father")
> mylist
$id
[1] 1234
$name
[1] "Tom"
$marks
[1] 12 3 14 25 16
$parents
[1] "Mother" "Father"
> mylist[-4] # 去掉mylist的第四个成分
$id
[1] 1234
$name
[1] "Tom"
$marks
[1] 12 3 14 25 16
合并列表
> other <- list(age=19, sex="male")
> lst <- c(mylist, other)
> lst
$id
[1] 1234
$name
[1] "Tom"
$marks
[1] 12 3 14 25 16
$parents
[1] "Mother" "Father"
$age
[1] 19
$sex
[1] "male"
将列表元素转换成元素类型unlist()
> unlist(lst)
id name marks1 marks2 marks3 marks4 marks5 parents1
"1234" "Tom" "12" "3" "14" "25" "16" "Mother"
parents2 age sex
"Father" "19" "male"
> mode(unlist(lst))
[1] "character"