ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

R 语言实战---03

2021-09-03 23:58:56  阅读:179  来源: 互联网

标签:实战 03 ... 对象 object --- 某个 数据 输入


一. 数据的输入

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, object, ...)  #删除一个或更多个对象。语句 rm(list = ls())将删除当前工作环境中的几乎所有对象
newobject <- edit(object)   #编辑对象并另存为 newobject 
fix(object)  #直接编辑对象 

标签:实战,03,...,对象,object,---,某个,数据,输入
来源: https://blog.csdn.net/hac_kill_you/article/details/120091709

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有