r - 在没有 base::table() 函数的 R studio 中计算频率
问题描述
我是使用 R 的新手,我正在做一些练习。特别是,我想知道是否有任何方法可以计算 X 的绝对频率,但不使用函数table(x)
.
换句话说,我想获得由 给出的相同输出table(X)
,但不使用此函数。可能吗?
解决方案
table
如果出于某种原因必须避免使用最直接的方法,即使用函数,则有多种计算频率的方法(例如,参见注释) 。另一种方法是定义一个for
循环:
样本数据:
set.seed(123)
dt <- sample(LETTERS[1:5], 100, replace = T)
要计算频率,您首先要设置一个空向量来填充for
循环的结果:
f <- c()
然后运行for
循环本身,即循环遍历其中的唯一元素dt
并按sum
索引排列它们:
for(i in unique(dt)){
f[i] <- sum(dt== i)
}
这样您就可以获得这个频率列表:
f
B D C E A
20 22 21 18 19
推荐阅读
- windows-server-2016 - 不使用脚本自动将主机名移动到所需的 OU
- javascript - 如何使用 ReactJS 显示来自 JSON 对象的数据?
- webix - webix jet 导航怎么做?
- c# - Android ContentResolver.NotifyChange() 不工作
- python - 同样,Python 中的相对导入 + sudo 问题
- spring - 如何使用 RabbitMQ、Spring Boot 和 React 构建 Pub Sub 应用程序
- css - 如何使用 flexbox 将一个盒子放在另一个盒子旁边?
- datatable - 如何从两个列表中获取不同的数据到 PowerApps 中的图库?
- ios - UITableviewcell 是错误的数据
- telegram - 不返回个人资料照片