【问题标题】:Nested If Else Statement - Argument "Yes" Missing with No Default嵌套 If Else 语句 - 缺少参数“是”且无默认值
【发布时间】:2014-01-20 10:01:46
【问题描述】:

基本上,我有一列包含信号强度值 (Sig_1),并且正在创建一个名为“Activity2”的新列。如果一个值与下一个值(Sig_1)之间的差异等于或大于 5,我希望在我的新列中出现一个“A”。如果信号强度低于-130,我希望出现“W”,如果高于-130,那么我希望出现“I”。

我有一个嵌套的 ifelse 语句:

df <- transform(df, Activity2 = c(0, ifelse(diff(Sig_1)<5), 
ifelse(Sig_1<-130), "W", "I"), "A")

我看不出它有什么问题,但我不断得到:

"ifelse 中的错误(diff(Sig_1) 缺少参数“yes”,没有默认值”

【问题讨论】:

  • 括号放错了位置... c(0, ifelse(diff(Sig_1)
  • 看看这个问题的答案:link

标签: r if-statement dataframe


【解决方案1】:

错误是由于错误的括号:你基本上有ifelse(TRUE)。还要注意a &lt;- 1a &lt; -1 之间的区别。 这是一些应该做你想做的代码:

df <- transform(df, Activity2 = 
ifelse(c(0, diff(Sig_1))<5, ifelse(Sig_1 < -130, "W", "I"), "A"))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-21
    • 1970-01-01
    相关资源
    最近更新 更多