Cara memperbaikinya di r: error: mencoba menerapkan non-fungsi


Kesalahan yang mungkin Anda temui di R adalah:

 Error: attempt to apply non-function

Kesalahan ini biasanya terjadi ketika Anda mencoba mengalikan nilai di R tetapi lupa menyertakan tanda perkalian ( * ).

Tutorial ini menjelaskan dengan tepat cara menangani kesalahan ini dalam dua skenario berbeda.

Skenario 1: Mengatasi kesalahan dalam perkalian bingkai data

Misalkan kita membuat bingkai data berikut di R:

 #create data frame
df <- data. frame (x=c(1, 2, 6, 7),
                 y=c(3, 5, 5, 8))

#view data frame
df

  xy
1 1 3
2 2 5
3 6 5
4 7 8

Sekarang misalkan kita mencoba membuat kolom baru sama dengan kolom x dikalikan 10:

 #attempt to create new column
df$x_times_10 <- df$x(10)

Error: attempt to apply non-function

Kita mendapat error karena lupa menyertakan tanda perkalian ( * ).

Untuk mengatasi kesalahan ini, Anda harus menyertakan tanda perkalian:

 #create new column
df$x_times_10 <- df$x*(10)

#view updated data frame
df

  xy x_times_10
1 1 3 10
2 2 5 20
3 6 5 60
4 7 8 70

Skenario 2: Selesaikan kesalahan perkalian vektor

Misalkan kita membuat dua vektor di R dan mencoba mengalikan elemen-elemen yang bersesuaian:

 #create two vectors
x <- c(1, 2, 2, 2, 4, 5, 6)
y <- c(5, 6, 8, 7, 8, 8, 9)

#attempt to multiply corresponding elements in vectors
(x)(y)

Error: attempt to apply non-function

Kami menerima kesalahan karena kami tidak menyertakan tanda perkalian.

Untuk mengatasi kesalahan ini, Anda harus menyertakan tanda perkalian:

 #multiply corresponding elements in vectors
(x)*(y)

[1] 5 12 16 14 32 40 54

Perhatikan bahwa tidak ada kesalahan yang dihasilkan saat ini.

Sumber daya tambahan

Tutorial berikut menjelaskan cara memperbaiki kesalahan umum lainnya di R:

Cara memperbaikinya: kondisi memiliki panjang > 1 dan hanya elemen pertama yang akan digunakan
Cara memperbaiki: argumen non-numerik dari operator biner
Cara memperbaikinya: dim(X) harus mempunyai panjang positif
Cara memperbaiki: kesalahan dalam memilih argumen yang tidak digunakan

Tambahkan komentar

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