У меня есть несколько похожих операций с использованием dataframe apply и лямбда-функции. Некоторые из них занимают много времени. Есть ли способ сделать все один раз, вместо того, чтобы повторить это четыре раза? Хотя я могу упростить код, используя функцию и / или al oop, это не сэкономит время. Я просто прочитал более простой вопрос в другом посте , добавив несколько столбцов в фрейм данных с помощью df.apply и лямбда-функции , однако я не думаю, что это для той же цели.
df['cn'] = df.appy(lambda x: len(list(nx.common_neighbors(G, x.n1, x.n2))), axis=1)
df['jc'] = df.appy(lambda x: tuple(nx.jaccard_coefficient(G, [(x.n1, x.n2)]))[0][-1], axis=1)
df['ra'] = df.appy(lambda x: tuple(nx.resource_allocation(G, [(x.n1, x.n2)]))[0][-1], axis=1)
df['pa'] = df.appy(lambda x: tuple(nx.preferential_attachment(G, [(x.n1, x.n2)])[0][-1], axis=1)