Quantcast
Channel: Active questions tagged r - Stack Overflow
Viewing all articles
Browse latest Browse all 201945

Error when trying to use one_hot encoding

$
0
0

I know this may be a potential duplicate question, but I found other answers didn't work in my situation.

I am using the following dataset:

> str(total_data)
'data.frame':   32260 obs. of  13 variables:
 $ age            : int  40 42 44 32 25 31 30 30 27 28 ...
 $ workclass      : Factor w/ 4 levels "Other-Unknown",..: 3 2 2 1 2 2 2 3 2 3 ...
 $ education      : Ord.factor w/ 7 levels "1"<"2"<"3"<"4"<..: 2 3 2 2 2 3 2 2 2 2 ...
 $ marital.status : Factor w/ 5 levels "Divorced","Married",..: 2 1 2 3 3 3 3 2 2 3 ...
 $ occupation     : Factor w/ 6 levels "Blue-Collar",..: 5 3 6 2 1 6 6 1 1 6 ...
 $ race           : Factor w/ 5 levels "Amer-Indian-Eskimo",..: 1 5 1 1 5 5 5 5 5 5 ...
 $ sex            : Factor w/ 2 levels "Female","Male": 2 2 2 1 2 2 2 2 1 1 ...
 $ hours.per.week : int  84 40 40 38 40 38 48 70 35 38 ...
 $ naitive.country: Factor w/ 41 levels "?","Cambodia",..: 39 39 39 39 39 39 39 12 39 39 ...
 $ classifier     : chr  "<=50K""<=50K"">50K""<=50K" ...
 $ class_num      : Factor w/ 2 levels "1","2": 1 1 2 1 1 1 1 2 1 1 ...
 $ age_norm       : num  0.315 0.342 0.37 0.205 0.11 ...
 $ hours_norm     : num  0.847 0.398 0.398 0.378 0.398 ...

I'm trying to encode the factors into binary using one_hot() but receive the following error message:

encoded_data <- one_hot(total_data, dropCols = FALSE)

ERROR MESSAGE:

Error in `[.data.frame`(dt, , cols, with = FALSE) : 
  unused argument (with = FALSE)

I'm not sure what the "with" argument is as I don't see it in the R documentation.

I also saw that someone suggested to use model.matrix. However, when I use that, my ordered factor gets encoded as well, which is what I'm trying to avoid.

This is what happens to my ordered factor variable:

education.L  education.Q  education.C  education^4  education^5  education^6
-3.779645e-01  9.690821e-17  4.082483e-01  -0.5640761  4.364358e-01 -0.19738551  
-1.889822e-01  -3.273268e-01  4.082483e-01  0.0805823 -5.455447e-01 0.49346377

I'm also not sure why there are sometimes letters or numbers after the attribute name. i.e. education**.L** vs education**^5**


Viewing all articles
Browse latest Browse all 201945

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>