我有一个看起来像这样的字符向量:
"Internet" "Internet" "-1" "-5" "Internet" "Internet"
我想将所有负数值(-1、-5 等)的值替换为NA
.
我用这段代码做到了:
hintsData$WhereSeekHealthInfo[hintsData$WhereSeekHealthInfo < 0] <- NA
这似乎有效:
head(hintsData$WhereSeekHealthInfo)
# [1] "Internet" "Internet" NA NA "Internet" "Internet"
但是当我这样做的时候
> sum(hintsData$WhereSeekHealthInfo == "Internet")
# [1] NA
基本上我不能再对这些值求和了,因为我以某种方式改变了向量?
在运行 NA 代码之前,我能够运行代码并获得以下信息:
> sum(hintsData$WhereSeekHealthInfo == "Internet")
# [1] 1691
那么,如何用 NA 替换“-1”、“-5”等值,但仍然得到:
> sum(hintsData$WhereSeekHealthInfo == "Internet")
# [1] 1691
如果您有任何想法,请告诉我。我确实发现了有关替换为 NA 的其他问题,但由于我不知道为什么一旦我替换为 NA 我就不能再计算值了,我不确定要搜索或排除什么。