本篇文章给大家分享的是有关如何分析大数据中数据的对象类型及文件的读入输出,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
一、对象类型:
包括标量、向量、矩阵、数组、数据框和列表。
1)向量(vector):用于存储数值型、字符型或逻辑型数据的一维数组。函数c()用来创建向量:
示例如下:
a <- c(1:10) b <- c("A","B") d <- c(TRUE,FALSE)
注:单个向量中的数据必须拥有相同的类型或模式(数值型、字符型或逻辑型)。
2)矩阵:二维数组,每个元素都拥有相同的模式(数值型、字符型或逻辑型)。函数matrix创建矩阵:
myymatrix <- matrix(vector, nrow=number_of_rows, ncol=number_of_columns,byrow=logical_value, dimnames=list(char_vector_rownames, char_vector_colnames))
其中:vector包含了矩阵的元素, nrow和ncol用以指定行和列的维数, dimnames包含了可选的、以字符型向量表示的行名和列名。默认情况按列填充。
示例如下:
mymatrix <- matrix(1:4, nrow=2, ncol=2, byrow=FALSE,dimnames=list(c("R1","R2"),c("C1","C2"))) C1 C2R1 1 3R2 2 4
3)数组(array):与矩阵类似,维度可以大于2。array函数创建:
myarray <- array(vector, dimensions, dimnames)
其中:vector包含了数组中的数据,dimensions是一个数值型向量,给出了各个维度下标的最大值,而dimnames是可选的、各维度名称标签的列表
示例如下:
myarray <- array(1:24, c(2, 3, 4), dimnames=list(c("A1", "A2"), c("B1", "B2", "B3"), c("C1", "C2", "C3", "C4")))
4)数据框(data.frame):不同的列可以包含不同模式(数值型、字符型等)的数据,很重要!data.frame()创建:
mydata <- data.frame(col1, col2, col3,…)
其中的列向量col1, col2, col3,… 可为任何类型(如字符型、数值型或逻辑型)。每一列的名称可由函数names指定
示例如下:
patientID <- c(1, 2, 3, 4)
age <- c(25, 34, 28, 52)
diabetes <- c("Type1", "Type2", "Type1", "Type1")
status <- c("Poor", "Improved", "Excellent", "Poor")
patientdata <- data.frame(patientID, age, diabetes, status)
patientID age diabetes status
1 1 25 Type1 Poor
2 2 34 Type2 Improved
3 3 28 Type1 Excellent
4 4 52 Type1 Poor
是不是和EXCEL内容很像,所以重要啊!
5)因子(factor):类别(名义型)变量和有序类别(有序型)变量在R中称为因子(factor),绘图时候重要。
6)列表(list)是R的数据类型中最为复杂的一种。一般来说,列表就是一些对象(或成分,component)的有序集合。列表允许你整合若干(可能无关的)对象到单个对象名下。函数list()创建:
mylist <- list(object1, object2, …)
示例如下:
g <- "My First List"h <- c(25, 26, 18, 39)j <- matrix(1:10, nrow=5)k <- c("one", "two", "three")mylist <- list(title=g, ages=h, j, k)
二、数据下标
注:第一个元素下标从1开始!
1)向量:a[2];d[1]
2)矩阵:使用下标和方括号来选择矩阵中的行、 列或元素。X[i,]指矩阵X中的第i 行,X[,j]指第j 列, X[i, j]指第i 行第j 个元素。选择多行或多列时,下标i 和j 可为数值型向量。
3)数组:从数组中选取元素的方式与矩阵相同
4)数据框:可以使用前述(如矩阵中的)下标记号,亦可直接指定列名。
patientdata$age && patientdata[,2] 一样的结果
另:在每个变量名前都键入一次patientdata$麻烦,可以走一些捷径。联合使用函数attach()和detach()或单独使用函数with()来简化代码;
示例如下:
attach(mtcars) #函数attach()可将数据框添加到R的搜索路径中
summary(mpg) #检查搜索路径中的数据框,以定位到这个变量
plot(mpg, disp)
detach(mtcars) #函数detach()将数据框从搜索路径中移除
with(mtcars, {
nokeepstats <- summary(mpg)
keepstats <<- summary(mpg) #使用特殊赋值符<<-替代标准赋值符(<-)即可,它可将对象保存到with()之外的全局环境中。
})
#查看nokeepstats 和 keepstats 的区别:
nokeepstats
Error: object 'nokeepstats' not found
keepstats
Min. 1st Qu. Median Mean 3rd Qu. Max.
10.40 15.43 19.20 20.09 22.80 33.90
5)列表:双重方括号中指明代表某个成分的数字或名称来访问列表中的元素。
mylist[[2]]和mylist[["ages"]]均指那个含有四个元素的向量mylist[[2]][1] 25 26 18 39mylist[["ages"]][1] 25 26 18 39
三、数据读入与写入:
1)使用read.table()从带分隔符的文本文件中导入数据。
mydataframe <- read.table(file, header=logical_value,sep="delimiter", row.names="name")
注1:help(read.table):更多详情
注2:stringsAsFactors=FALSE,可禁止将字符型变量将转换为因子。
2)使用read.csv()导入csv(excel)数据。
3)write.table , write.csv 输出R结果到文件中.
以上就是如何分析大数据中数据的对象类型及文件的读入输出,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。