8391 6

[问答] R语言中关于for语句中向量循环赋值求助 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

学前班

90%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
29 点
帖子
4
精华
0
在线时间
2 小时
注册时间
2016-7-28
最后登录
2016-9-1

楼主
三倍速的钢球 发表于 2016-8-31 15:55:58 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
这个问题是在coursera中函数编写作业中遇到的,求助各位大能。

语句如下:complete<-function(directory,id=1:332)
  {
  x<-list.files(directory)

  for (i in id)
    {
     y<-read.csv(x[i])
     z<-na.omit(y)
     nobs<-nrow(z)
     complete_data<-data.frame(id,nobs)

    }
  complete_data
}


我想要达到的效果是输出的complete_data数据框能拥有每一个不同id的csv文件中完整数据的行数

形如:
       id    nobs
1     2    1041
2     4    474
3     8    192

而我所编写的代码由于for循环最后得到的z是最后一个csv文件的完整行数,我想知道如何读取每一个文件,并能够将我想要的信息持续赋值给同一向量而非擦除重写,麻烦各位指正,整个代码有什么问题也请各位指导,谢谢。
二维码

扫码加我 拉你入群

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

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

关键词:For R语言 R语句 Complete coursera R语言 function

回帖推荐

千5320 发表于6楼  查看完整内容

打错了,这样应该就行了 complete

沙发
wangfs111222 发表于 2016-8-31 20:34:35
1.尽量不用for循环
2.可以读取文件后保存在一个list里面,然后调用*apply函数返回结果

藤椅
三倍速的钢球 发表于 2016-8-31 20:40:52
wangfs111222 发表于 2016-8-31 20:34
1.尽量不用for循环
2.可以读取文件后保存在一个list里面,然后调用*apply函数返回结果
就这个能将不同csv文件的内容累计获得到一个向量里应该如何实现?

板凳
千5320 发表于 2016-8-31 22:22:08
complete<-function(directory,id=1:332)
  {
  x<-list.files(directory)
  complete_data<-NULL
  for (i in id)
    {
     y<-read.csv(x[i])
     z<-na.omit(y)
     nobs<-nrow(z)
     complete_data<-rbind(complete_data,data.frame(id,nobs))
    }
  complete_data
}

报纸
三倍速的钢球 发表于 2016-9-1 15:13:23
千5320 发表于 2016-8-31 22:22
complete
谢答。如果我将id设定为c(2,4)的时候结果如下:

  id nobs
1  2 1041
2  4 1041
3  2  474
4  4  474

这是什么原因?循环的将每一个结果输出给多个id额

地板
千5320 发表于 2016-9-1 15:44:43
打错了,这样应该就行了
complete<-function(directory,id=1:332)
  {
  x<-list.files(directory)
  complete_data<-NULL
  for (i in id)
    {
     y<-read.csv(x[i])
     z<-na.omit(y)
     nobs<-nrow(z)
     complete_data<-rbind(complete_data,data.frame(i,nobs))
    }
  complete_data
}

7
三倍速的钢球 发表于 2016-9-1 19:34:28
千5320 发表于 2016-9-1 15:44
打错了,这样应该就行了
complete
受教!!感谢指导Orz

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

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