R语言实战学习笔记-第四章

2023-03-05 16:57:11   文档大全网     [ 字体: ] [ 阅读: ]

#文档大全网# 导语】以下是®文档大全网的小编为您整理的《R语言实战学习笔记-第四章》,欢迎阅读!
第四章,实战,语言,笔记,学习
第四章 基本数据管理

4.1一个示例

代码:创建一个数据框

> manager<-c1,23,45)

date<-c"10/24/08”,”10/28/08””10/1/08""10/12/08","5/1/09" country<-c("US””US”,"UK”,"UK”,”UK” > gender—c("M”,”F”,”F"”M","F” > age-c32,4525,39,99) q1c5,3332) > q2<c4,5532 q3<c(52,5,41) q4-c(555,NA2) q5-c(55,2NA1

leadershipdata.framemanagerdatecountrygenderage

q1q2,q3q4q5,stringAsFactors=F)

42创建新变量

算术运算符:x%y取余;x/%y取整 代码:创建新变量:

> mydata<data.framex1=c2264)x2=c3,428 方法一:

mydatasum-mydata$x1+mydata$x2

mydata$meanmydata$x1+mydata$x2/2 方法二:

attach(mydata

mydatasumx<x1+x2

mydatamean<x1+x2)/2 > detach(mydata) 方法三:(此方法将运算结果保存在了原始数据表格)

mydata-transformmydata,sumx=x1+x2,meanx=(x1+x2/2 > mydata

43变量的重编码

逻辑运算符:== 严格等于;!= 不等于;x xxy xy;xy xy

isTRUEx) 测试x是否为真

代码:将leadership表的连续型年龄变量重编码为类别型变量

> leadershipage[leadershipage==99<-NA 方法一:

leadership$agecat[leadershipage75]—”Elder"

leadershipagecatleadership$age=55&leadership$age<=75<-”Middle Aged"

leadershipagecatleadership$age55<-”Young" 方法二:

>leadershipwithin(leadership,{agecat<-NA

agecatage>75<-"Elder”


agecat[age=55age=75]—”Middle Aged” agecat[age<55]<-"Young”

44变量的重命名

直接调用交互式编辑器:fixleadership 编程形式:reshape函数包里的rename)函数

rename(dataframe,coldname=”newname""oldname”=”newname"…)) :install.packages("reshape"

libraryreshape)

> leadership<—rename(leadership,c(manager="managerID”,date=”testDate”) 通过names()函数来重命名变量 例:> names(leadership)2—”testDate” 4.5缺失值

检测缺失值是否存在:函数is.na() 例:> y-c(1,23NA)

> is.na(y

输出[1 FALSE FALSE FALSE TRUE 重编码某些值为缺失值 例: leadership$ageleadership$age==99<NA 在分析中排除缺失值

删除所有包含缺失值数据的行:函数naomit() 例:newdata-na.omit(leadership 4.6日期值

日期格式:%d 数字表示的日期,%a 缩写的星期名,%A 非缩写星期名,m 月份,%b 缩写的月份,%B 非缩写月份,%y 两位数年份,%Y 四位数年份 将字符串形式日期化为数值形式:asdate)函数

调用格式:as.Datexinput_pormat

例:>mydate<as.Date(c(20070622200402-13) 转换日期格式

strDates-c(”01/05/1965””08/16/1975") datesas.DatesreDates,”m/%d/Y” 输出〉 dates

[1 "196501-05" "1975-0816" 输出当前日期和时间

SysDate) date() 49数据集的合并 添加列:merge()函数

调用格式:totalmerge(dataframeAdataframeB,by="ID") 添加行:rbind()函数

调用格式:total-rbind(dataframeA,dataframeB 随机抽样:sample()函数

leadership数据集中随机抽取一个大小为3的样本:

Mysample<leadershipsample(1nrowleadership)3,replace=F)


本文来源:https://www.wddqxz.cn/7e3619ef561810a6f524ccbff121dd36a32dc46c.html

相关推荐