You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R绘制月薪百分位与累计相对频率笛卡尔平面报错如何解决?

报错根因
  • 你计算得到的x1是间隔5%的百分位数结果,共21个值(seq(0, 1, by=0.05)生成的概率序列长度为21)
  • 你编写的y1<-prop.table(bd_tarea[8])得到的是80条原始薪资数据各自的占比,长度为80,二者长度不匹配触发报错
  • 额外逻辑问题:你需求中的纵轴是累计相对频率,和单条原始数据的占比不属于同一指标,原始y1的计算逻辑不符合要求
修复后的完整实现代码

方法1:完全匹配题目要求的百分位数采样绘图

# 提取综合月薪数值向量
smi <- as.numeric(unlist(bd_tarea[8]))
# 计算0%到100%间隔5%的百分位数作为横轴
x1 <- quantile(smi, prob = seq(0, 1, by = 0.05))
# 百分位数对应的累计相对频率就是生成百分位数用的概率序列,作为纵轴
y1 <- seq(0, 1, by = 0.05)
# 绘制图形,type参数选l为折线,选p为散点,可按需调整
plot(x1, y1, 
     type = "l",
     xlab = "综合月薪(比索)",
     ylab = "累计相对频率",
     main = "综合月薪累计频率分布")

方法2:使用经验累积分布函数绘制更平滑的全量分布

如果不需要严格限制只采样间隔5%的百分位点,可以直接调用R内置的经验累积分布函数,得到更流畅的累计分布曲线:

smi <- as.numeric(unlist(bd_tarea[8]))
plot(ecdf(smi),
     xlab = "综合月薪(比索)",
     ylab = "累计相对频率",
     main = "综合月薪累计频率分布")

内容的提问来源于stack exchange,提问作者Olga Gonzalez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 04:24:01