as.numeric函数不会更改向量类型

时间:2019-04-10 23:02:05

标签: r

我的数据集中有一列数字和NA。当我尝试导入它时,RStudio将其归类为“字符”而不是“数字”。

我尝试使用“ as.numeric”函数进行转换。我得到警告:“ NAs由强制引入”,然后什么也没有发生。

  str(my_data)
   Classes ‘tbl_df’, ‘tbl’ and 'data.frame':    131 obs. of  6 variables:
   $ labs_TotalChol       : num  NA 149 149 188 171 147 207 NA 131 136 ...
 $ labs_Creatinine      : num  NA NA NA NA 0.8 1 NA NA 0.7 0.7 ...
 $ PET_globalCFR        : chr  NA "2.87" "2.65" "2.65" ...
 $ RHI                  : num  NA 1.49 1.91 1.5 3.03 1.72 1.93 2.67 1.28 2.06 ...
 $ PET_avghr_stress     : num  NA 90 99.7 76 73 ...
 $ PET_RPPCorrected_rest: num  NA 2.09 2.1 2.24 2.11 2 2.75 1.07 2.72 2.24 ...

我使用代码:

as.numeric(my_data$PET_globalCFR)

并获得:

  [1]   NA 2.87 2.65 2.65 2.46 2.80 2.93 2.02 3.77 2.62 2.06   NA 2.73 2.40 2.95 2.97 2.69 2.61 2.17 2.80 2.59   NA 1.87 2.23   NA
 [26] 1.34 2.06 2.24 1.94 1.73 1.63   NA 1.72   NA 1.94 1.25 3.38   NA 2.09 2.68 2.91 1.94 2.41 2.50   NA   NA 2.79 2.14 3.77 2.10
 [51] 2.88 2.07 2.78   NA   NA   NA 1.54 2.38 2.29 1.40 2.21 2.36   NA 2.30 2.54 2.29 2.28 2.57 3.53   NA 2.34 3.84 1.50 2.19 2.16
 [76] 1.20 2.73 1.35 3.48 2.51 1.42 1.74 1.68   NA   NA 1.98   NA   NA 2.44 1.62 2.99 1.34 1.39 2.16 4.58 1.74   NA 2.21   NA 1.41
[101] 0.95 2.60 2.30 1.67 1.81 1.79   NA 1.60 3.24 3.20   NA 1.46   NA   NA   NA 2.65   NA   NA 2.80 1.67 3.49   NA   NA   NA   NA
[126]   NA   NA   NA 1.54   NA   NA
Warning message:
NAs introduced by coercion

1 个答案:

答案 0 :(得分:0)

也许您可以先将其导入为字符,然后过滤以除去NA(!is.NA),然后转换为数字。