R语言学习笔记2:基本数据管理

一、创建新变量

        创建一个新的变量,归入数据

mydata<-data.frame(x1=c(2,2,6,4),x2=c(3,4,2,8))     #构建数据

#1
mydata$sumx<-mydata$x1+mydata$x2
mydata$means<-(mydata$x1+mydata$x2)/2

#2
attach(mydata)
mydata$sumx<-x1+x2
detach(mydata)

#3
mydata<-transform(mydata,
                  sumx=x1+x2,
                  means=(x1+x2)/2)

二、变量的重编码

==严格等于
!=不等于
!x非x
x | yx或y
x & yx和y

       99岁为缺失值,定为NA

variable[condition]<-expression     将只在condition的值为TRUE时执行赋值

data$age[data$age == 99] <-NA              #年龄严格等于99为空
data$age[data$age > 75] <-Elder            
data$age[data$age >=55 & data$age <= 75] <-Middle Aged

       还可以写成下面形式,首先我们创建了agecat变量,并将每一行设定为缺失值。再根据剩余语句执行重编码。

data<-within(data,{
  agecat<-NA
  agecat[age>75]                  <-"Elder"
  agecat[age >= 55 & age <= 75]   <-"Middle Aged"})

 三、变量重命名

  fix(data)        #调用fix函数,在表格中进行更改

四、缺失值

      缺失值以NA表示,不可能出现的值用NaN来表示。

      函数is.na()允许检测缺失值是否存在,表现为TRUE和FALSE。

      缺失值不可被比较,即x == NA 永远不会出现FALSE

y<-c(1,2,3,NA)
is.na(y)               

(一)在分析中排除缺失值

x<-c(1,2,NA,3)
y<-x[1]+x[2]+x[3]+x[4]       #由于x3是缺失值,所以y和z也是缺失值NA
z<-sum(x)

 大部分数值函数都拥有一个na.rm=TRUE选项,可以在计算之前移除缺失值,再进行计算。

x<-c(1,2,NA,3)
y<-sum(x,na.rm=TURE)

  这里y=6.

  也可以通过函数na.omit()移除所有含有缺失数值的行。

newdata<-na.omit(data)

 五、日期值

六、数据排序

七、合并

(一)添加列

total<-merge(dataA,dataB,by="ID")                 #通过共同变量ID联结
total<-merge(dataA,dataB,by=c("ID","country"))    #通过共同变量ID,country联结

total<-cbind(dataA,dataB)           #横向合并,无公共索引。要求相同行数且以相同顺序排序

(二)添加行

 total<-rbind(dataA,dataB)

拥有相同变量,顺序不一定相同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值