{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Overview\n", "\n", "This week we'll talk about some of the charachteristics of real-world social networks. The structure is the following: \n", "\n", "* Part 1: A crash course on real-world social networks.\n", "* Part 2: Visualizing the network of Computational Social Scientists\n", "* Part 3: Properties of the real-world network of Computational Social Scientists\n", "\n", "\n", "> *Reading*: Read [Chapter 3 of the Network Science book.](http://networksciencebook.com/chapter/3). The most important sections are 3.1 to 3.4 and 3.8 to 3.10, so focus on that." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Part 1 : Empirical properties of real-world social networks" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Researchers in Computational Social Science have widely studied the properties of real-world social networks. The very cool thing they found is that many widely different social networks (from face-to-face interactions among classmates, to the Facebook network, to collaboration networks among scientists, etc) present some commonalities. We refer to those as 'Universalities'.\n", "In the video-lecture below, I will introduce _some_ of the things we know to be true for most real-world social networks. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ ">> **_Video Lecture_**. Start by watching the [\"Properties of empirical social networks\"](https://youtu.be/jHdnehLku54). \n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "image/jpeg": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAUDBAgICAgICAgICAgGBwgIBwcHBwgICAgICAgICAgICAgIChALCAgOCQgIDRUNDhERExMTCAsWGBYSGBASExIBBQUFBwYHDwgIDxgVEhUeHh4dGBseGh0ZHhsdGxwaHh4YGx4fHR0fGh0eHx8ZHxsVHxwWGx0eFx0eHR4YHR4eHf/AABEIAWgB4AMBIgACEQEDEQH/xAAdAAEAAwEBAQEBAQAAAAAAAAAABgcIBQQDAQIJ/8QAUBAAAAYCAAIGBgYGBwQHCQAAAAECAwQFBhESIQcTGDGU1RQVIkFUVQgyUWGBkRYjM3FyoSQ0QlJikrJDgoOTF1NzdLPB0yVERWSElaKjsf/EABkBAQADAQEAAAAAAAAAAAAAAAABAgMEBf/EADERAQABAwIEAwYFBQAAAAAAAAABAhEhAzESQVFhBLHwIjJxocHhEyOBkdFCYrLi8f/aAAwDAQACEQMRAD8AxkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0z2Ksq+Px/wAZY+XB2Ksq+Px/xlj5cAzMA0z2Ksq+Px/xlj5cHYqyr4/H/GWPlwDMwDTPYqyr4/H/ABlj5cHYqyr4/H/GWPlwDMwDTPYqyr4/H/GWPlwdirKvj8f8ZY+XAMzANM9irKvj8f8AGWPlwdirKvj8f8ZY+XAMzANM9irKvj8f8ZY+XB2Ksq+Px/xlj5cAzMA0z2Ksq+Px/wAZY+XB2Ksq+Px/xlj5cAzMA0z2Ksq+Px/xlj5cHYqyr4/H/GWPlwDMwDTPYqyr4/H/ABlj5cHYqyr4/H/GWPlwDMwDTPYqyr4/H/GWPlwdirKvj8f8ZY+XAMzANM9irKvj8f8AGWPlwdirKvj8f8ZY+XAMzANM9irKvj8f8ZY+XB2Ksq+Px/xlj5cAzMA0z2Ksq+Px/wAZY+XB2Ksq+Px/xlj5cAzMA0z2Ksq+Px/xlj5cHYqyr4/H/GWPlwDMwDTPYqyr4/H/ABlj5cHYqyr4/H/GWPlwDMwDTPYqyr4/H/GWPlwdirKvj8f8ZY+XAMzANM9irKvj8f8AGWPlwdirKvj8f8ZY+XAMzANM9irKvj8f8ZY+XB2Ksq+Px/xlj5cAzMA0z2Ksq+Px/wAZY+XB2Ksq+Px/xlj5cAzMA0z2Ksq+Px/xlj5cHYqyr4/H/GWPlwDMwDTPYqyr4/H/ABlj5cHYqyr4/H/GWPlwDMwDTPYqyr4/H/GWPlwdirKvj8f8ZY+XAMzANM9irKvj8f8AGWPlwdirKvj8f8ZY+XAMzANM9irKvj8f8ZY+XB2Ksq+Px/xlj5cAzMA0z2Ksq+Px/wAZY+XB2Ksq+Px/xlj5cAzMA0z2Ksq+Px/xlj5cHYqyr4/H/GWPlwDMwDTPYqyr4/H/ABlj5cHYqyr4/H/GWPlwDMwDTPYqyr4/H/GWPlwdirKvj8f8ZY+XAMzANM9irKvj8f8AGWPlwdirKvj8f8ZY+XAMzANM9irKvj8f8ZY+XB2Ksq+Px/xlj5cA3+AAAAAbAAAAAAAAAAAAAAAAAAAAAAAAAADYAAAAAAAAAAAABsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFW9LMqVOtqnHY8l6GxYNSJtpIiuG1IXFY9lEdp1PNtK1kslGXM9J93ER/xL6Im4LkaXjj7tdMjyGlSEvy5T0WbG3p5qS2tSuJRp7jL3/YejT7OlemntT6u/rI5zX6cn48yvQokuyYMkiJXUGrkbrauJRJ9/F92j5d1mlzc9RBpKy3qnHJDKptraQm4yIjCFktxLKHuNL7iuHh7taMy9+0+npzqfh0/hTERbPS9596OeNvll1U8XDHDOOf3dq66RJR2Emtp6h22eq0oOwdOY1CjsrcSS0stuOoV1z3CZbLSSI+W+R68Vh0yRW6yNYtwpTq3rX1TJrzUhuXFmEh5S2lJP2Vr4miSRbLfWFzLRkOdBkysbt7tb9ZYz4V7JROhy6uL6WonTbJLsaQ2lRGyZL3pR+yZa59+oqeIWpxIsx6C8h+2z1i5fhNpN1cKIspHtP8HJJJ4k7P7y3oWp0dDHFEWxm++M3z/FkxRp8/+4TP/pWsUyzrHcbkotnmUSIUNFjGcadjKNwlPPyuAijEk21EZcKz3yH3X0wIbqZti/XPtSKeybrrCu69CltPLebbUbTyU8LySJey5Fvh19hj1TquSeaxZhMOnERjbjCpRNmbJP8Apjq+qNzuJzhUR6+wxWme18qLW5W65GcR6Tl0GRD65BoRJR6VGNtSFK5KbUotbITpaWhq1U08MZ4ec85tMb/coo06piLdFn1HSLJ9MhRbWneq0XRqTWyVS2pKXHSTxlHkpbSRxX1I5knaiM+W+8dLGM6TOhWswoymypZdhGU0bpKN44HFtaVEkuAl8PcZHrfvEPt50zI7CjZbqbGAxS2TdnYybKP6OlDkdtaW4sc+I/STUpatrTy0ST589cWtk2VSxkVR6lspUm2sbR+ukxo5LguMz+Lq3HZPESWuEj2aOavd3ik+H06qcREVYxfvPfpbzROnTMd32ybpAspczEJUKE+li0TIlFDRYttlMdNk0Kiunoi0yk+MlLLhUbpaIjTsTK0z+xVKmRqugkWCapaW5ch2a1BQp3gJam4pOtqOSaSPW/ZIzI9bLRnASrJ8GDg8xVbPfKhKUmwixYxuS2evZQ2jbBmSu9KtmeiLX3kPlbQ5MiwtCu6/JLF1yW56khwHJLNO5BV/VkOKZdQ00rWusN3mX2GeyG06WlVa0RaIn/Ke8cu8br8FE9PU/F1M86RZc6HjE6rjyUsWV0yTrZS2463n2FPoOrd/wLcbUrrD9j9SWy56Hcj5dAr7PJpspiTGdr4FQ9YGcopDazdjn1LEZjRJbeJSib2StLNRHyIQeuorKJjeOmutmuP4/lCpk6EzHM5Po6HZpm4y0Zl1qT61vRpPXtd+iMy6eV4lPt38tNiK+z61g4/IrzltGyl52IhEhcYzV7JOkaOrUW9JUfMxarT0PcxFOYvf++PplM00bcv9o+iXRelCW0uG5a0UisgWr7bEWecxmT1bj/7AprCEJVFJf27VrfP3j8mdJ05c+xr62hfsHqd/gkL9PYjMm2baVpUlbiDPrlGaiJvR/U3xc9DgZjbT8kjQqhmls4Tq5sN20kWEbqIsNuK4l1wmXjPUlRqQRJ4C5l9m+Uo6MKyQxcZQ68w603MsmHIzrjakofbKMlJraUfJaSURlyHPVRpUUTVVTF+l5tvHe/Xn3ZzTRTF5iL9P1fhdKzTtVAsIdfLlv28k4kavQRJUiQg1k4Uh8yNDLSTQZcZ73xJ5d+vnCz6TIfm1FlVrq55VL81hKZjUxl6ORLbNSXm0J4Vkoj9ky/sn+NaQKe7jUVSwce3YhJt7FV6xVpcas+oW9xRlNpRp02D24auDvI0j2Yjjy0Xy5UKototfIop0Zt+z692RIlGRqNx43VrWxxkaUJSsy31e9EZ6Gk+H0KYqtbnab9Jxz+Vp63XnT04if181lfR4cUvGalS1KWo4x7UtRqUf6xfeZ8zFc9IyoH6RzSy1U5FUpqMmiUhUwq3XVF15rOIfKT1vHsz58i3ouAWb0DQH4uO1jEllxh9mOaXWXkGhxCusWelJVzI+Y4dtkVvVWFg3ZV0+6qJzqXa56thsSVxEGnS4b8ZBJUpCVb0tezPlzPZknPTqt4jUmnvtNp3/AKZ6/S6lM/mVW79ufJ+dGqotUxazY1y3OxtlspERv0lyW/Xm01xSWTWozVwnr2W/rfV5bMzMjpaktssWM6hlQqWWtpKLJUxh11lt9RJZflQkJ4mWVGpPMlq1su/ZbiVZhMq2VkkiJWLooVzUpiQ4UlCY65EtCutTJejt7THI1Fwnrf11H3me/Xk1tZ3FG3jjdHZxrCS1EhzXpUYm6+KhhbRvSES+LgfQZNeySOftfcW9Z0tOvUvVacxeb7RaM4xM9ZzmOsrzTTNWc9eycX/SDIKwfrKiqctpFe007PWUxmHHj9enrGmidcSrrH1I0rh0RaUXPv1w3swhWU7FZCok5qRJmWjLTa3zjnDkR2UIktymOEylIPkST2XLR+/Q+MN2TjVvbuu1tjYQbsoT8WTVxfS3EPx4xR3I0htKiU3s07So/Z0Zc+/XmeZvZ9hik+fA6lbNhbuONsNOGmFFdZbTDTNVxqJLxkk9n7JGfuI9jKNLTiLxa1t75meGb4+OOXTN1Ippjbpvfs60/pUn9VMmxcdlP1dYt8pE16azEeU3FM+vfZhuNmpbRElSuaiMyLuLmRedy5TNyrHJTC3Cjz8emPoQozTtLikLT1iCPXEW/v7hXMmlny4U5m1rcksMie9JQjidfTSsqUSiakMGl1MZTSC0okER7URFrR7E0wSkmossSechyW24WNSI0pbjC0Ew/tJE06ai9hZ6PRH3javR0tOJmm18xv2+M/vaPgvVRRTGO/l66J900HY+orH1V1np3Up6r0ffXk31rfpBscPtdd1HW8PD7W9a56FM1Nfi8tpsqK3fqciQprqnrKZNZeXJJSTcZlNPq6qRx+0RoRvZmRcy2R3h0mtWqq5xVK6Tc9hxp5ptSWjTJQ24Snopm8k0o6xviIlcj3rmneyqvpDu1X8F2v8A0QtPWslvqm3psBpqPDdVy69NiZ7UhHMy0RcWtHojMZ+CqngtE2zvExHT3onePuroT7Nu/q8c4T/Ks8fiTI9TDr1Wtq9EKU+y1IREjMM7NHWOyHUq4eJaV8KeEz0XPWy3FsmzeLPYrDm10+LKi5ZDguwyldQqNN6t9SHuuQk0TonCSuRaJW/dofi4U+guI9m9EmWkWVQQ66a/XMnKksTIeiNxTBHxrZcLR8Rb5mreuW/Blb17cNVsl+rcYjs5hAfhRiYc9NarmmpCVSbBJLUSPbUnuIiTxa594ijS04tMWtb3r5vabxb18ymimLed0sn9JMt2XNjU9K9bN07qmJ8oprMRBSEFt1iMlxCjkOp5kZezzIy+wz/i16XoyIFVYRIcmam8lKiNRm1IbktSUoX+pWhfsm51qOA/aIi2atmRc65k4i1WTrdNnT3lgUywkTauXSOzDZebkrNwo8hMV9KWHkqVwmtZc+fuIt9qsxSYxGxIiq1RDZyFc2bFjuSJaYjbrLpE4+68pSkb9jez0RmL1aHhot/O/szPXr0iOiZo0o9dvj/CcYv0hvOzn622rV1EpmAqxb4pbUth2GhfA451zSEkhaT706PuVz5c+Qx0uyFMIs/UMz1E68htNmUhpUjq3HSZTKOuSnrPR+My5koz1z0PpmuOSZuS+y06mNKxGwgKmk2o2W35D5pSg1lyJzhVxa79EOHjmUXcCoh0kaimldQkMwkPSIprpyQ0tKDlrmNuJJxo2SM+FJkriP8APOnS0qoiqmIvNrxe1t7zv53srFFExeIjlzSq16RZS50uFTUztsdUaU2Ej0xmEw26pPH6Oyp1KuvfJJ8y9kiPlsSfBMoj3EJubHS42laltusPp4Ho77SjQ8w6kj5LSoj/AHlo/eKRtMTar7S3Xa1N1YNWcxc6BMonJhoUp/23or7UZ9HVLS6ZklS/d79aFo9CFKuFVElyAVa5KkvSVQvSX5K0E4aSQbzkhaldcaEJNREet+4j2KeJ0tGjSiaO2euM8/KItzRq0URRePXzToBBbLotr5Dzz65d0lch1x1aWb2xaaSpxRrUTbaHiS2jZnpJFoi5EOth2GRapbq479g6chKUrKfZSpqSJBmZG2mStRNn7R7Mtb5fYOSqnS4cVTf4fdjMUWxPyVx0gUEe1zWJBmG8qMrGjeNtmS9H/WNzZBJVxMrSfco/5D8v6g8SsaeRXyph1tvYIrJ9bLlOymiW+lamZDBvKM21lwK39vCRdxmPVnz8uBl0W1RV2VhFRj5xFHWxSfUTy5b6+EzUpKS0nhMy3v20j+LBNnlFlVG5VS6qppZfp7q7Mm25MmSgjSyhDCFq4Up2rns98Z92i36VNVXDTxT7HDmLxvnl1dMTNovPs2cXpx6OqyAxElRiloesL6GxIM7GYtJtS3HFPJShTpkjZ9xlrXu0PX0y4TBo8csl13pTSpUmqJ1Tk6U+emp7XDwda4fB+1Xvh1vfPehLun6skyoVciMw7IUzkFa84lltS1IZbW51jqiT3ITstn7tjqdNOMvW9HNgxjT6S4lp2OSjJJKdjPtyEtmo+SePqzRs+RcRGYrpeKq/K46ptfOe8boo1Z9m883szlZlQWStmSipJh8RGe9+hOHvffvY8nQitSsdplKUalHXMbUozUZ+z7zPmYgt/nlnNqnqlrG7puzmwlwXDeipRAaU60bDrxTDXpbZEpSi5c+Xd3izuj+lVXVVfBWZKXBhssuKT3GtCCJevu4tjm1NOdLR4at7/KzKqnhotPVWFFj6MossgkWEiZ1VZZOVdWzGmPx0RPRS4VSW0tLIjfU57fEoj79dxERfmHsWuR0MCM5YLZKFaPRLt9t11qVNiw1rbJtDzfNKl+wajMy3w8z5mR+mBMmY1YXqFVNjYRrqcuzrX62OchCn5Cf10aSaT/oxk7/aVy1z+4cY2b+hxuJEhw5S7O5lyZE9+HGOSuubfX1jvAgj4Tk6WlKeIyLaVnvkQ7Z4qrRTMbxw3tiLTf79+7ebztPS37OtikJisy1NZTPSVQiq3HLqG5KelR4r/EXoqyU8pRtSVe9O/qqL8OHn2USrS2p5MVxSKSFk8OujrQpRFYzOJxcmSRpPS4zZNG0nvIzU4fvLXZ6PI8ZUORRR6bI6w7eNJTLvJ8RpDq3nGl8ch6STyldco1K4eWtn7hyc06K7GI1RxodraS48e4iIbaRGjcFY0SHv6cgmmuRtny2vZfrD2LUTp/i+3ObWvPPE5xfPLO0d0xNPHmc9/N6ele/iSMhVW2bs9VdWwWXEVVWmUp+xnSeJwzWmIZLU00wSD5mREau/2tDs9GVFAtaqbEbtJ0ys9Y8UaOt2VEsao2ySpUB55TnXKSS+Zb0Wle8flrAk0V+m4XEm20WdTsQZUqFHKRNZlxuBPXuR29Gpt5CEbNBcjI+7lvo9EsKWUjILp+G9DTdyW3Yde8kkyOqisG2lx1pO+redM9mnv2Z9/eeWpXEaEcE2tEWzG/PG8Tzv9FapiKMdv3RDG8MjP5OpiukWKYGMG05YvPWct/0mwMycahoJxZpJtsiI1+8z4kn7hforz6PtI/EpkOTGnGp9nKlTp6XkGh3r33l/tEnzI+BKBYY5PGak16nDe/Di/wBf1Y69V6rdAAAcjEAAAAAAAAAAAAAAFNdJT6057hKErWlDkPIuNCVqJK+GI0aeNJHpWj+0Wjll21WwZc99DrjUCO4+tqM2br7hNpNXVstl9d1R6SRbItqLZkXMB1AFKtdNVnHcq3bfFJVXV382NCh2PrSLKeaemHqJ6bAbbSuMlZcz9tXD3Hz0k57hmbIsrK9rkx1NKxqXGjLeU6SykHJjFJJaUkkjbJJHw6Mz2Alo4mbYzHt4hw5RupaU8w9tlZIXxx3UPN8zSZcPEgtlruFW2P0gWmaeutk1El9VxfSaRiCxJbU8cllcppo0qUgkr6x2OlPDy11veeufQk9K9yhuujfolMO9tSluHUesoxRYkeK4TfXyrbq+qSTm9pSlCjPhPevZ4ppqmmbxumJmJvC3SAV90T9I7lxJtK6dWPU9tj64xT4LklqY11cxtTsZ5iWylKXkKQgz+qWtp+3l9PpA5gqjx2xms7OYtoolahPNa58xRR43An+0aVudYZfY0oQhPQGePoyJmY9aTsQspDj6na+Fe1bz7i1rcQ+y2xZNJNf1UomNr0kj/vn9o/vD87j0TvSBZT1Pusw8pQ0xGZI3Xnnno0dtmNGbM9ca3FEWuRFzM+RGA0IAqag6W5yZ1fDv8dkUSL9Zs1Mw7GPYMuyOE1piy+pQhUKSpBbSk+IjPZEfI9cpfTnPd9NmV+KzbKkqp70KTYRbCKc9a47psvORqfgNx1slkRltxKjSrZkkiPQXcAqnK+lmWm09T0VE7dTWa5ixlpeso9S2wxJJRsoSclta3ZBkRbTwpJPGnat7Iv7mdMJopodkihuFz7OcdcxROMEzKTMSpaVde85+rZiexsnz5GTiORcySFpgKtwjpTmyLn1DdULtJYOwF2EM0WLFlFlR2lpbc1IaQ2bbxKM/YNP9gzMy2nihdd9I+dJqvX8fEZ7lHGJXrGwOzhocZJtw0OqiRVJ45raPZ4lbbIj4i7kmoBoYBV+YdLK2psKro6l29srCtRbdQUtuvjRq50+Fp+TMeQskLWrZJbJJny562ndY4N0puVyekLIZldNb9XWlSl2nkPIS+w4bTEF5tLhGprhJxRrJSeS0kky+sA08ApRXTlMZhpkTsXnxZNrNZi41WFMjPyrgn0LdS6skpIq9KG0oNwl8XB1ieZjr470qTnJcipssferLz1Y9Y1df6yjSotqhkjI2Y9klCG2n+s4UqS4kuElcXMgFqAMYo6R8oVgi5Bxp3G9kHVrvPXTBPKS7dLJyKSCPrm2yMkxeWk8K+WkFoXdjl80/mcVmXXzIVy9hBSnkqskSIjMc7U2zjKYaT1bsnrS4uvSf1T4dALgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUZ07LmwspxS5YqLS1i1UW6RLRURPSXUKlssMskZKWlBbMzPmouSFa3ofXLOkS9uKi4i0WP5DU2zdcb0GVcQGIzSzTIjofZjOJkL3OOM4+psjIi4m975Fu7gAYsv8WOW3RP1tBmUqbWXFRKubTJTnuPNNNPI9IajRX3jJ95ThktTjLRpShtXP2uVqR7mwxrJ8oW5QXNmxk71fLqJVRFKSw44zDRGdjS3TUSYRk5r23D1pKj7tbv8AGUcKxC5RS4W1KrZTcqBn782yZKO5/RmFP2CjkL5HwxtuJMlnyMlJ58xMPpCN2Sr6t9LbyN7FPVzpPN4n6Sck7brXNesEwjKQcTqCbJOuXGf8Qv4AGdfou40/AyDJX/AFJY01daxal2rbslOPvLbYTIbdVJkqddL0tS19Ypo3DUnrSL3DsdOeKS8lyKhpnWJrdFWNv3FjYME4y25MIlx4UdiWjXVym/bc9nnp/8ryABm/pQ6KHqGTS5JQHdWk2ms2kTokmfLtHnamSS2paI7bqlL4i4iPhTy9s1HvhHEzXoztbWFmiWYL5urzGHc10Z/rIhWcePGbS42w+fCaeJC3SJRGXtIItkfMtVgAyjjOK18+3pUV+I5JH9BmMzrKdk866jx65Uc+NBQ0vTFJmSesTrfCaNGXIyUfDyc7oHOvtHWMYyWnzB2ZI9CssT9JbprE1PLVFmSJJvHHbbWWlOpUSFGalb0ajItiAAzF0n0Zuy4K8pxqysHGqaEUbJsRalOWbVihtXpseUiI4RpR1pqU2o0Ggus5d6uHkPQszRjtSiYeSLrv0glKsW4TvWZUmh9j1c2+4wfWuK4idNwkHxaUkuRFotaAAyv0X4wbWawLKvob2DUu1E6KqxvDlvSpMs9L6ySUl1xyG0aeFCEucHEZLPXMdbo8xOzY6J5VU7AlN2Sqy7bTXqYWUpTj0yYtpBM64jUpK0GRa5kohpIAGd4LFhjVvX3jlTY2FdaYhV1c9NZFVKn10+ClKkk7CSZOHHUk+EzSR6UlW9aLihuS095bUfSPIVQ2MSRkM6lera52OapL8aOuIklJS3slOkwyS1pSauBRrTs+Ea6ABQn0nMDkWDWN2TUCVZtY3IcOxqoEhyNOehTGGW3nIi2loWchpTCDJCVEauIy7tjk9DmMQ3skZnV2NXMCBVw3i9bZLNtm5ipT5GhUeHAmSVpNjgP2lrLmZHrXCRq0iADIcemtzwm2x71FblY4/eNTjJUPTFiw5eLmmdW9xamLQwjaiT/eTri3ysrEUS7DOod6VbZQ4ErACjGqxhrjuMS/XCnThyEmZk3JJv2+DZ8jIxeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgGU5dPky3anHGoz0yKaE2dpO6w62p4yJRNLSzpc2xNsyUUZBpJJKSpxaCUklBPwFP4tZZHUZFCprq1YvYuRQbCVElt1TNY/BkVxx1OsG3HWpDkVTchOlKM18RkW+XtXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPDkLjqYcpTJ6eRFfUyrRHp0mlG2ej5H7WhUnRDmFFRYpQG/Ob9Jta1iaqO2tc20sbGahMicpuMzxyZj5y3nEmZJPh5EZkRCV9P2XKpqKW8wk3Z9gaKynjJ0bkmzsNsRW20mZcZpM1OmnezSyvQqb6AOGIgU9lIkxUtWvryZAkrcbT6QyiEiO0qIa+ZpJMjrzMiPmZlveiAW3hNZMnT1ZBZxlQnfRFwaaqdWhb0GC840/Ifmm2o2ysZLjMc1ISaiaRHaQRmo3TOeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD5S5CGm3HXFEhtlCnHFn3JQhJqUo/uIiMwFO5rIK2zCnry4FsUMk5LyTMzMpDEP0+Qska0TrLj+NEle98NlIL38+x9H6wTI/So0lomM4u45l/iZKIlR/iez/ERL6M3WWFjZ3L5HxqhxzTxJ0aH791zIJDX27brnsdjHzP8AqJci0In9FbpHgMVmYS33TWp7LJ86PFjGbkyauybR6LHhMt+29IdXHUlBI3zIz5ERmQWB0nWFxes2JUl2zjtRQHIKdfqa65yZLhpNcqOwrjSUWujmk0uySM1KcbWgk8La+snHQpaWE3HaaXap4bCXWx3ZW0pQpalo2h5aEESW3HG+Bw0EREk1mWi1osh9A3R3muQY2dP6W1V4tYT/AElcmQSnJ8hnjM3mYSUftIi3iSszXwEpSdpUaTWlW54jCWm22kFpDKEtoL7EoSSUl+REA+oAAAAAAAAAAAAAAAADkZnkcSor5dlOcJqLXMLfeXy3pP1UII/rOrWaUJT71LSXvHXFNdKNRDyO4mUl04pqjoaJi1kMpkri+lSZj0xpuY662olHGhtQXTJO+A3JG1kfAkgFZ5F0t5JWNvW70yXMVDOLJs6OFRw3aKoamJbcappl1xpmesiZcbM32ycQhbqCUjhMhqeontSo7EplXEzMYafZV/eaeQlxtX4pURjP1NjBVHRRPakLW49OxuwsZS3+ThyrKO5IQlezM+sSbjKDMzMzUgxcXRBXuxMeoYr6eF+HRVkd9H9x1mEw24n8FJMvwASkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBfpAG6eMXbbJ6clVzsRKv7pTNRVK/BLyj/AToV79JFDisUvG2krW8/AUxHQ2Rm4t99xDLKGyLmazcWgi17zIBG+juUipxfJbbu4bPK5xEWtkirkyq6K2X8Merjtl/CQi2C/RrTVSknDdjMRLCuiMWkpRSF3KDRHbZnxK57i6qGzMWlxbkhP61JPOIbJBcKk0T0RZFkTtO/TuT3HoysvrKm8rJrCXX4rFxYGt2Q1KWrrCN6azLZeQvjIzkkZEk1KUf+goD5QozbLbbLLaGmmG0NMtNpJDbbbaSShtCE8koSkiIiLkREQ+oAAAAAAAAAAAAAAAAAAAKb+mDjddLxW2mS20pk1kFxcKYSjbebcW40RRycSZGtl5wm0KaVtKjNJ64kpMrUyO7iV0V+dOkNRYkRs3H5D6iS2hOyItn71GoySSS2ajURERmZEMp9NOWWGV3NdRP10uvxptytsrBuS56NY2cGXcRqdmS4wgzciRkyJJOEy4SV8DSnVcJkhKQtGnsnM0i1bDFfKhYylEGbYSbFttpdp6P1b8esiMJWo1RCfbbN149JUTJoTxEs1FdYqvoLxNugmX1LDcfOqiPV8qujyHVPHFVNjLOWy24vn1Rusk4Re43VH3mZnagAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhXTS4SKtlRnpJZDixLPevYPJ6clkf3Gk1EZfYZiaiE9PNeqTjF622aieTUy34ym1GlaZMVpUqMpCiMjSsnmWzIy7jIjAZa6WqWXjWcTZbDRepsgs8ZnTVbMksLcvI85UhREXM/TKqYk1ciSU9BHzWne2xlDp1vo97g9TlDiCUiVAdrLfq0cXUlP6tDjiEbLi9Hv66tdIuW0trItcXO/Og/LvXuO1Nqe+snQkekbSaf6UwpUaXwkrnwekMu6P3lowEzAAAAAAAAAAAAAAAAAAABS30i7tTNpidemM3Jctp8r0D0vZwI1owcJESdNZSZKlIYalTHUMEaeJxDR8STSSirK6xd2vze+hNzJM2dfdHUuUzLsFoW67ZtyEmwsktIS202lyARpabSSUEnSSIiIWZ9LjH1yK+nsWZTUF/Hsir5aJ77ZrZjk856M2t8iUk0x/S3YRrVv2UJWej1o4VDzOLeXUfKGGHI72LSceqbdh5s0uxfWjt3W2sRajIusaZkWMJ01806iKPWy5BfOEfrnJ1gkv1VsuC/FX7lxvVkNSFJP3l1i3i/3TEmFZY1ksehxV52QhfV4mUusKOlRG86VbKcgVzLfEfN6S0mFwEfM/Sm/tEl6K8tO8qo9guI7AecXJjy6+QfE7Elw5LsSVHWrhLi4XmVkRmSTMtbJJ7IglAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACLdL8v0fHr5/W/RqK0d19vVwX16/kJSK7+ktNSxiGQrUfCS6iSwZ/Z6Un0Yv5ukApfpNxpqpxzMsabb4IJU1XkVY2XEaWlG82zPYQauXCmZWIf0R8vWB8i5b09j0JiNEix4zaGY8aMy1HZaSSUNtIbSltCElyJJJIiGfula3avrJyBB4XSvmF4nAkIMlIeZ65ufk1o2ZHp2JCYYYjoWW+KSt5OjJB70a0gkpSlJaShJJSX2ERaIvyAf0AAAAAAAAAAAAAAAAAAADh9IGON3FVY1bquBFpBkRTc4SUbSnm1IQ8ST5GpCzSsi+1BCgMRwCTXw+kComz0WEyTjtc6ucmMccusOqsY0dakdYo1uJOE2s3DMjWriPRGNNjJf0kMyt6u5yuNWVqpqL3GamFJlof4HIClpt0NuNtJI1vuKZcmaSnRkptJ7PXCoOfeVZ5jXUUuuu5cabmEuC7MqIxN+jtXFM0yxa3knZ9alhmHEbSTRcJKdXAVvay3q/EqFishswo3Gbcclmbjy+seeedcW9IkPuH+0fdfccdWrltTij0XcIh0S4DTQzRfQoiG597VV5SZJKUriaKMwfC0kz4WiWbbSl8JFxqQkz2ZCxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSX0nHm7ZpOLdcUeNIbRbZRZHw9XU0Ve8mT1i1HyTKfkMJQ0nStky8ZlpOxaOeZI3U1785banlNEhuNFb/ay5chxDEOI1v/aOyHGmyPuLj2fIjGf8twt+bFtqiVJUbpQF5FnllFPRzbJcV1VTRRXHNm1AjpjIc4dcmo8XuU+tQD9+jPXHPv0ZAlPo9a7jT0THKjqjR6sqmLQocY1qMzNb75QpDylc9nJX7SiMtabFNdANcqLIjRFcjr+j7EELSXcT7z96qQZfxLZSf4C5QAAAAAAAAAAAAAAAAAAAAAUjmtej9JDcWniKyu8ZhKSfcpMSvvphl+TyhcdzZR4cd6XKdQxGiNLekPuq4UNNNpNS1qP3EREYzvV5+3bPRrmUwutiQekOW2SZiFsvNQarC7J05EtDnNpw9vOGnRcJaLnwmowt7oJUZY5UMqVxrroSK11X2u1alVzvL3H1kVQmoh3QxWyI1NHKUhTL86RYWbsZZESop21jLtCirIv9o0Usm1f4kKExAAAAAAAAAAAAAAHByfDKmzW25Y1sKY6wk0svSYrTrrSTPZpbdUnjQnfPRGXMeRHR/VJIktsyGEl3Ji2djGIv3FHkpIh+55mzFR1KFQ7SwkS+M2YdNWvznjSg0JUtxSCJmMjbiS4nloI/a1vhVrhozPIZP9SxKQyk9acvbivgJ0e+9uAcx4jLlyNBd/eA7n6CQf8Ar7nl7iyfICL8isND6owuIXc/bfjkV2r/AFTTEfXEzSSR8U3HakjLujwLC4dSf3PPyYiD/Fofiej61d5zcvvHOezbgR6euaMt/V21BU8Sf+Jv7wEmTizJfVlWZfvtpy//ABHTH9FjZF3TbIv/AK5xX+ojEea6J60/28vIJZ72ZycrvzIz7/2bU1Let+4k6+4eoui6i5cUHrde9+XMfP8AFTzyjP8AEB1zx9fusrFP/GYV/rYMfz+j7/ut7Mv/ALcf+qEY5n/Rdj3ymJ/kVv8APiH9J6MqNP1YCG/+yfkt/wDhukA9rmOyz7r61T9xM0Z/6qszH4WPTS7r60P+KPSH/prSHPd6Mak/q+s2v+7ZHfRv5R56R9I3R9Ga31M++bM+e3MjtpfP7inyXSL93cA9SqSzL6l04f2ekV0Jz8+pQ1v+Q83q3JEq2m3p3G/7j+PS+sP/AIrVwlJf8sfjmHzeIjayW8aIv9l1dE+g/wCJUmqW7+SyH0ep71Baj3cZR+5VlSJk/mUKZF3+Gv8AyAfR17IGy9mNTSj+1U+bXl+/RQpP5bH9+ubVtO3qY3VF3prbKK/v+E5xRd/joeY/0laR/wDA57hF9k+pQo/zmmgv8w+f6QXrSNyMeS8oj+pT3cWTst8uFVo3BI+XPnr3/iHvaydZFuRVWsb7lR48s/yrJD5j+0ZjX64nHHoyS71WEGbASX71TWGy0OSrpEbZSSptPkELe9kdM9ZcOiM9qVRHLSktF3713D0QOkugedSwm3gtyV64YcuQiHMPe9f0SXwPe4/7PuAdyqv4Mv8Aqk2JJ1yP0aUy9zLv/ZqMdEc6xqYM5BekRokxtRcuvYZkIMvdrjSZGQ5LuCVvs9SiTCJB7SmrsZ9c0R+7bEJ9DSy/wqSZfcAk4CJHjNk0a1Rcgmnsv1cezh182M3r/sGY8tz7+KQf4Al/I2OAlx6iySW+tejyJdU7rXI2YbzcpCzM/cqQki+0wEtARROak1r0+stq81LNBKXB9Pa5bPrFP065LbDWiM+J429ct6M9Ds0OQQLBKlwZsWYltRocVEktP9WtJ6Uhzq1HwLIyMjSejIyMjAdIAAAAeS0s40Rs3ZUhiM0n6zsl5tlstd+1uGREIm50rURluLLdtOZkXqGBOuiM095cdWw6hPd3qMiATcBBFZxZOnwwsXuHEmekyJ79XXMHy2Rmh2YqWkvdzY39w+fpWZPl7MLHK3aeRvWVjarSrn9ZpqHESou7ucAT8BAkUOVOHt/Iq5gjLmitxs0KSe/7Ls6xfI+X2oH9Iwi1VvrcvvT3/wBRCxtki+4t06lEX4mAnYCJMYa8kiJd9eOmXepb1ekz/eTMFCfyIh9HMQcMuVzcp+9MqNv/APKMZAI19IqI8iDX27SlKbxG6h3U6KSeIpECMa25x8Oy/WsxnnX0nz5sHyMzLUdtpHBU9KDqFpUslT323kmSiU2vDKl2PpRd6SI+X7xJr7oxnyG3UNZdkLRPJUg23Sp5DPCsuE0m2dclakmRnyNfvHg6Ouhn1bj9pQzLaTYpu2FxHJpR24rrEL1czWR47LZrdTtqOykiUoz3y5cgHWwzqmr2cZutpOTjeMtMNKWlK1kw9fqM0IM9q/be77BYYoTKegq1sa1mrl3lVKTCbSzAuZmKk5ewmG1JNpDE9qyQglklCCNwm0qVw7PauYubEax+FBiRJMx6wfiMIadnyUoS9JUgtda4SOXEZa5nsz1szUZmZh1QAAAAAAAAAAAAAAAAABBOnKXMTVoiw3Fxl3dlAqHrJC0oOtjWMhMd6WlRmRk+aVdS1w8yeksH3EZkFd9JWdxJ0g5MgnpFDQ2aY1dWxkmt7LsmaPTUWM0RGcmuhvmXPXAuQ3xHtLBcXN6OI01b1OVw0wU6b0i38mfHaNLrDbqsXtz9HSrWnEtJ4G98/wBn3n3nNOiLCISLSxmqSSjxyR+j9DC0XUU1fHiRXF+jpPmc2V1/WuvqM1qStCdkXESuXhCuunQHD70dIOZa/wCDHuopH/lIBeIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+E6Gy+g232m3m1d7bzaXEH+9KyMjH3ABDF9FWO8S1tU8KI479d6saOteUfM9m9Xm05vZme975j+GujaK1/VrLII/LRF+kdpLSn9yLF99BfkJsACFFhVgk9t5VfpLZGTbjGOvI0X9nblObhkf8e+fePaijtkFpN4tz75NZCWf/AOgmiEoABF3q2+/2dtXl97tE8v8A0WaBEMv6N7mzUhyRZ4+bzJH1Mo8PdOWxsjSZsS/XXWsK0etoMjFrgAoGt6I85hEaYnSE6pBmZpRNpG5vARnskJdsJMh00kXIuJRny7zHXx3o7yHS/wBIbmddEajMjrLl+hTwe5sodbHYNR9+zVK0ey9lOjM7nABXVdjVDBcKQvHFtSS0lM16sK2mqLeucuKcqRr+NRCSqzOpb4Uuz40VStElqc4UFzfuSTUvgXv7te4SADLfI+ZH3kYD4Q5jLyeNl1t1B9y2nEuJP/eSZkPuODZYVTyVk5Iqq19wuZOvQIy3En9qXFN8ST+8jHjk4BXKNJoOwjcBkaUwL24gt7LmW2ocxDak/wCFRGX3AJUAij+HPa1HvLuJruND8GWf52kOQZ/iPxrH7dtJE3kDzxkX17Csr3TP71FBbjFv9xEAlgCHJrsnSZ/+16JafclWNT0L17tuJvjIz/3SHqSzkBFzkU6z+0oM1ovy9MX/AP0BJwEZ4b/+/T/8qb/6g/eqvz/94qEH/wBymufy9LSAkoCKKhZGfdZ0iP34/Pc/n66QPszXXZ6621gfecakda3+7r7F3X8wElARtzH56/rXs9s//lolQkv3EUiC6evxH0TjKlFp+ztH/t3Kbimf417LJl+GgEgHwmTGWU8TzrbSS/tOuJbT+ajIhxUYZA58ZTHyPvRMtrOY3/y5UlaCL7tD7V2IVMZXHHrK9hZns3GYMZtZn9prQgjM/vAfL9N6bZpTa161p722p0dxZH9nA2s1b/Afy7mkAu45bv3x6qzkl+ceMohIUkRFoi0RdxFyIfoCKoz6vM9dXbJ+9eN3zaf864BJ/mPV+mtSRbcnx4+/dMc9EVz/AMMrgPYkAAPNAnsSE8bDzT6P77DqHE/5kGZD0jlWWNV0lRLkQIT6080uPxGHFpP7UrWgzI/vIeiLVtNINtrrEINSVEkn3jJPCZGSUEpZk2jlzSnRHzAe0eDI6hiwiSYUlJqYmsOMOkhRoWSXEmnibWn2m3U7JSVlzSpJGXMh7HSUZeyoknxJMzNPF7JKI1FrZczTst+7e+fcOPMct2zPqWq6URny62TJgGRffwMSeI/y/ABF+hCot4iLlNyTapb1ylSZrOiRZMR6iqgtWJtpMyYddTE2tstElxLmi1oQ3owUXXVyjMvbz3NiLZ96jXeL0X2nwoUf7iMWi5dWbRfrKV14/eVdYQnS+/hOcuNv8SIUA3juTnDnV8jF7hHV5RYX1Ja0+R0UGdHOZIkuoSvrJDiG1dVKfbWX6xKkvqLXIlGGowFd9ALmRnWvJyaO7HltT3UQykSoEuSuB1MdTSpMitShh10nlSEcRNtmaUJ2kz9pViAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwB21cq+X4/4Ox8xDtq5V8vx/wdj5iA3+AwB21cq+X4/wCDsfMQ7auVfL8f8HY+YgN/gMAdtXKvl+P+DsfMQ7auVfL8f8HY+YgN/gMAdtXKvl+P+DsfMQ7auVfL8f8AB2PmIDf4DAHbVyr5fj/g7HzEO2rlXy/H/B2PmIDf4DAHbVyr5fj/AIOx8xDtq5V8vx/wdj5iA3+AwB21cq+X4/4Ox8xDtq5V8vx/wdj5iA3+AwB21cq+X4/4Ox8xDtq5V8vx/wAHY+YgN/gMAdtXKvl+P+DsfMQ7auVfL8f8HY+YgN/gMAdtXKvl+P8Ag7HzEO2rlXy/H/B2PmIDf4DAHbVyr5fj/g7HzEO2rlXy/H/B2PmIDf4DAHbVyr5fj/g7HzEO2rlXy/H/AAdj5iA3+AwB21cq+X4/4Ox8xDtq5V8vx/wdj5iA3+AwB21cq+X4/wCDsfMQ7auVfL8f8HY+YgN/gMAdtXKvl+P+DsfMQ7auVfL8f8HY+YgN/gMAdtXKvl+P+DsfMQ7auVfL8f8AB2PmIDf4DAHbVyr5fj/g7HzEO2rlXy/H/B2PmIDf4DAHbVyr5fj/AIOx8xDtq5V8vx/wdj5iA3+AwB21cq+X4/4Ox8xDtq5V8vx/wdj5iA3+AwB21cq+X4/4Ox8xDtq5V8vx/wAHY+YgN/gMAdtXKvl+P+DsfMQ7auVfL8f8HY+YgN/gMAdtXKvl+P8Ag7HzEO2rlXy/H/B2PmIDf4DAHbVyr5fj/g7HzEO2rlXy/H/B2PmIDf4DAHbVyr5fj/g7HzEO2rlXy/H/AAdj5iA3+AwB21cq+X4/4Ox8xDtq5V8vx/wdj5iA3+AwB21cq+X4/wCDsfMQ7auVfL8f8HY+YgN/gMAdtXKvl+P+DsfMQ7auVfL8f8HY+YgN/gMAdtXKvl+P+DsfMQ7auVfL8f8AB2PmIDf4DAHbVyr5fj/g7HzEO2rlXy/H/B2PmIDf4DAHbVyr5fj/AIOx8xDtq5V8vx/wdj5iAzMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/2Q==\n", "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from IPython.display import YouTubeVideo\n", "YouTubeVideo(\"jHdnehLku54\",width=800, height=450)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "> *Exercise 1:* Did you really read the text? Answer the following questions (no calculations needed) in your Jupyter notebook.\n", "\n", "> * What's the problem with random networks as a model for real-world networks according to the argument in section 3.5 (near the end)?\n", "> * List the four regimes that characterize random networks as a function of ⟨k⟩.\n", "> * According to the book, why is it a problem for random networks (in terms of being a model for real-world networks that the degree-dependent clustering C(k) decreases as a function of k in real-world networks?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Part 2 : Visualizing the network of Computational Social Scientists" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Take the network of Computational Social Scientists you built in Week4.\n", "To get an idea about how the network looks like, we start visualizing it. For this exercise, we will use the __awesome library [``netwulf``](https://netwulf.readthedocs.io/en/latest/index.html)__ created by Ulf Aslak and Ben Maier, two colleagues of mine. \n", "You can install it via ``pip install netwulf``. \n", "\n", "Netwulf is built on top of [d3-force](https://github.com/d3/d3-force), a Javascript library that simulates the dynamics of particles moving in 2D. In the visualization, particles correspond to network nodes subject to forces:\n", " * Nodes are attracted to the center of the viz \n", " * Nodes repel each other\n", " * Nodes linked by an edge will preferably stay at a fixed distance to each other.\n", "\n", "Come and ask me if you want to know more!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "> _Exercise_ 1: Visualize the network of Computational Social scientists. \n", ">\n", "> * Extract the [largest connected components](https://networkx.org/documentation/stable/reference/algorithms/generated/networkx.algorithms.components.connected_components.html) from your network. \n", "> * Visualize the largest connected component using the function [``visualize``](https://netwulf.readthedocs.io/en/latest/reference/interactive.html?highlight=visualize#netwulf.interactive.visualize) of the Netwulf package. \n", "> * Play with the parameters of the netwulf algorithm to obtain a visualization you like. To understand better what the parameters mean, have a look at the [documentation](https://netwulf.readthedocs.io/en/latest/visualization/init.html?). Your visualization may look similar to the one below, where I made the size of nodes proportional to their strength (sum of weights of incoming edges), and I added the names of the top Computational Social Scientists by degree... But not necessarily! Just have fun making your own version. You can save the figure directly from the interactive visualization panel, or plot it in higher resolution in matplotlib following [this example](https://netwulf.readthedocs.io/en/latest/cookbook/cookbook.html#save-as-pdf).\n", "> * Describe the structure you observe. Can you identify nodes with a privileged position in the network? \n", "> * _Optional_: You can color nodes based on a property of your interest. For example, I colored nodes based on the top discipline, following [this example](https://github.com/benmaier/netwulf/issues/38). What do you observe? Can you find specific nodes properties that seem to correlate with a node's position in the network?\n", "\n", "\"Drawing\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Part 3: Properties of the real-world network of Computational Social Scientists\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "> _Exercise 2_: \n", ">\n", "> 2.1 _Random Network_: In this exercise we will create a Random Network as a [\"null model\"](https://en.wikipedia.org/wiki/Null_model) to investigate some properties of the Computational Social Scientists Network.\n", "> * Compute the value of _p_ such that the number of expected edges of the random network equals the number of edges in the Computational Social Scientists network (see equation 3.2 in your Network Science Book). What is the value of p? Compute the average value of the degree < k > (using the formula).\n", "> * Create a Random network with the same number of nodes as the Computational Social Scientists networks, and _p_ as computed above. Generate a random network by linking nodes in every possible pair with probability _p_. **Hint**: you can use the function [``np.random.uniform``](https://numpy.org/doc/stable/reference/random/generated/numpy.random.uniform.html) to draw samples from a uniform probability distribution. \n", "> * Visualize the network as you did for the Computational Social Scientists network in the exercise above (my version is below). Comment on the differences between the two.\n", ">\n", "> 2.2 _Degree Distribution_: In this exercise, we will compare the degree distribution of the real network and its random counterpart.\n", "> * Compute the distribution of degree for the random network using the numpy function ``np.histogram``. Bin your histogram using 10 linearly spaced bins. Remember to pass the parameter ``density=True``.\n", "> * Compute the distribution of degree for the Computational Social Scientists network using the numpy function ``np.histogram``. Bin your histogram using 10 logarithmically spaced bins. Remember to pass the parameter ``density=True``.\n", "> * Plot the two distributions you computed in steps 1. and 2. in the same figure as two line-graphs. Log-scale the x and y axes. \n", "> * Comment the figure. What are the differences between the two distributions? Why did I ask you to use two different types of binning? \n", "> * What is the average degree of the random and the real network? Comment on the relation between the two. \n", ">\n", "> 2.3 _Shortest Paths_: Here, we will check if the Computational Social Scientists Network is a small-world Network.\n", "> * Compute the average shortest path for the largest connected component of the Computational Social Scientists network (for a reminder of the definition of connected components, check [section 2.9 of the Network Science book](http://networksciencebook.com/chapter/2#connectedness)). You can use the following steps: \n", "> * Use [``nx.algorithms.connected_components``](https://networkx.org/documentation/stable//reference/algorithms/generated/networkx.algorithms.components.connected_components.html) to find all connected components (it returns a list of subsets of the original set of nodes). \n", "> * Consider the largest subset of nodes found in the step above. Build the subgraph of your original network containing those nodes exclusively, using [``nx.Graph.subgraph``](https://networkx.org/documentation/stable/reference/classes/generated/networkx.Graph.subgraph.html). This corresponds to your largest connected component (a.k.a [giant component](https://en.wikipedia.org/wiki/Giant_component)).\n", "> * Compute the average shortest path length of the giant component using [``nx.average_shortest_path_length``](https://networkx.org/documentation/networkx-1.3/reference/generated/networkx.average_shortest_path_length.html)\n", "> * Compute the average shortest path length for the giant component of the random network you built in exercise 2.1.\n", "> * Comment on the relation between the average shortest path length in the real and the random networks. Can you conclude that the small-world property apply to the Computational Social Scientists network? \n", ">\n", "> 2.4 _Clustering_: Here, we will compare the clustering coefficient in the Computational Social Scientists Network and its random counterpart.\n", "> * Compute the clustering coefficient for all nodes in the random network, using the formula 2.15 in your book. **Hint**: To check your method, you can compare your results with those obtained using the networkx [``clustering``](https://networkx.org/documentation/stable/reference/algorithms/generated/networkx.algorithms.cluster.clustering.html#networkx.algorithms.cluster.clustering) function. \n", "> * Compute the average clustering across nodes of the random network. Is it consistent with the analytical prediction (network science book equation 3.21)?\n", "> * Compute the average clustering coefficient for the Computational Social Scientists network. How does it compare to its random counterpart? Is it something you would expect? Why?\n", "\n", "\n", "\"Drawing\"" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.7" } }, "nbformat": 4, "nbformat_minor": 2 }