r - 在已填充的列中进行 Vlookup
问题描述
我在 r 中有一个包含产品及其生产年份的数据框。根据这个生产年份,我可以计算出产品的使用年限,因此我需要此列始终是满的。不幸的是,数据不是很干净,因此在某些工作日缺少生产年份(它是 0)。
由于生产年份始终相同,我正在寻找这样的函数:如果您在 C 列(Product)中找到另一行具有完全相同的字符串,但 D 列(Production_Year)不同,请计算生产年份的最大值(因此它需要年份而不是 0)并将此最大值复制到具有 0 值的另一行中。
你知道我该怎么做吗?请参阅图片作为参考。
谢谢!
解决方案
如果您的数据位于名为 的数据框中data
,您可以执行以下操作:
library(dplyr)
data <- data %>%
group_by(Product) %>%
mutate(Production_Year = max(Production_Year, na.rm=TRUE))
推荐阅读
- java - 错误:StringIndexOutOfBoundsException:字符串索引超出范围:0
- python-3.x - 按分钟回填 DataFrame 索引?
- java - 在Java中将带有*ngFor的html文件转换为pdf
- python - 如何从python中的偶数列表创建“对列表”?
- java - 如何按关键字搜索数组列表中的单词?
- javascript - 未定义错误窗口的 Angular 11 SSR 服务问题
- python - 计算第 n 项的更有效方法
- ios - UITableView 上的 tvOS 焦点引擎,将 UICollectionViews 作为单元格
- eclipse - 如何使用 Eclipse AST 解析器生成控制流图?
- vim - 将 foldmethod 更改为 diff 后如何在 Vim 中保存折叠?