《r语言实战》菜鸟学习笔记(二)

这一部分将要说明R语言的数据类型以及数据输入方面的内容

因子

R语言中变量可以归结为名义型,有序型和连续变量、

名义型 :没有顺序之分的变量。如 天气 阴晴等

有序型:有顺序关系,但不是数量关系。 心情好 坏 适中等

连续型:就是同是有数量和顺序。当然这里的连续型并不是数学中的连续,也包括离散数据

名义型和有序型在R中称为因子。

下面介绍factor()函数

diabetes <- c("Type1", "Type2", "Type1", "Type1")
diabetes <- factor(diabetes)
#上面factor将此向量存储为(1,2,1,1),并在内部关联1=Type 2=Type2.

有序型需要在factor()函数中制定 ordered=TRUE

STATUS <= C("Poor", "Improved", "Excellent", "Poor")
status <- factor(status, ordered=TRUE)
#向量编码为(3,2,1,3)

但是如何保证 1=Poor,2=Improved,3=Excelent呢,如下方法

status <- facotr(status, order=TRUE, levels = c("Poor", "Improved","Excellent"))

但是有序因子和普通的因子有什么区别呢?请看下面程序:

patientID <- c(1,2,3,4)
age<- c(25,34,28,52)
diabetes <- c("Type1", "Type2", "Type1", "Type1")
status <- c("Poor", "Improved", "excellent", "Poor")
diabetes <- factor(diabetes)
status <- factor(status, order = TRUE)
patientdata <- data.frame(patientID, age, diabetes, status)
str(patientdata)
#以下内容是输出

‘data.frame‘: 4 obs. of 4 variables:
$ patientID: num 1 2 3 4
$ age : num 25 34 28 52
$ diabetes : Factor w/ 2 levels "Type1","Type2": 1 2 1 1
$ status : Ord.factor w/ 3 levels "excellent"<"Improved"<..:  3 2 1 3

summary(patientdata)#以下是输出(没有对齐)

patientID age diabetes status
Min. :1.00 Min. :25.00 Type1:3 excellent:1
1st Qu.:1.75 1st Qu.:27.25 Type2:1 Improved :1
Median :2.50 Median :31.00 Poor :2
Mean :2.50 Mean :34.75
3rd Qu.:3.25 3rd Qu.:38.50
Max. :4.00 Max. :52.00

其中diabetes和status显示了频数.

列表

不要小看列表,R语言中的列表可以包含向量、矩阵、数据框、其实其他列表。

mylist <-list(object1,....)

mylist <-list(name1 = object1,name2=object2,...)

举个例子

g <- "My First List"
h <- c(25, 26, 18, 39)
j <- matrix(1:10, nrow = 5)
k <- c("one", "two", "three")
mylist <- list(title=g, ages=h, j,k)
mylist
#以下是运行结果

$title
[1] "My First List"

$ages
[1] 25 26 18 39

[[3]]
[,1] [,2]
[1,] 1 6
[2,] 2 7
[3,] 3 8
[4,] 4 9
[5,] 5 10

[[4]]
[1] "one" "two" "three"

元素分别为:字符串,数值型向量,矩阵和字符型向量.

tips:

1. R中没有标量

2. R的下标从1开始

3. 变量无法声明

数据的输入

1. 使用键盘输入

mydata <- data.frame(age=numeric(0),gender=character(0), weight=numeric(0))
mydata <- edit(mydata)#或者fix(mydata)

2. 带分割符号的文本文件

