0 votes
1 view
in Data Science by (17.6k points)

Getting below error in R coding.

in my Brand_X.xlsx dataset, there are few NA values which I am trying to compute using KNN imputation but I am getting below error. whats wrong here? Thanks!

> library(readxl)

> Brand_X <- read_excel("Brand_X.xlsx")

> str(Brand_X)

Classes ‘tbl_df’, ‘tbl’ and 'data.frame':   101 obs. of  8 variables:

 $ Rel_price_lag5: num  108 111 105 103 109 104 110 114 103 108 ...

 $ Rel_price_lag1: num  110 109 217 241 855 271 234 297 271 999 ...

 $ Rel_Price     : num  122 110 109 217 241 855 271 234 297 271 ...

 $ Promo         : num  74 29 32 24 16 31 22 7 32 22 ...

 $ Loy_HH        : num  37 26 35 30 26 26 31 20 34 20 ...

 $ Nonloy_HH     : num  46 70 55 54 54 59 55 56 57 45 ...

 $ Week          : num  56 57 58 59 60 61 62 63 64 65 ...

 $ Share_X       : num  25 23 50 33 22 44 29 17 41 27 ...

> library(DMwR)

> anyNA(Brand_X)

[1] TRUE

> knnImputation(Brand_X)

Error: Column indexes must be at most 1 if positive, not 22, 25, 37, 8, 47, 2, 50, 40, 52, 67

>

1 Answer

0 votes
by (38.2k points)

We should transform our tbl object into data.frame object.

#check your df class, df is actually a tbl object 

class(df) df_new <- as.data.frame(df)

If you want to learn more about R Programming visit this R Programming Course.

Welcome to Intellipaat Community. Get your technical queries answered by top developers !


Categories

...