Глубокое погружение — сеть Twitter, часть II
Теперь вы проведёте аналогичный анализ, но уже для центральности по посредничеству! Помните, что она вычисляется с помощью nx.betweenness_centrality(G).
Это упражнение является частью курса
Введение в анализ сетей на Python
Инструкции к упражнению
- Напишите функцию
find_node_with_highest_bet_cent(G), которая возвращает узел (или узлы) с наибольшей центральностью по посредничеству.- Вычислите центральность по посредничеству для
G. - Найдите максимальное значение центральности по посредничеству с помощью функции
max()отlist(bet_cent.values()). - Выполните итерацию по словарю центральности по посредничеству,
bet_cent.items(). - Если значение центральности по посредничеству
vтекущего узлаkравноmax_bc, добавьте его в множество узлов.
- Вычислите центральность по посредничеству для
- Используйте написанную функцию, чтобы найти узел (или узлы) с наибольшей центральностью по посредничеству в
T. - Напишите оператор проверки (
assert), подтверждающий правильность найденного узла. Этот шаг уже выполнен за вас — нажмите «Отправить ответ», чтобы увидеть результат!
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Define find_node_with_highest_bet_cent()
def find_node_with_highest_bet_cent(G):
# Compute betweenness centrality: bet_cent
bet_cent = ____
# Compute maximum betweenness centrality: max_bc
max_bc = ____
nodes = set()
# Iterate over the betweenness centrality dictionary
for k, v in ____:
# Check if the current value has the maximum betweenness centrality
if ____ == ____:
# Add the current node to the set of nodes
____
return nodes
# Use that function to find the node(s) that has the highest betweenness centrality in the network: top_bc
top_bc = ____
print(top_bc)
# Write an assertion statement that checks that the node(s) is/are correctly identified.
for node in top_bc:
assert nx.betweenness_centrality(T)[node] == max(nx.betweenness_centrality(T).values())