Skip to content
Advertisement

Add features to the “numeric” dataset whose categorical value must be mapped using a conversion formula

I have this dataset:

enter image description here

This is the request: “Add the Mjob and Fjob attributes to the “numeric” dataset whose categorical value must be mapped using a conversion formula of your choice.”

Does anyone knows how to do it? For example: if ‘at_home’ value become ‘1’ in Mjob, I want the same result in the Fjob column. Same categorical values must have the same integer values transformation.

Advertisement

Answer

You can use the map function with a pandas Series/Column to map a categorical variable from string data to numeric data. For example, with the following pandas dataframe:

data = np.array([
   ['at_home','teacher'],
   ['at_home','other'],
   ['at_home','other'],
   ['health', 'services']
])
df = pd.DataFrame(data=data, columns=['Mjob', 'Fjob'])

two new columns are created with the map function

map_dict = {'at_home':1, 'teacher':2, 'other':3, 'health':4, 'services':5}
df['Mjob_numeric'] = df['Mjob'].map(map_dict)
df['Fjob_numeric'] = df['Fjob'].map(map_dict)
User contributions licensed under: CC BY-SA
6 People found this is helpful
Advertisement