You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言使用条件语句为dataframe列小于0的值加360出错

问题原因

你的赋值语句逻辑存在错误:df$val[df$val < 0] <- + 360的写法等价于直接将筛选出的小于0的数值批量赋值为360,没有调用原有数值做累加计算。

解决方案

方法1:修改原有索引赋值写法

补充赋值右侧的原数值引用即可:

df$val[df$val < 0] <- df$val[df$val < 0] + 360

方法2:使用ifelse向量化写法

代码更简洁,无需重复写筛选条件:

df$val <- ifelse(df$val < 0, df$val + 360, df$val)

验证结果

处理后数据框的val列结果为 180, 210, 170, 180,符合预期需求。

内容的提问来源于stack exchange,提问作者Phil Roberts

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 04:30:03