首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将12月、1月、2月显示为淡季

将12月、1月、2月显示为淡季
EN

Stack Overflow用户
提问于 2018-03-19 14:23:15
回答 1查看 25关注 0票数 0

我有一个如下的数据框架:

代码语言:javascript
复制
head(df)
  Sl.no       Date   Year  Month Season  concentration
1     1 1993-12-01  1993   Dec Winter          20.0
2     2 1994-01-01  1994   Jan Winter          21.0
3     3 1994-02-01  1994   Feb Winter          20.0
4     4 1994-03-01  1994   Mar Spring          21.5
5     5 1994-04-01  1994   Apr Spring          29.0
6     6 1994-05-01  1994   May Spring          40.0

我想在数据框中添加一列,以便所有12月、1月、2月、3月、4月显示“低流量”,其余月份显示“高流量”。

我尝试了以下几种方法:

代码语言:javascript
复制
df$hflf <- if (df$Month==c("Dec", "Jan", "Feb", "Mar", "Apr"))
{"low flow"} else {"high flow"}.

但它似乎不起作用。

我如何才能做到这一点。您的帮助将不胜感激

EN

回答 1

Stack Overflow用户

发布于 2018-03-19 14:29:10

正如@akrun在评论中建议的那样,你可以这样做:

代码语言:javascript
复制
lowflow <- c("Dec", "Jan", "Feb", "Mar", "Apr")
df$hflf <- ifelse(df$Year %in% lowflow, "low flow", "high flow")

使用dplyr包,您还可以执行以下操作:

代码语言:javascript
复制
df <- df %>% mutate(hflf2 = case_when(Year %in% lowflow~"low flow", TRUE~"high flow"))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49356927

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档