Cara memperbaiki di r: nilai hilang di mana diperlukan benar/salah
Kesalahan yang mungkin Anda temui di R adalah:
Error in if (x[i] == NA) {: missing value where TRUE/FALSE needed
Kesalahan ini terjadi ketika Anda membandingkan nilai dengan NA dalam pernyataan if di R menggunakan sintaks x == NA .
Pernyataan if mengharapkan nilai TRUE atau FALSE, jadi sebaiknya gunakan is.na(x) karena fungsi ini selalu mengembalikan TRUE atau FALSE.
Bagaimana cara mereproduksi kesalahan tersebut
Misalkan kita mencoba melakukan iterasi melalui daftar nilai dalam vektor di R dan mencetak kata “hilang” setiap kali ada nilai NA dalam vektor:
#define vector with some missing values x <- c(2, NA, 5, 6, NA, 15, 19) #loop through vector and print "missing" each time an NA value is encountered for (i in 1:length(x)) { if (x[i] == NA) { print(' Missing ') } } Error in if (x[i] == NA) {: missing value where TRUE/FALSE needed
Kami menerima kesalahan karena kami menggunakan sintaks x[i] == NA .
Bagaimana cara memperbaiki kesalahan tersebut
Kita perlu mengubah sintaksnya menjadi is.na(x) sebagai berikut:
#define vector with some missing values x <- c(2, NA, 5, 6, NA, 15, 19) #loop through vector and print "missing" each time an NA value is encountered for (i in 1:length(x)) { if (is. na (x[i])) { print(' Missing ') } } [1] “Missing” [1] “Missing”
Perhatikan bahwa kita tidak menerima kesalahan dan dapat mencetak kata “hilang” setiap kali kita menemukan nilai NA dalam vektor.
Sumber daya tambahan
Tutorial berikut menjelaskan cara memperbaiki kesalahan umum lainnya di R:
Cara Memperbaiki: NAS Diperkenalkan oleh Paksaan
Cara Memperbaiki: Jumlah Indeks pada Matriks Salah
Cara perbaikan : jumlah barang yang akan diganti bukan kelipatan dari panjang penggantian