Cara perbaikan di r: penggantian ada baris x, data ada y


Pesan kesalahan yang mungkin Anda temui saat menggunakan R adalah:

 Error in `$<-.data.frame`(`*tmp*`, conf_full, value = c("West", "West",: 
  replacement has 3 rows, data has 5

Kesalahan ini terjadi ketika Anda mencoba menambahkan kolom baru ke bingkai data yang nilainya didasarkan pada kolom yang sudah ada, namun tidak dapat membuat kolom baru terlebih dahulu.

Contoh berikut menunjukkan cara mengatasi kesalahan ini dalam praktiknya.

Bagaimana cara mereproduksi kesalahan tersebut

Misalkan kita membuat bingkai data berikut di R:

 #create data frame
df <- data. frame (conference=c('W', 'W', 'W', 'E', 'E'),
                 points=c(99, 90, 86, 88, 95),
                 assists=c(33, 28, 31, 39, 34))	

#view data frame
df

  conference points assists
1 W 99 33
2 W 90 28
3 W 86 31
4 E 88 39
5 E 95 34

Sekarang misalkan kita mencoba menambahkan kolom baru ke bingkai data bernama conf_full :

 #attempt to create new column based on conference name
df$conf_full[which(df$conference==' W ')] <- ' West '
df$conf_full[which(df$conference==' E ')] <- ' East '

Error in `$<-.data.frame`(`*tmp*`, conf_full, value = c("West", "West",: 
  replacement has 3 rows, data has 5

Kami menerima kesalahan karena nama variabel conf_full belum ada, yang berarti kami belum dapat memberikan nilai pada kolom ini.

Bagaimana menghindari kesalahan tersebut

Untuk menghindari kesalahan ini, pertama-tama kita dapat membuat variabel conf_full dan menetapkan nilai NA ke dalamnya:

 #create conf_full variable
df$conf_full <- NA

Sekarang variabelnya sudah ada, kita dapat memberikan nilai padanya:

 #create new column based on conference
df$conf_full[which(df$conference==' W ')] <- ' West '
df$conf_full[which(df$conference==' E ')] <- ' East '

#view updated data frame
df

  conference points assists conf_full
1 W 99 33 West
2 W 90 28 West
3 W 86 31 West
4 E 88 39 East
5 E 95 34 East

Perhatikan bahwa kami tidak menerima kesalahan apa pun kali ini karena kami pertama kali membuat variabel conf_full sebelum mencoba memberikan nilai padanya.

Sumber daya tambahan

Tutorial berikut menjelaskan cara memperbaiki kesalahan umum lainnya di R:

Cara memperbaikinya di R: argumen melibatkan jumlah baris yang berbeda
Cara memperbaiki kesalahan R: dalam memilih argumen yang tidak digunakan
Cara memperbaiki di R: penggantian memiliki panjang nol

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *