R 语言实战---03--数据导入

6 篇文章 0 订阅

一. 数据的输入

R语言本身就是处理数据分析,以及数据可视化的。在数据分析中,对于数据的输入就尤为重要,今天我们就介绍数据在R中的输入。
R语言的数据输入包括两种:1. 是R自身带的编辑器;2. 外部输入数据。

1. R自身带的编辑器
# 数据的手动输入
# 
mydata <- data.frame(age=numeric(0),gender=character(0),weight=numeric(0))
# 两种方法编辑数据集
# edit要重新赋值
mydata = edit(mydata)
# 不需要重新赋值
fix(mydata)

2. 外部输入数据

主要是xlsx,csv和txt的数据(比较常用)

# 外部读入数据
mydataframe <- read.table(file, options) 
file  #是一个带分隔符的ASCII文本文件,options是控制如何处理数据的选项
header  #一个表示文件是否在第一行包含了变量名的逻辑型变量 
sep  #分开数据值的分隔符。默认是 sep="",这表示了一个或多个空格、制表符、换行或回车。使用 sep=","来读取用逗号来分隔行内数据的文件,使用 sep="\t"来读取使用制表符来分割行内数据的文件 
row.names  #一个用于指定一个或多个行标记符的可选参数 
col.names #如果数据文件的第一行不包括变量名 (header=FASLE) , 你可以用 col.names 去指定一个包含变量名的字符向量。 如果 header=FALSE 以及 col.names 选项被省略了, 变量会被分别命名为 V1、V2,以此类推 
na.strings #可选的用于表示缺失值的字符向量。比如说,na.strings=c("-9", "?")把-9 和?值在读取数据的时候转换成 NA 
colClasses  #可选的分配到每一列的类向量。 比如说, colClasses=c("numeric", "numeric", "character", "NULL", "numeric")把前两列读取为数值型变量,把第三列读取为字符型向量,跳过第四列,把第五列读取为数值型向量。如果数据有多余五列,colClasses 的值会被循环。当你在读取大型文本文件的时候,加上 colClasses 选项可以可观地提升处理的速度 
quote  #用于对有特殊字符的字符串划定界限的自负床。默认值是双引号(")或单引号(') 
skip  #读取数据前跳过的行的数目。这个选项在跳过头注释的时候比较有用 
stringsAsFactors  #一个逻辑变量,标记处字符向量是否需要转化成因子。默认值是 TRUE,除非它被 colClases所覆盖。当你在处理大型文本文件的时候,设置成 stringsAsFactors=FALSE 可以提升处理速度 
text #一个指定文字进行处理的字符串。如果 text 被设置了,file 应该被留空。


#示例----csv文件(read-table也可以读取txt,xlsx文件)
# studentgrades.csv 是一个5列的数据文件
stu_data = read.table("studentgrades.csv", header=TRUE, row.names="StudentID", sep=",",  
    colClasses=c("character", "character", "character", "numeric", "numeric"))

# 查看表中数据及数据的类型
str(stu_data)

其他格式文件的输入:

# SPSS 数据的导入
library(Hmisc) 
mydataframe <- spss.get("mydata.sav", use.value.labels=TRUE) 

# 导入SAS 数据
library(Hmisc) 
datadir <- "C:/mydata" 
sasexe <- "C:/Program Files/SASHome/SASFoundation/9.4/sas.exe" 
mydata <- sas.get(libraryName=datadir, member="clients", sasprog=sasexe) 
# libraryName是一个包含了SAS数据集的文件夹,member是数据集名字 ,sasprog是到SAS可运行程序的完整路径

#导入 Stata数据 
# mydata.dta是Stata数据集文件
library(foreign) 
mydataframe <- read.dta("mydata.dta")

# 导入 NetCDF 数据
# mynetCDFfile 是数据集文件
library(ncdf) 
nc <- nc_open("mynetCDFfile") 
myarray <- get.var.ncdf(nc, myvar)

二. 数据集的标注

为了使结果更易解读,数据分析人员通常会对数据集进行标注。这种标注包括为变量名添加描述性的标签,以及为类别型变量中的编码添加值标签。例如,对于变量age,你可能想附加一个描述更详细的标签“Age at hospitalization (in years)” (入院年龄) 。

xxxxxxxxxxxxxx

处理数据对象的实用函数

length(object)  #显示对象中元素/成分的数量 
dim(object)  #显示某个对象的维度 
str(object)  #显示某个对象的结构 
class(object)  #显示某个对象的类或类型 
mode(object)  #显示某个对象的模式 
names(object)  #显示某对象中各成分的名称 
c(object, object)  #将对象合并入一个向量 
cbind(object, object) # 按列合并对象,可以合并多个 
rbind(object, object)  #按行合并对象 ,可以合并多个
head(object)  #列出某个对象的开始部分 
tail(object)   #列出某个对象的最后部分 
ls()     #显示当前的对象列表
rm(object)  #可以删除一个或更多个对象。语句 rm(list = ls())将删除当前工作环境中的几乎所有对象
newobject <- edit(object)   #编辑对象并另存为 newobject 
fix(object)  #直接编辑对象 
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值