User similarity metric
आपने दो नोड्स के बीच साझा नोड्स का सेट निकालने वाला फंक्शन लिख लिया है. अब आप दो यूज़र्स के बीच समानता का एक मेट्रिक निकालने वाला फंक्शन लिखेंगे: दो यूज़र्स के बीच साझा किए गए प्रोजेक्ट्स की संख्या को दूसरी पार्टीशन में मौजूद कुल नोड्स की संख्या से भाग देकर. इसके आधार पर आप आपस में मिलते-जुलते यूज़र्स ढूँढ सकते हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
इंटरमीडिएट Network Analysis in Python
अभ्यास निर्देश
user_similarity()फंक्शन को पूरा करें ताकिuser1औरuser2के बीच similarity निकाली जा सके.assertस्टेटमेंट्स से जाँचें किuser1औरuser2'users'पार्टीशन में आते हैं.- पिछले अभ्यास के
shared_partition_nodes()फंक्शन का उपयोग करकेuser1औरuser2के बीच साझा नोड्स का सेट प्राप्त करें. projectsपार्टीशन में नोड्स के अनुपात को लौटाएँ. यानी,shared_nodesकी संख्या को'projects'पार्टीशन में कुल नोड्स की संख्या से विभाजित करें.
- यूज़र्स
'u4560'और'u1880'के बीच similarity स्कोर निकालें. ऐसा करने के लिए:- पहले अपने
get_nodes_from_partition()फंक्शन से'projects'पार्टीशन के नोड्स प्राप्त करें. - फिर
user_similarity()फंक्शन का उपयोग करके स्कोर निकालें.
- पहले अपने
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
def user_similarity(G, user1, user2, proj_nodes):
# Check that the nodes belong to the 'users' partition
____ G.nodes[____]['bipartite'] == '____'
____ G.nodes[____]['bipartite'] == '____'
# Get the set of nodes shared between the two users
shared_nodes = ____
# Return the fraction of nodes in the projects partition
return len(____) / len(____)
# Compute the similarity score between users 'u4560' and 'u1880'
project_nodes = ____
similarity_score = ____
print(similarity_score)