R学习日志(一)--数据分析绘图:直方图、箱线图、条形图、合并条形图

以下是前6个tasks的总结,按照每个task学到的知识罗列:

Task1 背景介绍


Task2 数据分析

数据读取

mydata<-read.csv(file.choose())  #读取csv格式的数据表
edit(mydata)  #编辑查看数据表
summary(mydata)  #汇总(可查看最小值、最大值、分位数、缺失值)

直方图

breaks2<-seq(420,120945,1607)  #设置直方图最小值420、最大值120945、间距1607(需整除,得到柱子个数)
hist(mydata$收入,breaks = breaks2,main="收入水平频率直方图",col = "olivedrab", border = "white",
     xlab="收入:元",ylab="频率")  #绘制频数直方图

hist(mydata$收入,breaks = breaks2, freq= FALSE, 
     include.lowest = TRUE,right = TRUE,
     density =1000, col = "olivedrab", border = "white",
     main="收入水平密度直方图",xlab="收入:元",ylab="频率") 

#绘制密度直方图,freq=false代表密度直方图,density表示直方图斜杠密度,数值越大越密集

lines(density(mydata$收入))  #绘制密度曲线

箱线图

boxplot(mydata$收入~mydata$是否按期还款,main="收入水平与是否按时还款箱线图",
        xlab="是否按时还款",ylab="收入水平")

#前面的变量是纵坐标,后面的变量是横坐标,自动分类;对比箱线图

条形图

install.packages("vcd",destdir = "D:/R_projects")
library(vcd)

counts<-table(mydata$教育水平)
counts
barplot(counts,main="所有贷款人教育水平",xlab="教育水平",ylab="人数",col="grey",
        names.arg=c("1","2","3","4"))

#总体条形图(纵坐标不分类统计)如图1;(根据教育水平分四类添加names.arg)

按期还款=with(mydata,
                 c(sum((是否按期还款==1)[which(教育水平=="1")]),
                   sum((是否按期还款==1)[which(教育水平=="2")]),
                   sum((是否按期还款==1)[which(教育水平=="3")]),
                   sum((是否按期还款==1)[which(教育水平=="4")])))
按期还款

barplot(按期还款,names.arg=c("1","2","3","4"),
                   main = "按时还款的客户受教育水平条形图",
                   xlab="教育水平",ylab="人数")

#纵坐标有条件分类统计 如图2;用with组合条件

未按期还款=with(mydata,
               c(sum((是否按期还款==0)[which(教育水平=="1")]),
                 sum((是否按期还款==0)[which(教育水平=="2")]),
                 sum((是否按期还款==0)[which(教育水平=="3")]),
                 sum((是否按期还款==0)[which(教育水平=="4")])))
未按期还款

barplot(未按期还款,names.arg=c("1","2","3","4"),
                 main="未按时还款的客户受教育水平条形图",
                 xlab="教育水平",ylab="人数")

#纵坐标有条件分类统计 如图3

R学习日志(一)--数据分析绘图:直方图、箱线图、条形图、合并条形图_第1张图片

合并条形图

data_bar=rbind(未按期还款,按期还款)
data_bar

barplot(data_bar,names.arg=c("1","2","3","4"),
        main="是否按时还款客户的教育水平分布",
        xlab="教育水平",ylab="人数",col=c("olivedrab","darkgrey"))
legend(x="topright",rownames(data_bar),fill=c("olivedrab","darkgrey"))

# rbind()函数组合两个条形图,“,”隔开表示累加,如图4,可比较图1;lengend()用作图例调整

data_per=rbind(未按期还款/是否按期还款_教育水平)
data_per
barplot(data_per,names.arg=c("1","2","3","4"),
                  main="不同受教育程度的违约用户比例",
                  xlab="教育水平",ylab="违约比例",col = "olivedrab")

# “/”表示相除,可做比例条形图,如图5;经济意义为违约率

R学习日志(一)--数据分析绘图:直方图、箱线图、条形图、合并条形图_第2张图片

                      

 

 

你可能感兴趣的:(R学习日志(一)--数据分析绘图:直方图、箱线图、条形图、合并条形图)