Cara memperbaiki kesalahan r: di aggregate.data.frame(): argumen harus memiliki panjang yang sama


Kesalahan yang mungkin Anda temui di R adalah:

 Error in aggregate.data.frame(as.data.frame(x), ...): 
  arguments must have same length 

Kesalahan ini terjadi ketika Anda mencoba menggunakan fungsi Aggregate() untuk meringkas nilai dalam satu atau lebih kolom bingkai data di R tetapi tidak dapat menentukan nama bingkai data saat mereferensikan kolom.

Tutorial ini menjelaskan dengan tepat cara memperbaiki kesalahan ini.

Bagaimana cara mereproduksi kesalahan tersebut

Misalkan kita memiliki bingkai data berikut di R:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'C', 'C'),
                 points=c(5, 9, 12, 14, 14, 13, 10, 6, 15, 18))

#view data frame
df

   team points
1 to 5
2 to 9
3 to 12
4 to 14
5 to 14
6 B 13
7 B 10
8 B 6
9 C 15
10 C 18

Sekarang misalkan kita mencoba menggunakan fungsi Aggregate() untuk menghitung nilai poin rata-rata, yang dikelompokkan berdasarkan tim :

 #attempt to calculate mean points value by team
aggregate(df$points, list(' team '), FUN=mean)

Error in aggregate.data.frame(as.data.frame(x), ...): 
  arguments must have same length

Kami menerima kesalahan karena kami gagal menentukan nama blok data dalam argumen list() .

Bagaimana cara memperbaiki kesalahan tersebut

Cara untuk memperbaiki kesalahan ini adalah dengan menggunakan df$team , bukan hanya “team” dalam argumen list() :

 #calculate mean points value by team
aggregate(df$points, list(df$team), FUN=mean)

  Group.1 x
1 A 10.800000
2 B 9.666667
3 C 16.500000

Perhatikan bahwa kami tidak menerima kesalahan apa pun kali ini karena kami menentukan nama bingkai data dalam argumen list() .

Perhatikan bahwa jika Anda menggunakan beberapa nama kolom dalam argumen list() , maka Anda perlu menentukan nama bingkai data untuk setiap nama kolom, jika tidak, Anda akan menerima kesalahan.

Sumber daya tambahan

Tutorial berikut menjelaskan cara mengatasi kesalahan umum lainnya di R:

Cara memperbaiki di R: Nama tidak sesuai dengan nama sebelumnya
Cara memperbaikinya di R: panjang benda yang lebih panjang bukan kelipatan panjang benda yang lebih pendek
Cara memperbaikinya di R: kontras hanya dapat diterapkan pada faktor dengan 2 level atau lebih

Tambahkan komentar

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