如何在具有多个条件的r中使用ifelse将另一个变量更改为NA

爱丽莎

我有年份和降雨量的气象站数据。我正在尝试将某些年份的特定站点转换为降雨的缺失值(NA)。我希望不是该特定站/年份的所有内容都保持降雨量。

我一直在使用ifelse以指定多个条件并将降雨量指定为NA。但是每次执行此操作时,我的数据帧都会变成一个值,该值就是不是NA的行数。

以下是一些示例数据:

STATION<-c(1,1,1,2,2,2)
YEAR<-c(2000,2001,2002,2000,2001,2002)
RAIN<-c(5,4,3,4,3,5)
df<-cbind(STATION,YEAR,RAIN)
df<-as.data.frame(df)

现在,如果我想要的降雨量是2001年第一站的一部分,那么我将使用以下ifelse语句:

df<-ifelse(df$STATION==1&&df$YEAR==2001,df$RAIN<-"NA",df$RAIN<-df$RAIN)

使用此代码,df的值为5。

我想要得到的是一个看起来像这样的数据框:

     STATION YEAR   RAIN
[1,] "1"     "2000" "5" 
[2,] "1"     "2001" "NA"
[3,] "1"     "2002" "3" 
[4,] "2"     "2000" "4" 
[5,] "2"     "2001" "3" 
[6,] "2"     "2002" "5"

有人知道我在哪里错吗?

阿克伦

作业应在 ifelse

df$RAIN <- ifelse(df$STATION==1 & df$YEAR==2001, NA, df$RAIN)

另外,如果不重复您的'df $',那么包装到里面 with

df$RAIN <- with(df, ifelse(STATION == 1 & YEAR == 2001, NA, RAIN))
df
#  STATION YEAR RAIN
#1       1 2000    5
#2       1 2001   NA
#3       1 2002    3
#4       2 2000    4
#5       2 2001    3
#6       2 2002    5

注意:除了赋值外,&&应当为,&因为前者仅返回单个TRUE / FALSE作为输出。另外,data.frame(cbind将列的类型弄乱了,因为cbindmatrix首先返回并且matrix只能有一个类。

NA 不应该被引用。


关于为什么只5返回,如上所述,&&返回单个TRUE / FALSE

df$STATION==1&&df$YEAR==2001
#[1] FALSE

在中ifelse,该no零件变为活动状态,“ RAIN”的第一个值为5

ifelse(df$STATION==1&&df$YEAR==2001, NA,df$RAIN) # modified syntax related issues
#[1] 5

这将分配给整个列

数据

df <- data.frame(STATION,YEAR,RAIN)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在SCSS中的另一个变量中使用变量

如何在Github上将所有提交更改为另一个提交?

如何在另一个记录器类中使用另一个类的变量

如何在Python中使用另一个变量访问名称空间变量

当一个变量具有一个值而另一个变量具有多个值时,如何将两个变量插入表中?

如何使用ifelse将多个变量与r中的一个比较?

如何在颤抖中将一个有状态的小部件的状态从另一个状态更改为?

如何在Azure DevOps中的另一个变量中使用变量

如何在dplyr中至少基于一个条件(is.na)创建另一个变量?

调用在Java的另一个循环中创建的变量,以及如何在do ... while循环中具有多个条件

使用脚本中的变量将Shell脚本更改为另一个目录

如何在另一个函数中使用来自另一个函数的变量?

r如何根据条件更改多个列(在另一个列中重复)

如何将一个用户名更改为另一个?

如何在另一个变量的名称中使用shell变量的扩展值?

如何在EEx中的<%= render ...%>中使用另一个变量中的变量

如何在R中将POSIXct值数组的某个值更改为另一个?

如何用Java创建具有多个数据类型的数组以在另一个类中使用

R 将值更改为另一个

如何使用SQL将具有不同选择条件的多列插入到另一个表中

如何在另一个具有循环依赖性的单声道中使用单声道

如何通过单击具有多个框架的 tkinter 程序中的按钮将变量从一个类的 __init__ 传递到另一个类?

如何在按下时更改按钮的背景颜色并使用另一个按钮将颜色更改为另一种颜色

如何在某个位置将数字从列表更改为另一个?

如何使用 JQuery 将 HTML 标签更改为另一个标签?

将 OneToOne 链接更改为具有另一个 id 的另一个实体

如何在 C# 中使用另一个类更改变量

如何在 C++ 中使用具有另一个类对象的构造函数?

如何使用另一个 tibble 的多个条件有条件地更新 R tibble