mydataframe <- read.table(file, header=logical_value, sep=“delimiter", row.names="name")

其中file是带有分隔符的ascii文本文件,header是一个表明首行是否包含了变量名的逻辑值,sep用来指定分割数据的分隔符,row.names是一个可选参数,用以指定一个或者多个表示行标识符的变量。

举例:

grade <- read.table("studentgrades.csv", header=TRUE,sep=",", row.names="STUDENTID"
时间: 2024-10-10 04:34:47

《r语言实战》菜鸟学习笔记(二)的相关文章

《R语言实战》学习笔记seventh

由于在准备软考中级数据库系统工程师外加巩固SQL Server 2012,所以拖了好久一直没继续学R 下去 所以今天重开R 的战事 这次是关于基本统计分析的内容,即关于用于生成基本的描述性统计量和推断统计量的R 函数 首先,将着眼于定量变量的位置和尺度的衡量方式 然后将是生成类别型变量的频数表和列联表的方法(以及连带的卡方检验) 接下来将考察连续型和有序型变量相关系数的多种形式 最后转而通过参数检验(t检验)和非参数检验(Mann-Whitney U检验.Kruskal-Wallis检验)方法研

《R语言实战》学习笔记fourth

又拖了好久继续写R 语言的学习笔记了啊 这次到了基本数据管理了,众所周知数据准备是数据分析的最重要的前提 书本是从一个例子开始本章的内容的,例子是一个类似调查问卷的 然后把回答标为从1到5,再进行分析(这让我想到了自学SPSS 的时候啊) > manager <- c(1, 2, 3, 4, 5) > date <- c("10/24/08", "10/28/08", "10/1/08", "10/12/08&q

【数据分析 R语言实战】学习笔记 第四章 数据的图形描述

4.1 R绘图概述 以下两个函数,可以分别展示二维,三维图形的示例: >demo(graphics) >demo(persp) R提供了多种绘图相关的命令,可分成三类: 高级绘图命令:在图形设备上产生一个新的图区,它可能包括坐标轴.标签.标题等. 低级绘图命令:在一个己经存在的图形上加上更多的图形元素,如额外的点.线和标签. 交互式图形命令:允许交互式地用鼠标在一个已经存在的图形.上添加图形信息或者提取图形信息. 使用R语言作图,主要按照以下步骤进行: ①取原始数据,准备好绘图需要的变量. ②

【数据分析 R语言实战】学习笔记 第三章 数据预处理 (下)

3.3缺失值处理 R中缺失值以NA表示,判断数据是否存在缺失值的函数有两个,最基本的函数是is.na()它可以应用于向量.数据框等多种对象,返回逻辑值. > attach(data) The following objects are masked fromdata (pos = 3): city, price, salary > data$salary=replace(salary,salary>5,NA) > is.na(salary) [1] FALSEFALSE TRUE

【数据分析 R语言实战】学习笔记 第五章 数据的描述性分析(上)

5.1R内置的分布 分布是描述一个样本数据最核心.最重要的方式.R内嵌了很多常用的统计分布,提供了四类函数:概率密度函数(density),累积分布函数(probability).分位数(quantile)和伪随机数(random).在R中分别用d,p,q,r表示这4个项目,后面接分布的英文名称或缩写. 5.2集中趋势的分析 5.2.1集中趋势的测度 描述统计分布集中趋势的指标主要是平均数.中位数.众数,也称为“平均指标”.这些指标的主要作用包括: 反映总体各单位变量分布的集中趋势和一般水平;

《R语言实战》学习笔记fifth

总算到了第5章-高级数据管理了啊 作为这本书第一部分-入门的收官之章,本章还是挺重要的呢 这章可以分为三个部分,第一部分:快速浏览R 中的多种数学.统计和字符处理函数,第二部分:如何编写函数来完成数据处理和分析任务,第三部分:了解数据的整合和概数方法,以及数据集的重塑和重构方法 > 学生姓名 <- c("John Davis", "Angela Williams", "Bullwinkle Moose", "David Jo

【数据分析 R语言实战】学习笔记 第十一章 对应分析

11.2对应分析 在很多情况下,我们所关心的不仅仅是行或列变量本身,而是行变量和列变量的相互关系,这就是因子分析等方法无法解释的了.1970年法国统计学家J.P.Benzenci提出对应分析,也称关联分析.R-Q型因子分析,其是一种多元相依变量统计分析技术.它通过分析由定性变量构成的交互汇总表,来揭示同一变量各类别之间的差异,以及不同变量各类别之间的对应关系,这是一种非常好的分析调查问卷的手段. 对应分析是一种视觉化的数据分析方法,其基木思想是将一个联列表的行和列中各元素的比例结构以点的形式在较

【数据分析 R语言实战】学习笔记 第七章 假设检验及R实现

假设检验及R实现 7.1假设检验概述 对总体参数的具体数值所作的陈述,称为假设;再利用样本信息判断假设足否成立,这整个过程称为假设检验. 7.1.1理论依据 假设检验之所以可行,其理沦背景是小概率理论.小概率事件在一次试验中儿乎是不可能发生的,但是它一以发生,我们就有理由拒绝原假设:反之,小概率事件没有发生,则认为原假设是合理的.这个小概率的标准由研究者事先确定,即以所谓的显著性水平α(0<α<1)作为小概率的界限,α的取值与实际问题的性质相关,通常我们取α=0.1, 0.05或0.01,假设

【数据分析 R语言实战】学习笔记 第六章 参数估计与R实现(下)

6.3两正态总体的区间估计 (1)两个总体的方差已知 在R中编写计算置信区间的函数twosample.ci()如下,输入参数为样本x, y,置信度α和两个样本的标准差. > twosample.ci=function(x,y,alpha,sigma1,sigma2){ + n1=length(x);n2=length(y) + xbar=mean(x)-mean(y) + z=qnorm(1-alpha/2)*sqrt(sigma1^2/n1+sigma2^2/n2) + c(xbar-z,xb

《R语言实战》读书笔记--为什么要学

本人最近在某咨询公司实习,涉及到了一些数据分析的工作,用的是R语言来处理数据.但是在应用的过程中,发现用R很不熟练,所以再打算学一遍R.曾经花一个月的时间看过一遍<R语言编程艺术>,还用R做过阿里的推荐算法比赛,对R语言有一些最初级.基本的了解.不过 ,上面那本书虽然挺好,但是不适合速成,是从程序员的角度写的,对常用函数和统计知识涉及的不多.在实际工作中,发现适时应用R的包和函数是十分重要的,所以打算另找一本书来看.在学校放着一本<R语言实战>,无奈没拿过来,就用电子版的学一遍吧.