【发布时间】:2018-03-19 06:23:14
【问题描述】:
我有以下数据框:
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 月显示“低流量”,其余月份显示“高流量”。
我尝试了以下方法:
df$hflf <- if (df$Month==c("Dec", "Jan", "Feb", "Mar", "Apr"))
{"low flow"} else {"high flow"}.
但它似乎不起作用。
我怎样才能做到这一点。您的帮助将不胜感激
【问题讨论】:
-
将
ifelse与%in%一起使用,即with(df, ifelse(Month %in% c("Dec", .."Apr"), "low flow", "high flow")) -
谢谢@akrun。我不知道 ifelse()。它有效。