Why df.index.map (dict) does not work as df ['column_name']. map (dict)?
Here is a small example using index.map:
import pandas as pd df = pd.DataFrame({'one': {'A': 10, 'B': 20, 'C': 30, 'D': 40, 'E': 50}}) map_dict = {'A': 'every', 'B': 'good', 'C': 'boy', 'D': 'does', 'E': 'fine'} df ''' one A 10 B 20 C 30 D 40 E 50 ''' df['two'] = df.index.map(mapper=map_dict)
This raises a TypeError: 'dict' object is not callable
Feeding it with lambdas:
df['two'] = df.index.map(mapper=(lambda x: map_dict[x])); df ''' one two A 10 every B 20 good C 30 boy D 40 does E 50 fine '''
However, resetting the index and displaying in a column works without expectations:
df.reset_index(inplace=True) df.rename(columns={'index': 'old_ndx'}, inplace=True)
Chuho source share