r - 如何避免在 R 中以科学计数法显示值?
问题描述
我在 R 中有这个代码来制作频率表:
TablaFrecs = function(x,k,A,p){
options(scipen=999)
L = min(x)-p/2+A*(0:k)
x_cut = cut(x, breaks = L, right=FALSE)
intervals = levels(x_cut)
mc = (L[1]+L[2])/2+A*(0:(k-1))
Fr.abs = as.vector(table(x_cut))
Fr.rel = round(Fr.abs/length(x),4)
Fr.cum.abs = cumsum(Fr.abs)
Fr.cum.rel = cumsum(Fr.rel)
tabla = data.frame(intervals, mc, Fr.abs, Fr.cum.abs, Fr.rel, Fr.cum.rel)
tabla
}
ej 9 是这样的: 我正在使用 OFF.COURSE 变量
我已经尝试过 options(scipen=999) 和 format(scientific = F) 但并没有解决它。
PD:我还想为我的 TablaFrecs 函数创建一个 hist(),我该怎么做?
解决方案
您可以使用mapply
andformat
创建标签:
TablaFrecs = function(x,k,A,p){
options(scipen=999)
L = min(x)-p/2+A*(0:k)
labels = mapply(function(x,y){paste0("[",format(x),",",format(y),")")},L[-length(L)],L[-1])
x_cut = cut(x,
breaks = L ,
labels = labels,
right=FALSE)
intervals = levels(x_cut)
mc = (L[1]+L[2])/2+A*(0:(k-1))
Fr.abs = as.vector(table(x_cut))
Fr.rel = round(Fr.abs/length(x),4)
Fr.cum.abs = cumsum(Fr.abs)
Fr.cum.rel = cumsum(Fr.rel)
tabla = data.frame(intervals, mc, Fr.abs, Fr.cum.abs, Fr.rel, Fr.cum.rel)
tabla
}
TablaFrecs(1e6, k= 27, A = 3646296, p= 0.1)
intervals mc Fr.abs Fr.cum.abs Fr.rel Fr.cum.rel
1 [999999.9,4646296) 2823148 1 1 1 1
2 [4646296,8292592) 6469444 0 1 0 1
3 [8292592,11938888) 10115740 0 1 0 1
...
推荐阅读
- python - Python客户端-服务器如何处理超时
- mysql - 批量添加和编辑帖子类别
- python - 希望将字典转换为数据框和 csv
- elasticsearch - 默认情况下,“关键字”字段在文本字段上禁用获取 Fielddata
- php - Nginx 中的反向代理问题在同一网络上的 2 台服务器之间,一台服务器使用 apache,另一台是 node.js
- python - 你如何对python中的字符串数字列表进行排序?
- c++ - 在 VS Code 中使用 Linux 上的 MinGW 交叉编译适用于 Windows 的 SDL 程序?
- linux - 如何在共享库中嵌入数据?
- discord.js - Discord.js setVoiceChannel
- c - 关于用户名/密码应用程序中逻辑运算符的语义错误