I have the following dataframe:
amount catcode cid cycle date di feccandid type 0 1000 E1600 N00029285 2014 2014-05-15 D H8TX22107 24K 1 5000 G4600 N00026722 2014 2013-10-22 D H4TX28046 24K 2 4 C2100 N00030676 2014 2014-03-26 D H0MO07113 24Z
I want to make dummy variables for the values in column type. There about 15. I have tried this:
pd.get_dummies(df['type'])
And it returns this:
24A 24C 24E 24F 24K 24N 24P 24R 24Z date 2014-05-15 0 0 0 0 1 0 0 0 0 2013-10-22 0 0 0 0 1 0 0 0 0 2014-03-26 0 0 0 0 0 0 0 0 1
What I would like is to have a dummy variable column for each unique value in Type
Answers:
Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.
Method 1
You can try :
df = pd.get_dummies(df, columns=['type'])
Method 2
Consider I have the following dataframe:
Survived Pclass Sex Age Fare 0 0 3 male 22.0 7.2500 1 1 1 female 38.0 71.2833 2 1 3 female 26.0 7.9250 3 1 1 female 35.0 53.1000 4 0 3 male 35.0 8.0500
There are two ways to implement get_dummies:
Method 1:
one_hot = pd.get_dummies(dataset, columns = ['Sex'])
This will return:
Survived Pclass Age Fare Sex_female Sex_male 0 0 3 22 7.2500 0 1 1 1 1 38 71.2833 1 0 2 1 3 26 7.9250 1 0 3 1 1 35 53.1000 1 0 4 0 3 35 8.0500 0 1
Method 2:
one_hot = pd.get_dummies(dataset['Sex'])
This will return:
female male 0 0 1 1 1 0 2 1 0 3 1 0 4 0 1
Method 3
Another way is:
pd.get_dummies(df.type)
Method 4
Please try :
type_dummies = pd.get_dummies(df['type'],drop_first=True) df = pd.concat([df,type_dummies],axis=1)
All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0