У меня есть пандас DataFrame, подобный этому:
И я хотел бы создать симметричную матрицу, подобную этой:
Где значение - это длина пересечения двух списков.Поэтому я сделал эту функцию:
def intersectSize(l1, l2):
return len(set(l1) & set(l2))
Существует ли функция, похожая на эту:
def createSymMatrix(array, func):
...
return matrix
, где array
- мой начальный кадр данных, а func
- этоintersectSize
функция?
РЕДАКТИРОВАТЬ: понял с этим двумя вкладышем:
array = [[len(set(l1)&set(l2)) for l1 in df]] for l2 in df]
adj = pd.DataFrame(data=array, index=df.index, columns=df.index)