我是R.的新手。我正在弄清楚如何制定条件陈述。
如果列中的值为负数,则应该加起来为86400.
有什么想法吗?
答案 0 :(得分:1)
假设您的真实数据集是一个数据框,以下内容将起作用。您需要指定列(在此示例中为列b
)并使用ifelse
来评估值是否小于0,如果TRUE
,则添加86400,否则返回原始值
# Create an example data frame
dt <- data.frame(a = "a", b = -3:3)
dt
# a b
# 1 a -3
# 2 a -2
# 3 a -1
# 4 a 0
# 5 a 1
# 6 a 2
# 7 a 3
# Add 86400 to negative value in column `b`
dt$b <- ifelse(dt$b < 0, dt$b + 86400, dt$b)
dt
# a b
# 1 a 86397
# 2 a 86398
# 3 a 86399
# 4 a 0
# 5 a 1
# 6 a 2
# 7 a 3
您也可以按如下方式编写上述代码。
dt$b <- with(dt, ifelse(b < 0, b + 86400, b))
答案 1 :(得分:0)
类似的东西:
df[,'col']=df[,'col']+ifelse(df[,'col']<0,86400,0)