learning_R

#R的学习笔记05

2021-01-26  本文已影响0人  ks_c

2021-1-26整理

#----------------------数据读取--------
read.table('name.txt',header = F/T,sep = ',',nrows= , col.names = )
#读取txt文件,header:是否把首行当作表头,sep:分隔符
#nrows:最大读取行数,col.names:列名(header=T时col.name将其替换)
#incomplete final line found by readTableHeader on 'data-1.txt'
#try to加一行空格when u see such a waring. 
#Error in make.names(col.names, unique = TRUE) : 多字节字符串2有错
#把中文表头改为英文

matrix(data= , nrow= , ncol= , byrow = F)#no need to tap 'nrow'&'ncol'

summary()#总结
str()#the same as above
dim()#查看维度,数据有几行几列
colSums()#列求和




#--------额外的知识--------
dat <- c('1','2','3','4')
dim(dat) <- c(2,2)
apply(dat,2,as.numeric)#文件名。1-行、2-列。as.numberic:转化为数值型

dat1 <- c(1,2,3,4)
dat2 <- c(2,3,4,5)
dim(dat1) <- c(2,2)
dim(dat2) <- c(2,2)
rbind(dat1,dat2)#在data1后边加上data2
cbind(dat1,dat2)#same as above

for (i in 1:n) {
  x <- 1
}
cat()#catenate:连接字符串,可以直接显示连接后的函数


#-----


#----------12/23----------
seq(from=1,to= 10,by=2)
seq(from=0,to= 10,length.out =5)

rep(1,5)
x <- c(1,2,3)
rep(x,each=2)
rep(x,each=2,time,times=2)


#-----

#-----12/28-----
length()#向量长度
x <- c(1,2,3,4,5)
x[-1]#不输出第几个元素
x[c(1,4,2,1)]
x[c(T,F,F,T)]#输出逻辑值为真的数值,多余的逻辑值会输出NA
x[c(T,T,T,F,F,T)]

#   %in%   判断字符是否在这个向量中
z <- c("one","two","three")
"one"%in%z

k <- z %in% c("one","two","three","four")
z[k]

#命名
y <- c(1,2,3,4)
names(y) <- c("a","b","c","d")
y["a"]

#添加向量
x[10] <-1 
x

x[c(4,5,6)] <- c(12,23,45)
x

x1 <- append(x = x,values = 99,after = 2)#在第2个元素后边添加
x
x1
#修改向量
x[2] <- 98
x

#删除向量
rm(a)##删除整个向量
y1 <- y[-c(1:3)]
y1

T


#-----

#-----1/2-----
#for the second day of new year
a <- mtcars
name_abbr <- substr(names(a),1,2)#substr(x= , start= , stop=  )
names(a) <- toupper(name_abbr)

a <- 'https://www.bilibili.com/video/BV1WK411H7ec?from=search&seid=9742757146822120287'
#-----



#-----

x <- c(342,61)
chisq.test(x)


#------字符串-----

#匹配单个列出的字符[···]
#排除性字符,匹配单个未列出的字符 [^···]
#匹配任意字母、数字、下划线 \w
#匹配任意空白字符\s
#匹配任意数字\d{2}:前面数字出现连续两次,
#匹配单词的开始或结束 \b
#转义字符 \char
#一些函数
nchar('hello world')#count the number of this character,including the space
length(c('hello','world','fuck u'))#count number of elements
a <- c('hello')
b <- c(1,2,3)
c <- c('world')
m <- paste(a,c)
paste('everybody','will','love','u',sep = '-')
length(m)
nchar(m)
paste(b,'is cool')
b1 <- c('a','b','c')
paste(b1,'is cool')
m.n <- month.name
m.a <- substr(m.n,start=1,stop=3)#提取字符串,从第1个到底3个

toupper(m.a)
tolower(m.a)
sub()
gsub()
grep()
x <- c('b','A+','AC')
grep('A+',x,fixed = T)#return 所要搜索的字符串的下标
grep('A+',x,fixed = F)

match("AC",x)#return 所要搜索的字符串的位置
b %in% x#向量b知否在x中(b <- c(1,2,)),依次匹配b中元素
"b"%in%x#字符b是否在x中

path <- '/users/local/bin/R'
strsplit(path,'/')#所得到的结果是list

face <-c('spandes','clubs','hearts','diamonds')
suit <- (1:13)
outer(suit,face,FUN = paste,sep='/')

#-----日期数据--1/25----
#1.描述已有日期内发生了什么
#2.预测未来将会发生什么
sunspots#太阳黑子数目
presidents#美国总统支持率
class(presidents)#ts代表时间序列
typeof(presidents)
airquality#空气质量
class(airquality)#data.frame
airmiles
class(airmiles)
Sys.Date()#show today
class(Sys.Date())#date

a <- '2021-01-25'
as.Date(a,format = "%Y-%m-%d")#Y is cap,m、d isnot
strftime
day <- seq(as.Date('2017-01-01'),as.Date('2020-01-25'),by=60)

sales <- round(runif(48, min=50, max=100))
ts(sales,start = c(2010,5),end=c(2014,4),frequency =1)#1:year,4:season,12:month
上一篇下一篇

猜你喜欢

热点阅读