一直想学编程,尽管不知道编程为何物,也不知道为嘛学,更不知道学了去干啥,如果硬要说个理由,那就是对其完全的陌生感到好奇,到底是啥玩意,瞧瞧!</br>阴差阳错跟着猴子兄来学R,听猴子兄的话,先从《R语言实战》入门,以下是前两章的学习笔记,如下:
第一章 R语言介绍
R语言 是什么
R语言,编程语言的一种,是一种自由软件编程语言与操作环境,主要用于统计分析、绘图、数据挖掘。
安装 R 与 RStudio
为啥要安装这两个家伙,必须安装这两个家伙,要用它就得先安装好它俩。
分别在其官网下载即可,
R下载地址
RStudio下载地址
R 与 RStudio的关系,简单来说,R 是一个运行环境,而 RStudio 是 R 的一个开发工具,正如猴子举例说如同建房子,R就是地基,RStudio就是建造的过程。
新手上路
打开RStudio

- 控制台:用于输入 R 语言的命令以及输出结果的显示。
- 工作空间:用来记录目前变量的数值,方便查看目前变量的状况。
- 目录:显示当前目录下的文件、文件夹。
创建 RStudio 项目:





创建脚本:



运行脚本代码

RStudio需要注意的两个问题
1,修改 RStudio 的编码为UTF-8


2,打开项目失败
说实话我没遇到这个问题,但许多前辈提到这个问题,我还是负责任的照搬来了
原因是项目文件保存的路径长度太长,可将项目文件拷贝到路径长度较短的目录下再打开。
实践:初步体验R
Xdile老师曾说过,对于编程初学者初学一门编程语言最重要的一点就是不管三七二十一,首先就是照着别人的代码打三遍,打code打code再打code,敲完就知道为什么要这么做了,所以我也照着 R 导论 中的 *** 一个演示会话 ***敲了三遍,敲完,你懂的!

第二章,创建数据集
数据集,个人理解,就是各种数据的集合,任何数据分析的第一步,就是要创建有研究信息的数据集。在R中,这个任务包括以下两步:
- 选择一种数据结构来存储数据;
- 将数据输入或导入到这个数据结构中。
数据结构
在说数据结构之前,先说下数据分析系统,猴子曾把搭建一个数据分析系统类比成盖房子
1,充分挖掘客户需求,设计数据分析系统的架构,如同房子的设计图
2,选择数据分析系统的运行环境,比如R语言,如同在哪打地基
3,创建用于存储数据的各种所需的数据结构,如同准备好盖房子所需的各种材料
4,组合,处理数据结构,如同用各种材料按照图纸建房子。
数据结构就是各种数据的存储方式或容器。R 中数据结构主要有标量、向量、数组、数据框和列表,这些数据结构的数据类型可以是数值型(比如1,2,3,)、字符型(如A,B,)和逻辑型(TRUE/FALSE),当然R 还可以处理复数型(虚数)和原生型(字节)数据类型。
学习数据结构主要要搞懂它的定义和用法,就是以下常说的取数。
1,向量
向量是用于存储数值型、字符型或逻辑型数据的一维数组。执行组合功能的函数c()可用来创建向量。实操如下:


tips:
1,同一向量中无法混杂不同模式的数据,是指赋值不同模式的数据 给同一向量时返回的结果也会 是同一模式数据(字符型)
2,向量的四则运算中,进行不同长度向量加、减法,最好长向量的长度是短向量长度的整数倍,否则会出现警告
2,矩阵
矩阵是一个二维数组,每个元素都拥有相同数据类型。R 中函数 matrix()创建一个矩阵
实操如下:


tips:
1,byrow=TRUE 意为矩阵按行填充,默认按列填充。
2,drop=F表示取值返回结果的格式与矩阵格式一致。
3,数组
数组与矩阵类似,但是维度大于2。数组由array()函数创建,实操如下:

4,数据框
数据框就是包含多种模式的数据集,通过函数data.frame()创建,实操如下:
创建数据框DF,并用$取数

分类合并一列

stringsAsFactor的用法,一个逻辑变量,标记处字符向量是否需要转化成因子。默认值是TRUE.

函数head()及tail()的用法

添加一行

分类统计运算

添加一列

5,列表
一般来说,列表就是一些对象的有序集合,列表使用函数list()创建。举例如下:


6,因子
因子,就是一个符号,用来存储类别(名义型)变量和有序类别(有序型)变量,这类变量不能用来计算而只能用来分类或计数。因子使用factor()函数表示,以整数向量的形式存储类别值,举例如下:

tip:对于字符型向量,因子的水平默认依字母顺序创建,,参数ordered=TRUE指定因子为有序因子,需要非默认排序则通过levels=c()指定顺序
因子的运算

暂练习这么多,R 就像浩瀚的海洋,还有无数未知需要去探索,去发现~
网友评论