r - 聚合和 cbind 函数说明
问题描述
首先我看不懂聚合函数和 cbind 我需要解释非常简单的单词,其次我有数据
permno number mean std
1 10107 120 0.0117174000 0.06802718
2 11850 120 0.0024398083 0.04594591
3 12060 120 0.0005072167 0.08544500
4 12490 120 0.0063569167 0.05325215
5 14593 120 0.0200060583 0.08865493
6 19561 120 0.0154743500 0.07771348
7 25785 120 0.0184815583 0.16510082
8 27983 120 0.0025951333 0.09538822
9 55976 120 0.0092889000 0.04812975
10 59328 120 0.0098526167 0.07135423
我需要处理这个
data_processed2 <- aggregate(cbind(return)~permno, Data_summary, median)
我无法理解这个命令请解释我很简单谢谢!
解决方案
cbind
需要两个或多个表(数据框),将它们并排放置,然后将它们组合成一个大表。因此,例如,如果您有一个包含 A、B 和 C 列的表,以及另一个包含 D 和 E列的表,那么在cbind
它们之后,您将有一个包含五列的表:A、B、C、D 和 E。行,cbind 假定所有表的顺序相同。正如 Rui 所指出的,在您的示例中, cbind 没有做任何事情,因为return
它不是一张桌子,即使它是,它也只是一件事。
aggregate
获取一个表,将其除以某个变量,然后计算每个组内变量的统计量。例如,如果我有按月和按天计算的销售额数据,我可以按月汇总,并计算每个月每天的平均销售额。
您提供的命令使用以下语法:
aggregate(VARIABLES~GROUPING, DATA, FUNCTION)
变量(cbind(return)
- 这实际上没有意义)是计算统计数据的所有变量的列表 分组(pernmo
)是将数据分组的变量(在您提供的每一行的样本数据中这个变量有一个唯一的数字,所以这也没有任何意义)。数据是您正在使用的数据框。功能是中位数。
所以这个调用会将 Data_summery 分成具有相同 的组pernmo
,并计算每列的中位数。
使用您提供的数据,您基本上会得到同一张表,因为您是按每组一行对数据进行分组... - 实际上,因为您的变量是一个空组,据我所知,你将一无所获。
推荐阅读
- javascript - 将 Angular v8 升级到 Angular v9 获取“ngx-mat-select-search”对“@angular/material”有不兼容的对等依赖
- excel - 创建后如何写入文本文件?
- pdf - 在 pdf 文档周围创建白边而不收缩
- c - 对 request_module() 的调用不会在 Linux 内核中返回
- apache - 禁用 ETAG 和 Last-Modifed 是一个不错的选择 .htaccess
- python - 在 Python 中为文件名添加时间戳
- tensorflow - 检查输入时出错:预期 dense_203_input 的形状为 (1202,) 但得到的数组的形状为 (1,)
- javascript - MirageJS 不保留 POST 创建的数据
- anaconda - NameError:名称“转子”未定义
- android - 如何让抽屉越过动作栏?