Powershell 3 Cmdlets Hackerrank Solution -

# PowerShell 3+ Template $inputFile = ".\data.csv" $requiredYears = 2 $topN = 3 Import-Csv $inputFile | Where-Object [int]$ .YearsOfExperience -ge $requiredYears | Sort-Object [int]$ .Salary -Descending | Select-Object -First $topN | Group-Object Department | Select-Object @Name="Department"; Expression=$ .Name, @Name="AverageSalary"; Expression= Measure-Object Salary -Average).Average, 0) | Sort-Object Department

$data | Select-Object *, @N="SalaryInt";E=[int]$_.Salary | Sort-Object SalaryInt -Desc Better yet, cast during filtering: powershell 3 cmdlets hackerrank solution

$avgSalary = $grouped.Group | Measure-Object Salary -Average Creates new columns on-the-fly. # PowerShell 3+ Template $inputFile = "

$grouped = $top3 | Group-Object Department Calculates sum, average, min, max. Expression= Measure-Object Salary -Average).Average

Import-Csv .\employees.csv | Where-Object $_.YearsOfExperience -ge 2 | Sort-Object Salary -Descending | Select-Object -First 3 | Group-Object Department | Select-Object @N="Department";E=$_.Name, @N="AverageSalary";E= Measure-Object Salary -Average).Average, 2) | Sort-Object Department | Format-Table -AutoSize