首先,筛选出需要的列:
data <- data2[,which(colnames(data2) %in% c("产品分类", "期数", "逾期月数"))]
产品分类 | 期数 | 逾期月数 |
---|---|---|
委托贷款 | 24 | 1 |
委托贷款 | 36 | 1 |
担保贷款 | 24 | 2 |
委托贷款 | 24 | 2 |
信用贷款 | 36 | 4 |
担保贷款 | 24 | 3 |
信用贷款 | 24 | 1 |
委托贷款 | 36 | 3 |
担保贷款 | 24 | 2 |
现在希望得到每种产品种类在不同期数时
逾期月数的占比,使用table函数:
#freq <- table(data) freq1 <- table(data[which(data$逾期月数 == 1),])
如果希望算出的频数参与后续的计算
那么需要把table格式的数据转化成本人比较熟悉的数据框格式:
table1 <- as.data.frame(matrix(freq1[1:length(freq1)],nrow = length(row.names(freq1)), ncol = length(colnames(freq1)))) row.names(table1) <- row.names(freq1) colnames(table1) <- colnames(freq1)
如果希望算出频率
而不是频数的话,需要用到函数prop.table:
table2 <- prop.table(freq1)
函数的参数1代表行,2代表列。
补充:r语言画频数分布直方图和频率分布直方图
画频率分布直方图
纵坐标名字为frequency,频数直方图。
则使用:
hist(x,freq=T)
纵坐标名字为density,频率直方图。
则使用:
hist(x,freq=F)
hist(audit1[,1],col='white',freq=T)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。