所以这是我的数据框:
date y x z u p
25.06.2009 0.582 1.145 0.603 26.36 0
26.06.2009 0.604 1.12 0.61 25.93 0
29.06.2009 0.647 1.108 0.647 25.35 0
30.06.2009 0.597 1.099 0.669 26.35 0
01.07.2009 0.604 1.085 0.633 26.22 0
02.07.2009 0.54 1.072 0.63 27.95 0
06.07.2009 0.543 1.048 0.57 29 0
07.07.2009 0.512 1.044 0.567 30.85 0
08.07.2009 0.496 1.029 0.533 31.3 0
09.07.2009 0.487 1.018 0.515 29.78 23
10.07.2009 0.482 1.007 0.504 29.02 66
13.07.2009 0.473 0.996 0.503 26.31 162
14.07.2009 0.471 0.985 0.503 25.02 235
15.07.2009 0.472 0.979 0.492 25.89 585
16.07.2009 0.441 0.969 0.486 25.42 668
17.07.2009 0.431 0.954 0.461 24.34 1080
20.07.2009 0.438 0.944 0.451 24.4 1883
21.07.2009 0.435 0.937 0.451 23.87 2398
现在我正在寻找一种方法来替换变量p中的0,例如1秒。有一个简单的方法吗?是否有可能用NA替换值?
答案 0 :(得分:4)
有很多方法可以做到这一点。你可以使用:
d$p[d$p==0]<-1 #replace with 1
d$p[d$p==0]<-NA #OR replace with NA
或者,您可以使用ifelse
命令
d$p=ifelse(d$p==0,1,d$p) #replace with 1
d$p=ifelse(d$p==0,NA,d$p) #replace with NA
其中 d
是您的数据框。
答案 1 :(得分:2)
如果要将数据存储在数据框中,则可以使用以下方法完成此操作:
df$p[df$p==0] <- 1
在上面的示例中,您的数据框将被称为df。如果您想用NA替换值,只需将NA(未加引号)替换为1即可。