r 读取excel?R语言读取excel文件文件其实有很多的包可以做到,最常用的就是xlsx和readxl, 首先,安装并载入读取excel文件所用的包:install.packages("xlsx") library(xlsx)或者,那么,r 读取excel?一起来了解一下吧。
R语言读写excel表格
读文件常用的几种方法:
1. library(readxl)
data <- read_excel("name.xlsx",sheet=1,col_names = T,col_types = NULL ,na="", skip=0)
2. data <- read.table("name.txt"旅散,header = T,sep = "")
3. read.csv(file.choose(),header = F,sep = ",")#逗号可删族局除
data <拆穗氏-data.frame(data$a,data$b)#合并成数据框结构
写入文件:
write.table(data,file = "data.csv",sep=",",row.names = F, col.names = F ,quote = F)
R语言读取excel文件文件其实有很多的包可以做到,最常用的就是xlsx和readxl, 首先,安装并载入读取excel文件所用的包:
install.packages("xlsx") library(xlsx)
或者,
install.packages("readxl") library(readxl)
两个包的基本介绍
xlsx是用R把excel文件中的工作表以data.frame的格式读入R语言,他有两个常用函数,其中read.xlsx2通常会比read.xlsx读取的速度更快一些,因为它的好多工作是利用Java完成的,所以速度有所提升,但是在读取子数据集的时候没有read.xlsx稳定性好。
read.xlsx(file, sheetIndex, sheetName=NULL, rowIndex=NULL, startRow=NULL, endRow=NULL, colIndex=NULL, as.data.frame=TRUE, header=TRUE, colClasses=NA, keepFormulas=FALSE, encoding="unknown", ...)
read.xlsx2(file, sheetIndex, sheetName=NULL, startRow=1, colIndex=NULL, endRow=NULL, as.data.frame=TRUE, header=TRUE, colClasses="character", ...)
注:
sheetIndex:工作表单号
rowIndex:行号,就是你想读取那些行
header:表头,就是有没有列名。
您好,最近初学R语言,在R语言读入EXCEL数据格式文件的问题上遇到了困难,经过在网上搜索解决了这一罩毕指问题,下面归纳几种方法,供大家分享:
第一:R中读取excel文件中的数据的路径:
假定在您的电脑有一个excel文件,原始的文件路径是:D:\work\data\1
如果直接把这个路径拷贝到R中,就会出现错误,原因是:
\是escape character(转义符),\\才是真正的\字符,或者用/
因此,在R中有两种方法读取该路径:
1:在R中输入一下路径:D:\\work\\data\\1
2:在R中输入一下路径:D:\\work\\data\\1
第二:R中读取excel文件中的数据的方法:
read.table(),read.csv(),read.delim()直接读取EXCEl文件时,都会遇到一下问题:“在读取‘.xls’的TableHeader时遇到不完全的最后一行”。解决的方法有以下几种:假如文件物配1.1中是一个6乘以2的矩阵,元素为:
123
224
325
426
527
628
方法1:xls另存为csv格式然后用read.csv:
具体过程如下:
> data<-read.csv("D:\\work\\data\\1.csv")
> data
X1 X23
12 24
23 25
34 26
45 27
56 28
> data<-read.csv("D:\\work\\data\\1.csv",header = F)
> data
V1V2
11 23333
2224
3325
4426
5527
6628
> data<-read.csv("D:\\work\\data\\1.csv",header = T)
> data
X1 X23333
12 24
23 25
34 26
45 27
56 28
也就是说数空header = T(TURE)是默认的状态,在这默认状态下,输出的data矩阵是一个5乘以2的矩阵,第一行作为了data的名字,如果header = F(FALSE),则会现实原始的矩阵结果。
由于Excel文件都是通过DDE的方式打开的,如果在选项中设置了“忽略其他应用程序”,则Excel会忽略掉其他应用程序的DDE请求,所以当你通过资源浏览器来打开Excel文件时,Excel并不会执行打开命令。恢复设置的方法是:
1、在Excel2003中双击不能打开渣如文件:
打开“”-“选项”-“常规”-“设置”,看到“忽略其他应用程序”前打了勾,取消这个选择,按“确定”,关闭Excel,双击Excel文件,顺利打开。
2、在Excel2007及以上版本中双击不能打开文件:
点击Excel 2007 菜单,选择Excel选项--高级---常规, 把“忽略使用动态数据交换(DDE)的其他应用程序”此处的勾去掉,关闭Excel,双击Excel文件,顺利打开。
附:DDE简要说明
DDE就是“动态数据传输”,主要用在两个EXE程序之间传送数据。
比如:a.exe运行过程中要调用b.exe程配哪序,但要告如卖启诉B从哪里开始运行,B从A处得到数据,再判断数据,就知道怎么运行了。
excel_path <- c("C:/Users/lvjs9/Desktop/excel.xlsx")
inverse_unf_l<- read_excel(excel_path,1)[0]
for (i in (1:length(excel_sheets(excel_path)))){
inverse_unf_l <- rbind(inverse_unf_l , read_excel(excel_path,i))
}
以上就是r 读取excel的全部内容,1:在R中输入一下路径:D:\\work\\data\\1 2:在R中输入一下路径:D:\\work\\data\\1 第二:R中读取excel文件中的数据的方法:read.table(),read.csv(),read.delim()直接读取EXCEl文件时。