У меня есть следующий список словарей, содержащих идентификатор домохозяйства (HID) для каждого года:
list_of_dicts = [{'HID':'1','year':'2017'},
{'HID':'1','year':'2018'},
{'HID':'2','year':'2017'},
{'HID':'2','year':'2018'},
{'HID':'3','year':'2017'},
{'HID':'3','year':'2018'}]
Я хочу прочитать в каждом диктовке и добавить новый числовой идентификатор. Я могу сделать что-то похожее на это, используя следующий код:
i = 0
for line in list_of_dicts:
line['id'] = i
i += 1
Однако, это заставляет элемент id
работать непрерывно следующим образом:
list_of_dicts = [{'HID':'1','year':'2017','id':1},
{'HID':'1','year':'2018','id':2},
{'HID':'2','year':'2017','id':3},
{'HID':'2','year':'2018','id':4},
{'HID':'3','year':'2017','id':5},
{'HID':'3','year':'2018','id':6}]
Я хочу выделить одну и ту же числовую переменную id
для каждого HID в течение каждого года, например:
list_of_dicts = [{'HID':'1','year':'2017','id':1},
{'HID':'1','year':'2018','id':1},
{'HID':'2','year':'2017','id':2},
{'HID':'2','year':'2018','id':2},
{'HID':'3','year':'2017','id':3},
{'HID':'3','year':'2018','id':3}]
Как контролировать распределение идентификаторов, чтобы оно было одинаковым для каждого домохозяйства в течение каждого года?