如何解决如何根据日期在R中做countif 数据
我的 excel 文件中有这些数据,如果我在 Excel 中进行,它有很多数据需要计算。我想计算 1 个月中有多少天的值大于 50。
我想把它变成类似的东西:
有人可以帮我解决这个问题吗?
解决方法
另一个选项是 count
with as.yearmon
from zoo
- filter
'Value' 大于 50 的行,然后在转换为后使用 count
yearmon
课与as.yearmon
library(dplyr)
library(zoo)
df %>%
filter(Value > 50) %>%
count(month_year = as.yearmon(Date))
-输出
month_year n
1 Jan 2010 3
2 Feb 2010 1
数据
df <- structure(list(Date = structure(c(14610,14611,14612,14618,14624,14641),class = "Date"),Value = c(27,35,78,88,57,48,99)),class = "data.frame",row.names = c(NA,-7L
))
,
假设您的数据由
给出df <- data.frame(Date = as.Date(c("1/1/2010","1/2/2010","1/3/2010","1/9/2010","1/15/2010","2/1/2010"),"%m/%d/%Y"),99))
要计算您可以使用的特定值
library(dplyr)
df %>%
group_by(month_year = format(Date,"%m-%y")) %>%
summarise(count = sum(Value > 50))
哪个返回
# A tibble: 2 x 2
month_year count
<chr> <int>
1 01-10 3
2 02-10 1
注意:您的 Date
列必须包含日期(如 as.Date
)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。