全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
13266 11
2015-06-12
一直存在这样的问题,就是如何用R语言批量处理Excel表中的数据,为了说明情况,举个简单的例子,我有十个EXCEL表(每个表中数据代表一只股票的数据),每个表中的数据结构均相同(EX:每个表中均包含三列数据,第一列为日期,第二列为股票开盘价,第三列为股票收盘价),我现在要求出每个表中对应日期的开盘价和收盘价的均值,该怎么写程序一次性处理并导出十个表的数据的结果,而不是一个一个的去导入然后实现目标,感激不尽
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-6-12 09:47:22
流水化办公中,通常有格式统一的表格文件产生,但是到最后要将这一堆表格文件整合为大表却很揪心,累断手,如何用R语言进行一次性导入整合呢?
假设我们将D:/input文件夹作为需要导入的表格的存放点,文件夹内所有文件均为此次需要导入数据,那么可以用以下程序进行操作
setwd("D:/")                                                                    #设定工作目录为D盘
a = list.files("input")                                                       #list.files命令将input文件夹下所有文件名输入a
dir = paste("./input/",a,sep="")                                      #用paste命令构建路径变量dir
n = length(dir)                                                                 #读取dir长度,也就是文件夹下的文件个数
merge.data = read.csv(file = dir[1],header=T,sep=",")   #读入第一个文件内容(可以不用先读一个,但是为了简单,省去定义data.frame的时间,我选择先读入一个文件。
for (i in 2:n){
   new.data = read.csv(file = dir[i], header=T, sep=",")
   merge.data = rbind(merge.data,new.data)
}
#循环从第二个文件开始读入所有文件,并组合到merge.data变量中
write.csv(merge.data,file = "./input/merge.csv",row.names=F)  #输出组合后的文件merge.csv到input文件夹

摘自:http://blog.sina.com.cn/s/blog_46d621c00101l66x.html
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-6-12 12:11:27
read后merge就可以了啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-6-12 12:15:58
楼上正解,不过可能要根据你excel的sheet名修改
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-6-12 12:26:01
letsgoaway 发表于 2015-6-12 09:47
流水化办公中,通常有格式统一的表格文件产生,但是到最后要将这一堆表格文件整合为大表却很揪心,累断手, ...
非常感谢你的回答,让我学习到以后能用到的知识,在这个问题中,我想实现的最终结果是最后还是产生十个表格,我并不想把他们整合到一个表中
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-6-13 00:20:19
那就把循环中merge.data那一行去掉,用一个list代替new.data,把十个表分别存在list里面
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群