Coursera系列-R Programming第二周

博客总目录,记录学习R与数据分析的一切:http://www.cnblogs.com/weibaar/p/4507801.html

 ---

好久没发博客

且容我大吼一句

终于做完这周R Programming的作业了!

之前一直有报coursera的课程,但是总是没有坚持下去,这次收到他们的邮件推广,说data science系列课程开通了R语言的中文课程,有中文版论坛,有中文字幕,如此诚意满满,再不报名,就实在太落伍了。

为了让自己坚持,还花钱买了signature track,所以当这周五收到助教通知说,第一个编程作业周日就要截止啦,简直让我晴天霹雳

然后周六花了一天时间看视频,看GITHUB里一位大牛对这篇assignment的讲解,终于完成了三个函数的编写

总结一下经验

1)遍历文件夹,读取所有数据

files_list<-list.files(directory,full.names=TRUE) #遍历文件夹里的文件名,这里选择fullname,就可以读取工作目录下文件夹内的文件了
dat<-data.frame() #需要事先设定data.frame框架,否则下列rbind循环会报错
for (i in id){
dat<-rbind(dat,read.csv(files_list[i])) #这里用rbind,把dat与新读取的文件联合。
}

2)循环与if嵌套时,要注意}的应用,否则程序会报错

    for (i in 1:332) { #这里有嵌套
语句
if (sum(complete)>threshold) #注意括号以及下列{}的引用
{语句1}
else {语句2}
}

然后对于WEEK2的课程,总结下来是:

1)尽量用有hard limit的for语句,而不是repeat或者while语句做循环,避免无限循环

2)循环语句嵌套2-3层即可,如果要多层嵌套,请先思考有无简易函数可用

3)R的全局环境,R包等,以及R为什么要把所有数据都读入内存(控制流)

4)R自编函数的主要目的是,省略重复劳作,对代码引用更加轻松

题外话

另外,在学习这门课之余,到MOOC逛,他们最近有一个叫做hour of code的活动,号召大家从小代码开始(放下IPHONE,开始编程)。

如果新生代从小开始就接触编程,那么十几年后,我们这些老人的优势在哪里呢?上海R语言会议上,有多个公司展示了他们用R做自动化报表的过程,这些原本需要人工多天的劳动,引入R后,均自动化了。那么如果所有的事情都自动化了后,拿着excel当饭吃,不思进取的所谓数据分析师,他们未来的出路又在哪里?

当编程语言逐步发展,当编程成为小学生必修课程,当excel可以做得事情,有R可以做得更好,不进步的人,就会被社会淘汰

believe tech, use tech, follow tech, can't stop

以此共勉。

---

博客总目录,记录学习R与数据分析的一切:http://www.cnblogs.com/weibaar/p/4507801.html

 

上一篇:.NET开源分布式日志框架ExceptionLess实战演练(公开版)


下一篇:5个强大的Java分布式缓存框架