Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Squirrel – Enabling Accessible Analytics for All

444 views

Published on

Squirrel is a cross platform data analytics framework written in C#

Published in: Data & Analytics
  • Login to see the comments

  • Be the first to like this

Squirrel – Enabling Accessible Analytics for All

  1. 1. Squirrel ENABLING ACCESSIBLE ANALYTICS FOR ALL
  2. 2. A Small Data Movement for Developer, Consumers and Business Users  Create simpler, smarter and more responsive applications  Provide intuitive experiences that are easier to consume  Reach mobile users Tools for Data Processing and Analytics leveraging the full .NET stack
  3. 3. I/O Blocks Data Modeling Database Connectors Data Generation Data Visualization Adaptors Statistics & Mathematics Data Cleansing The Templatized Design Style The Function Stack
  4. 4. I/O Blocks Data Modeling Database Connectors Data Generation Data Visualization Adaptors Statistics & Mathematics Data Cleansing The Templatized Design Style The Function Stack Add rows based on shorthand increment functions Standard Data input formats e.g. CSV, TXT, XLS, ARFF, XLX, HTML, XML, JSON RDBMS and NOSQL connectors e.g. SQL Server, MongoDB
  5. 5. I/O Blocks Data Modeling Database Connectors Data Generation Data Visualization Adaptors Statistics & Mathematics Data Cleansing The Templatized Design Style The Function Stack All data is transformed into an internal data structure representation
  6. 6. I/O Blocks Data Modeling Database Connectors Data Generation Data Visualization Adaptors Statistics & Mathematics Data Cleansing The Templatized Design Style The Function Stack Removing duplicates, Outlier extraction Highcharts, Google Charts, D3.js
  7. 7. I/O Blocks Data Modeling Database Connectors Data Generation Data Visualization Adaptors Statistics & Mathematics Data Cleansing The Templatized Design Style The Function Stack Basic functions like Median, Range, Standard deviation, Kurtosis, etc.
  8. 8. Applying the Templatized Design Style Example #1: Question – Do women tip more than men? // Load the data Table tips = DataAcquisition.LoadCSV(@"....tips.csv"); //Add a new column based on a formula tips.AddColumn(columnName: "tip%", formula: "[tip]*100/[totbill]", decimalDigits: 3); tips //Pick the columns to display .Pick("sex", "tip%") //Aggregate the tip% values .Aggregate("sex", AggregationMethod.Average) //Round off the result .RoundOffTo(2) //Display the result on console .PrettyDump(); sex tip% F 16.65 M 15.77 Answer – Yes! Women do tip more than men.
  9. 9. Applying the Templatized Design Style Example #1: Question – What is the range of the iris dataset? Table iris = DataAcquisition.LoadCSV(@"iris.csv"); StringBuilder builder = new StringBuilder(); builder.AppendLine("<html>"); builder.AppendLine("<h2>Range</h2>"); builder.AppendLine(iris .Aggregate("Name", AggregationMethod.Range) .ToBasicBootstrapHTMLTable(BootstrapTableDecora tors.BootstrapTableClasses .Table_Striped));); builder.AppendLine("</html>"); StreamWriter writer = new StreamWriter("temp.html"); writer.WriteLine(builder.ToString()); writer.Close(); Answer – Iris-setosa has the least Petal width while the Iris-virginica has the largest Sepal length. Name SepalLength SepalWidth PetalLength PetalWidth Iris-setosa 1.5 2.1 0.9 0.5 Iris-versicolor 2.1 1.4 2.1 0.8 Iris-virginica 3.0 1.6 2.4 1.1
  10. 10. Reaching Mobile Users Integration with Android Devices Typed Duplex Message sender User Code in Java Typed Duplex Message receiver User Code in C# Eneter for Android Eneter for .NET Squirrel Application on Android Squirrel Application on .NET Send Requests Receive Responses Send Messages Observe Response Messages Observe Messages Send Response Messages Receive Requests Message Channel Send Responses • A simple request-response communication • The Android device is a client to the .NET application as a service • Uses Eneter (www.eneter.net) as the messaging framework
  11. 11. What’s coming up? New and Enhanced features Table API 1.0.1 (now) Current version Table API 1.1 ( 3 months) • Enhanced Support for Connectors • Connect to all relevant enterprise and application data and content sources • RDBMS, NoSQL, Hadoop, social media, machine data, … Table API 2.0 ( 6 months) • Smart Defaults, e.g. Sort of weekday • One API for Data Visualization • Charts on Tableau, Google Charts using the same API Table API 3.0 ( 1 year) • Voice Recognition • Smart Slicing/Dicing with Voice commands, Ad-hoc Voice query for Data Visualization • Gesture Recognition • Change, Create Data Visualization with Gestures, Zoom, Scale, …
  12. 12. Thank you! Experiment, Adopt, Collaborate  email to:  sudipto80@yahoo.com or sushant_b@yahoo.com  References 1. Squirrel - https://github.com/sudipto80/Squirrel 2. Small Data and IoT – a) https://ctovision.com/2015/01/beyond-iot-buzz-new-horizon-embedded- intelligence-information-flows-seriously-smart-apps/ b) http://smalldatagroup.com/2013/10/18/defining-small-data/

×