Socket
Socket
Sign inDemoInstall

watch-complexity

Package Overview
Dependencies
0
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    watch-complexity

Artificial Intelligence from experimental research on computational social science.


Version published
Weekly downloads
3
Maintainers
1
Install size
68.8 kB
Created
Weekly downloads
 

Readme

Source

Watch Complexity · GitHub license PRs Welcome

WatchComplexity is a package to understand and analyze complex networks and more in general complex data. It is a collection of clustering techniques inspired by social science and communication theories.

Documentation

All useful informations can be found in the wiki documentation:

Algorithms

The tool provides the following algorithms.

Getting started

Install

npm install watch-complexity

How to use it

const watchcomplexity = require('watch-complexity');

Example of use:

// The list of edges
const edges = [
  {from: "Napoleon", to: "Myriel", weight: 1},
  {from: "Mme.Magloire", to: "Myriel", weight: 10},
  {...}
];
// Measure the influence score and detect the influence roles
const nodes = watchcomplexity.influence.typology(edges);

That will return as result:

{
 ranking: 
   [
      {node: "Marius", role: "Hub", score: 100},
      {node: "Courfeyrac", role: "Amplifier", score: 93.68029739776952},
      {node: "Enjolras", role: "Reducer", score: 92.93680297397769},
      {node: "Fantine", role: "Amplifier", score: 89.96282527881041},
      ...,
      {node: "Mme.Hucheloup", role: "Emitter", score: 39.405204460966544},
      {node: "Anzelma", role: "Low emitter", score: 34.94423791821562},
      {node: "Pontmercy", role: "Reducer", score: 33.08550185873605},
      ...
      {node: "OldMan", role: "Emitter branch", score: 1.4869888475836461},
      {node: "Napoleon", role: "Emitter branch", score: 0}
   ],
  nodes: 77,
  edges: 254,
  distribution:  {
    Blackhole: 0,
    Vulcano: 0,
    Channeler: 0,
    Chain: 0,
    Bridge: 1,
    Connector: 3,
    'Emitter branch': 15,
    'Receiver branch': 2,
    Receiver: 2,
    Emitter: 4,
    'Low emitter': 9,
    Idle: 0,
    Transceiver: 5,
    Tophub: 0,
    Hub: 1,
    Dam: 6,
    Reducer: 12,
    Megamplifier: 7,
    Amplifier: 10
  }
}

Tests

Unit tests are inside the folder /test, included test coverage through nyc.

To run all unit tests, type:

npm test

Motivation

Our main goal is to do experimental research with practical applications.

License

WatchComplexity is an open source project available under the MIT license.

Keywords

FAQs

Last updated on 06 Apr 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc