(Python / Pandas) Я делаю некоторый анализ данных по ценам на жилье в Великобритании, чтобы выяснить, соответствуют ли цены на жилье качеству близлежащих школ.Я сопоставил URN (уникальный ссылочный номер) трех ближайших школ с каждой транзакцией цены дома. Это столбцы URN_1, URN_2, URN_3 в данных.
Я хотел бы оценить модель фиксированных эффектов на данных, где фиксированные эффекты основаны на трех ближайших школах.Поэтому я хочу создать уникальный идентификатор для каждого кластера из трех школ, и я хочу, чтобы это не зависело от порядка школ. Например, свойство A и свойство B должны иметь одинаковые идентификаторы, несмотря на разный порядок школ.
Property URN_1 URN_2 URN_3
A 100053 100052 100054
B 100052 100054 100053
Кто-нибудь знает, как я создаю уникальные идентификаторы кластера с использованием Python?
Я пытался использовать .groupby () для создания идентификатора с кодом ниже, но это дает другой кластеридентификаторы, когда порядок школ различен.
Вот что я пробовал:
import pandas as pd
URN1=[1,2,3,4,5]
URN2=[5,4,3,2,1]
URN3=[1,2,3,2,1]
lst=['a','b','c','d','e']
df=pd.DataFrame(list(zip(URN1,URN2,URN3)),
columns['URN_1','URN_2','URN_3'],index=lst)
df['clusterid']=df.groupby(['URN_1','URN_2','URN_3']).ngroup()
print(df)
Я бы хотел, чтобы наблюдения 'a' и 'e' имели одинаковые идентификаторы кластера, но они дают разные идентификаторыспособ.