Using PowerShell for Data Science

Hi There,

This is a generic question. These days I am learning Python, while digging deeper into it, I found that it works exactly similar to PowerShell. Knowing both are Object Oriented Programming Languages, still I am finding Python’s syntax a tad complex, since I am into powershell for quite a long time. :slight_smile:
Help me understand if I can use Powershell for data science, AI, ML, Deep Learning etc. ? If Yes, kindle help with the resources.


AI / Robotics has been a keen interest of mine for a very long time. Though I really have not had a enough time to deal with it. Work other requirements get in the way, all the time. Yet, I have been working on dedicating time to it.

As a long time PoSH user, since before it was ever called PowerShell (formally Monad).
Of course PowerShell has the full access it the .Net stack, so, you have all that to leverage.
Legacy PoSH however, only runs on Windows, and not the plethora of stuff running *Nix.
That’s change with the release of .Net core and PowerShell Core (aka PoSH v6.)

Here are just a few resources, I have and worked through on the topic thus far.

There are already module from MS for PowerShell Machine Learing efforts, since circa 2016

Announcing the PowerShell Module for Azure ML
What Is It?

This is a .NET based PowerShell DLL module that allows end user to fully manage Azure ML workspaces, experiments, datasets, web services and web service endpoints. It contains full source code which also has a cleanly separated C# API layer. This means you can also reference this DLL from your own .NET project and operate Azure ML through .NET code. In addition, you can also find the underlying REST APIs the DLL depends on and leverage the REST APIs directly from your favorite client as well.

For Artificial Intelligence, there are announcements and folks working on / in the space.
Microsoft’s PowerShell Core 6.1 will have AI and IoT Capabilities!

PowerShell : Language based Artificial Intelligence to Insert spaces into a string lacking spaces

Deep Learning…

Deep learning for predictive maintenance real-world scenarios
Prepare the notebook server computation target
To run on your local machine, from the Machine Learning Workbench File menu, select either Open Command Prompt or Open PowerShell CLI. The CLI interface allows you to access your Azure services by using the az commands

For data analytics, the yes that is there as well.

PowerShell for Business Intelligence and Big Data Analytics LiveLessons
Big data and business intelligence have been two of the major IT trends in the last five years. This video shows the viewer how they can capitalize on those trends by using tools that they already own.

PowerShell for Business Intelligence and Big Data Analytics LiveLessons (Video Training)

Get started with Azure Data Lake Analytics using Azure PowerShell
Learn how to use Azure PowerShell to create Azure Data Lake Analytics accounts and then submit and run U-SQL jobs. For more information about Data Lake Analytics, see Azure Data Lake Analytics overview.

Manage Azure Data Lake Analytics using Azure PowerShell
Learn how to manage Azure Data Lake Analytics accounts, data sources, jobs, and catalog items using Azure PowerShell.

Data Lake Analytics - Using Azure PowerShell to get input and output paths of a U-SQL job
This script returns a list of input or output paths of a Data Lake Analytics U-SQL job. These paths can be any combination of U-SQL catalog paths, WASB file paths, or ADLS file paths.

Deriving Input Data with PowerShell Scripts
This section describes two different methods that you can use to acquire data for input to Message Analyzer through PowerShell. The first shows you how to import data with a saved PowerShell script file that you target as a supported input file type (*.ps1) through a Data Retrieval Session. The script contained in such a file may invoke specific processes or functions that return data which you can view in Message Analyzer. The second method is similar, but instead enables you to use a PowerShell interface that is built into Message Analyzer to create a PowerShell query that returns its data to a viewer such as the Analysis Grid.