r - 计算遵循 R 中模式的行的平均值
问题描述
我有按月组织的旅行数据。看起来像这样
source <- c(1,1,2,2)
dest <- c(2,2,1,1)
month <- c(1,2,1,2)
time <- c(0.23, 0.34, 0.29, 0.33)
df <- data.frame(source, dest, month, time)
> df
source dest month time
1 2 1 0.23
1 2 2 0.34
2 1 1 0.29
2 1 2 0.33
我想time
成为具有相同来源和相同目的地的旅行的所有月份的平均时间,如下所示:
source dest time
1 2 0.285
2 1 0.31
以下是我正在考虑的步骤:
- 如果
source
and的模式dest
不是唯一的 time
等于time
所有month
重复该模式的地方的平均值。
这是我尝试过的
df$merged <- paste(df$source, df$dest, sep='')
问题是:
我不知道根据行是否唯一返回 TRUE/FALSE 值的逻辑函数。但这将模式的
duplicated
第一个实例分类为不重复。在我的示例中,第一行和第三行将被归类为不重复,而我希望它们被归类为这样。我不知道如何告诉 R,基于上述条件,不唯一的行应该与其重复项相关联,并且这些行的时间应该平均到另一列中。
有谁知道怎么做我的想法?
解决方案
推荐阅读
- python - 如何使用 pandas 进行动态 matplotlib 绘图?
- c++ - 二值图像中覆盖所有真值像素的最短路径是什么?
- python - 使用python计算从点到多边形最近边缘的距离的问题
- node.js - schema.methods 不是函数
- sql-server - 将两行表之间的绝对时间差获取到另一个表中
- amazon-web-services - 构建映像时 dockerfile 中的 AWS 凭证
- google-cloud-platform - 在 Google Cloud 上运行 Batch python 进程
- python - 从 tf.data.Datasets 构建 tf,estimator.DNNClassifier
- java - BottomNavigationView 高度未包裹到底部
- python - 多选菜单 Python