R-第8天

Posted foremostxl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R-第8天相关的知识,希望对你有一定的参考价值。

1、table函数频数统计

注意路径是双斜线

#读入csv文件

read.csv(file = "E:filesDTBFR语言R第8天drink.csv",
         header = T)

技术图片
#读入.data文件
dr<-scan("E:filesDTBFR语言R第8天drink.data",
        what = list(gender="",type=""))
scan按照行进行扫描
技术图片

 

#一维结构是频数表
#二维结构是交叉列联表
table(dr)
技术图片
table(dr$gender)
table(dr$type) Ta
<-table(dr)
技术图片

 计算边缘表

#计算边缘表
#1代表行维度,2代表列维度
margin.table(Ta,1)
margin.table(Ta,2)
技术图片
#计算总频数
margin.table(Ta,)
margin.table(Ta,NULL)
技术图片
#计算频率
prop.table(Ta)*100
prop.table(Ta,1)*100
prop.table(Ta,2)*100
技术图片

 分箱(分组)操作

#读取birth.data数据
bir<-scan("E:filesDTBFR语言R第8天irth.data")
技术图片
table(bir)
#分箱操作(分组)
#分成5组
cut(bir,breaks = 5)
# 把克换成斤 
bir<-bir/500
# 1,2,3指 几斤 b<-c(-Inf,1,2,3,4,5,6,7,8,9,Inf) cut(bir,breaks = b) table(cut(bir,breaks = b))
# 再次划分区间 breakss
<-c(0,4,8,Inf) cut(bir,breaks = breakss,labels = c("","正常","")) table(cut(bir,breaks = breakss,labels = c("","正常","")))
技术图片

 

 

#读取.RData数据
load("E:filesDTBFR语言R第8天物业改革支持度调查数据.RData")
ls() table(wygg$性别,wygg$态度)
技术图片
#计算汇总数据
addmargins(table(wygg$性别,wygg$态度))
技术图片
#计算占比
addmargins(prop.table(table(wygg$性别,wygg$态度)))
技术图片
table(wygg)
ftable(wygg)
技术图片
#指定行列变量
ftable(wygg,row.vars = c("性别","态度"),col.vars = "社区")
ftable(addmargins(table(wygg)))
技术图片
prop.table(ftable(addmargins(table(wygg))))
技术图片

卡方分布-两个分类变量的相关性

检验独立性

 技术图片

 

 

 技术图片

 

 

 先复制,数据在剪切板里面

#卡方分布
# 读取剪切板
n_z<-read.table("clipboard") class(n_z) chisq.test(n_z)
技术图片

不相关的概率小于0.05所以拒绝零假设
p-value<0.05,

统计上存在显著差异,拒绝零假设,从而验证两个分类变量具有相关性。

剖面指数分析

分析,哪一类客户才是我们产品的主要使用者

#剖面指数分析
#剖面指数:子市场与总市场的结构的对比
#如果剖面指数>1.2,则认为子市场是高于市场总体水平的,
#如果剖面指数<0.8,则认为子市场是低于市场总体水平的,
#如果剖面指数在0.8~1.2之间,则认为子市场与总市场没有差异

技术图片

 

 

# T = TRUE
x_r<-read.table("clipboard",header = T)
技术图片
# 转置矩阵
xx_p<-prop.table(as.matrix(x_r[-1,-1]),2)
技术图片
apply(xx_p[,-1],2,function(x) x/xx_p[,1])
技术图片

技术图片

 主要的客户群体

 期望值-观察值分析

 技术图片

 

 

#期望值-观察值分析
xy<-read.table("clipboard")
#计算列平均 xy_c<-colMeans(xy)
技术图片
apply(xy,2,mean)
# 求列平均的两种方法
技术图片
#计算行平均
xy_r<-rowMeans(xy)
技术图片
#计算总平均
z_m<-mean(as.matrix(xy))
技术图片
#计算期望值
# A%o%B运算,就是把A矩阵中所有元素,分别扩大B中元素的倍数。
r_c<-(xy_r %o% xy_c)/z_m
技术图片
#实际值-期望值
xxtz<-xy-r_c
技术图片

 

which.max(xxtz$品牌A)
row.names(xxtz)[3]
row.names(xxtz)[which.max(xxtz$品牌A)]
sapply(xxtz,function(x) row.names(xxtz)[which.max(x)])
技术图片

 #编写程序计算 h(x,n)=1+x+x^2+……+x^n

xx7<-function(x,n){
  h<-1
  for (i in 1:n) {
    h<-h+x^i
  }
  h
}
xx7(x=2,n=5)

编写n中选r的组合函数,即 。

 技术图片

xx9<-function(n,r){
  a<-prod(1:n)
  b<-(prod(1:r))*(prod(1:(n-r)))
  return(a/b)
}
xx9(5,4)
prod(1:3)

 

111

以上是关于R-第8天的主要内容,如果未能解决你的问题,请参考以下文章

py 的 第 8 天

有人可以解释以下 R 代码片段吗? [关闭]

第28月第8天

第十四届蓝桥杯三月真题刷题训练——第 8 天

最全最详细publiccms常用的代码片段

两周自制脚本语言-第8天 关联Java语言