programing

if/while(조건) {: TRUE/FALSE가 필요한 값 누락

javamemo 2023. 6. 24. 08:43
반응형

if/while(조건) {: TRUE/FALSE가 필요한 값 누락

다음 오류 메시지를 받았습니다.

Error in if (condition) { : missing value where TRUE/FALSE needed

또는

Error in while (condition) { : missing value where TRUE/FALSE needed

그것은 무엇을 의미하며 어떻게 예방합니까?

의 평가condition결과적으로NA.그if조건부는 다음 중 하나를 가져야 합니다.TRUE또는FALSE결과.

if (NA) {}
## Error in if (NA) { : missing value where TRUE/FALSE needed

이는 계산 결과로 인해 실수로 발생할 수 있습니다.

if(TRUE && sqrt(-1)) {}
## Error in if (TRUE && sqrt(-1)) { : missing value where TRUE/FALSE needed

객체가 다음 용도로 사용되지 않는지 테스트합니다.x == NA.


관련 오류도 참조하십시오.

if/while(조건) {: 인수의 길이가 0인 경우 오류

if/while(조건) 오류: 인수를 논리적으로 해석할 수 없습니다.

if (NULL) {}
## Error in if (NULL) { : argument is of length zero

if ("not logical") {}
## Error: argument is not interpretable as logical

if (c(TRUE, FALSE)) {}
## Warning message:
## the condition has length > 1 and only the first element will be used

null 또는 빈 문자열을 확인할 때 이 오류가 발생했습니다.

if (x == NULL || x == '') {

로 바꿨습니다.

if (is.null(x) || x == '') {

와 함께 작동합니다."NA"을 위한 것이 아닌NA

comments = c("no","yes","NA")
  for (l in 1:length(comments)) {
    #if (!is.na(comments[l])) print(comments[l])
    if (comments[l] != "NA") print(comments[l])
  }

나는 나의 것에서 같은 오류를 얻었습니다.forloops당황하여if진술들.저는 이 문제를 해결하기 위해 저의 상태를 마무리했습니다.isTRUE.

if(isTRUE(condition)==TRUE) {do something}

언급URL : https://stackoverflow.com/questions/7355187/error-in-if-while-condition-missing-value-where-true-false-needed

반응형