楼主: issac.you
7109 10

[问答] 如何拆分单一的data.frame [推广有奖]

  • 12关注
  • 6粉丝

已卖:305份资源

讲师

86%

还不是VIP/贵宾

-

威望
0
论坛币
3263 个
通用积分
32.6607
学术水平
14 点
热心指数
16 点
信用等级
10 点
经验
11102 点
帖子
327
精华
0
在线时间
785 小时
注册时间
2010-2-2
最后登录
2022-4-29

楼主
issac.you 发表于 2014-7-13 15:19:05 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
NP1~C9EM2E$%Z(_5EX8PUL2.jpg

大家请看,这个是34个中信行业指数的历史数据,分别下载为34个.csv文件
然后用

  1. temp = list.files(pattern="*.csv")
  2. myfiles = lapply(temp, read.csv)
复制代码
代码 批量导入34个.csv文件
起初得到的myfiles文件是一个巨大的list 并且list里面仍然是34个list分别对应34个行业指数历史数据

为了操作方便利用如下代码把其转换成data.frame


  1. > y.matrix<-do.call(rbind,myfiles)
复制代码


于是得到了data.frame
但是问题在于这个data.frame是66535*1的矩阵
> dim(y.matrix)
[1] 66535     1
所以仍然无法进行选择变量的操作  比如我只想要其中的“收盘”变量

请问各位如何才能把这个data.frame进行拆分呢?  拆分成p列的那种形式
最后可以用y.matrix$收盘 来调用收盘价进行计算


二维码

扫码加我 拉你入群

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

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

关键词:Frame Data Fram FRA RAM 如何

沙发
zhufengyuan 发表于 2014-7-15 15:05:07
你先用attach(name),把变量读进去~~~

藤椅
playmore 发表于 2014-7-15 16:38:02
你用read.csv导入的每张表没有分出变量吗?
怎么可能只有1列呢?

板凳
issac.you 发表于 2014-7-16 15:51:41
playmore 发表于 2014-7-15 16:38
你用read.csv导入的每张表没有分出变量吗?
怎么可能只有1列呢?
事实上,那个文件夹下面有2516个.csv文件,请问你如何那么有耐心一个一个导入呢??
用代码批量导入之后才会有这些问题

报纸
水天一色DIY 在职认证  发表于 2014-7-16 16:39:16
issac.you 发表于 2014-7-16 15:51
事实上,那个文件夹下面有2516个.csv文件,请问你如何那么有耐心一个一个导入呢??
用代码批量导入之后 ...
批量导入数据,可以考虑先把数据合成一个文件(好奇原始csv文件里面数据是什么样子,如果是整理好的数据,循环读取是可以避免读成一行这个问题)

地板
issac.you 发表于 2014-7-16 22:54:16
水天一色DIY 发表于 2014-7-16 16:39
批量导入数据,可以考虑先把数据合成一个文件(好奇原始csv文件里面数据是什么样子,如果是整理好的数据, ...
一个.csv应该装不下
是2516个上市企业的交易数据
包括开盘 最高 最低 收盘 交易量。。。。

7
playmore 发表于 2014-7-17 08:22:03
issac.you 发表于 2014-7-16 15:51
事实上,那个文件夹下面有2516个.csv文件,请问你如何那么有耐心一个一个导入呢??
用代码批量导入之后 ...
批量导入和一个个导入有什么区别?
不就是加个for循环嘛
你那个循环体写得肯定有问题
都用csv了,还导入成一列,分不开不同的变量,那你让那些comma做什么呢

8
issac.you 发表于 2014-7-17 09:11:04
playmore 发表于 2014-7-17 08:22
批量导入和一个个导入有什么区别?
不就是加个for循环嘛
你那个循环体写得肯定有问题
能否请教一下你的 for 循环
如何写呢?

9
playmore 发表于 2014-7-17 09:42:41
issac.you 发表于 2014-7-17 09:11
能否请教一下你的 for 循环
如何写呢?
假设有文件file_1, file_2, ...., file_100,保存在当前工作目录下,你试试下面的代码行不行

filenamelist <- paste("file_",1:100,sep="")

for(filename in filenamelist){
  assign(filename,read.csv(filename))
}

10
jmpamao 发表于 2014-7-17 09:46:14
https://bbs.pinggu.org/forum.php?mod=viewthread&tid=2799231&ctid=2071
希望有帮助

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-1 15:59