当R无法识别连续变量时,如何在R中重新编码缺失数据?

时间:2013-05-03 16:45:42

标签: r missing-data

我有一个连续的变量,有一些'NA',并且出于某种原因,当我试图查看变量(即平均摘要)时,这就是出现的结果:

Summary(THM1$Br03)
Length  Class   Mode 
     0   NULL   NULL 

 mean(THM$Br03)
 [1] NA

这是查看前几行时的输出:

 WSZ_Code Treatment_Code Year Month  TTHM CL2_FREE    BrO3 Colour   PH  TURB
1          2              3 1996     1  30.7    0.350 0.00030   0.75 7.40 0.055
3          7              4 1996     2  60.4    0.050 0.00055   0.75 7.10 0.055
4          7              4 1996     2  58.1    0.150      NA   0.75 7.50 0.055

但是当我做str(THM)时:

'data.frame':   345 obs. of  10 variables:


$ WSZ_Code      : int  2 6 7 7 7 5 1 5 8 1 ...
$ Treatment_Code: int  3 1 4 4 4 2 2 2 1 2 ...
$ Year          : int  1996 1996 1996 1996 1996 1996 1996 1996 1996 1996 ...
$ Month         : int  1 2 2 2 3 3 3 3 3 3 ...
$ TTHM          : num  30.7 24.8 60.4 58.1 62.2 40.3 20.8 36.3 40.5 47.8 ...
$ CL2_FREE      : num  0.35 0.25 0.05 0.15 0.2 0.15 0.15 0.025 0.25 0.05 ...
$ BrO3          : num  0.0003 0.00055 0.00055 NA NA 0.0014 NA NA NA NA ...

好的,你可以看到前几个值,然后是NA,但我无法总结该变量中的任何数据!我只需要对数据进行一些汇总统计,然后查看Br03和TTHM之间的关系

当我尝试这个时:

mean(THM$Br03, na.rm=TRUE)
[1] NA
Warning message:
In mean.default(THM$Br03, na.rm = TRUE) :
  argument is not numeric or logical: returning NA

这就是发生的事情。

我不知道如何将变量重新编码为0或99,以便分析变量。

1 个答案:

答案 0 :(得分:2)

您拼写的列名称错误:THM1$Br03应该是THM1$BrO3(请注意O vs 0)。这就是为什么THM$Br03为NULL。