r - R中数据框每列的第25个分位数
问题描述
我正在尝试遍历 R 中的数据框。对于每一列,我想打印第 25 个分位数。
使用来自 nycflights13 包的数据,我正在尝试以下操作:
abt <- select(flights, sched_dep_time)
for(i in names(abt)) {
qrt_1 <- quantile(abt[i], c(.25))
print(qrt_1)
}
但是,这给了我错误:错误:Must use a vector in
[, not an object of class matrix.
我在哪里走错了路?
解决方案
这可能无法解决您的问题为什么它不起作用,但我想为您提供一个替代方案lapply()
lapply(mtcars, function (x) quantile(x, 0.25))
这还会为您返回数据框中每列的 25% 分位数。但是每一列都必须是数字(您在示例中假设)。
如果您想要矢量化输出,您也可以使用sapply
而不是lapply
推荐阅读
- android-fragments - Jetpack 组成没有片段的导航架构?
- python - 使用 .csv 文件中的数据创建字典
- julia - 交互张量的积分
- java - 为什么找不到 Spring 自定义登录表单但其他页面工作正常?
- python - Windows Azure 管道中的 python setup.py build_ext
- vue.js - Buefy:如何在单独注册组件时设置图标包
- python - 无法在 Python 中使用 CSV 打印数据
- css - SVG CSS 动画平滑过渡和原点
- javascript - 我想改进这个通过 ''value=" 过滤 CheckBoxes 列表的 JavaScript 代码
- python - For-loop 只返回最后一个值