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
Coursera系列-R Programming第二周的更多相关文章
- Coursera系列-R Programming第三周-词法作用域
完成R Programming第三周 这周作业有点绕,更多地是通过一个缓存逆矩阵的案例,向我们示范[词法作用域 Lexical Scopping]的功效.但是作业里给出的函数有点绕口,花费了我们蛮多心 ...
- Coursera系列-R Programming-Final Week-Assignment3 & 总结
博客总目录,记录学习R与数据分析的一切:http://www.cnblogs.com/weibaar/p/4507801.html ------- 经过周末一个半天的努力,终于把这次的Assignm ...
- 吴恩达《深度学习》-第一门课 (Neural Networks and Deep Learning)-第二周:(Basics of Neural Network programming)-课程笔记
第二周:神经网络的编程基础 (Basics of Neural Network programming) 2.1.二分类(Binary Classification) 二分类问题的目标就是习得一个分类 ...
- 《深度学习-改善深层神经网络》-第二周-优化算法-Andrew Ng
目录 1. Mini-batch gradient descent 1.1 算法原理 1.2 进一步理解Mini-batch gradient descent 1.3 TensorFlow中的梯度下降 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145218 《Java程序设计》第二周学习总结
Java中的注释格式 单行注释 //注释文字 多行注释 /注释文字/ 文档注释 /**注释文字*/ 注释不仅仅是对代码进行解释,在上一篇博客中也写过,注释也可以用来检查程序中的错误,可以说是一个小窍门 ...
- 201521123038 《Java程序设计》 第二周学习总结
201521123038 <Java程序设计> 第二周学习总结 1.本章学习总结 学会在Java程序中使用函数,使程序层次更清晰 使用StringBuilder编写代码,减少内存空间的占用 ...
- 20155306 2017-2018-1《信息安全系统设计》第二周课堂测试以及myod的实现
20155306 2017-2018-1<信息安全系统设计>第二周课堂测试以及myod的实现 第二周课堂测验: (注:前两项在课堂已提交,在此不做详解) 第一项: 每个.c一个文件,每个. ...
- 20172328 2018—2019《Java软件结构与数据结构》第二周学习总结
20172328 2018-2019<Java软件结构与数据结构>第二周学习总结 概述 Generalization 本周学习了第三章集合概述--栈和第四章链式结构--栈.主要讨论了集合以 ...
随机推荐
- 移动端报表JS开发示例--获取定位
上次分享了移动端报表JS开发的系统概念,后来我又回去摸索了一些案例.之前接触到的FineReport的APP客户端可以用来打卡签到,就好奇研究了以下,这次就来聊一聊报表移动端开发如何实现定位功能. 1 ...
- 电信行业的BI应用
截至2015年年底,我国三大运营商的移动用户数达到13.1亿户,4G /3G用户累计达到8.09亿户,再次创下新高.从三大运营商的年度财报来看,在具体业务方面,三大运营商的数据流量业务带来的收入均已超 ...
- POJ1336 The K-League[最大流 公平分配问题]
The K-League Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 715 Accepted: 251 Descri ...
- Ajax与json
Ajax Ajax简介 Ajax技术,从用户发送请求到获取响应,当用户界面在整个过程中不会受到干扰,而且我们可以在必要的时候只刷新页面的一小部分,而不用刷新整个页面,即"无刷新"技 ...
- BZOJ 2286 消耗战 (虚树+树形DP)
给出一个n节点的无向树,每条边都有一个边权,给出m个询问,每个询问询问ki个点,问切掉一些边后使得这些顶点无法与顶点1连接.最少的边权和是多少.(n<=250000,sigma(ki)<= ...
- jquery插件treetable使用
下载后treetable插件后只需要保留jquery.treetable.css样式文件,jquery.treetable.theme.default.css皮肤文件和jquery.treetable ...
- 只需2分钟,简单构建velocity web项目
Velocity是一个基于java的模板引擎(template engine).它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象 velocity ...
- DNS简析
IntroductionName Server架构分层管理机制分层查询机制Name Server之间的Master-Slave架构DDNS底层协议配置文件/etc/hosts/etc/resov.co ...
- 动画的使用—View Animation
View Animation定义了下面的四种动画效果: 缩放(scale).位移(translation).旋转(rotation).透明(alpha) 缩放动画: ScaleAnimation( ...
- java中的函数参数
当是数组时候,是引用传递