Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
69
Task/Averages-Median/PowerShell/averages-median-1.psh
Normal file
69
Task/Averages-Median/PowerShell/averages-median-1.psh
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
function Measure-Data
|
||||
{
|
||||
[CmdletBinding()]
|
||||
[OutputType([PSCustomObject])]
|
||||
Param
|
||||
(
|
||||
[Parameter(Mandatory=$true,
|
||||
Position=0)]
|
||||
[double[]]
|
||||
$Data
|
||||
)
|
||||
|
||||
Begin
|
||||
{
|
||||
function Get-Mode ([double[]]$Data)
|
||||
{
|
||||
if ($Data.Count -gt ($Data | Select-Object -Unique).Count)
|
||||
{
|
||||
$groups = $Data | Group-Object | Sort-Object -Property Count -Descending
|
||||
|
||||
return ($groups | Where-Object {[double]$_.Count -eq [double]$groups[0].Count}).Name | ForEach-Object {[double]$_}
|
||||
}
|
||||
else
|
||||
{
|
||||
return $null
|
||||
}
|
||||
}
|
||||
|
||||
function Get-StandardDeviation ([double[]]$Data)
|
||||
{
|
||||
$variance = 0
|
||||
$average = $Data | Measure-Object -Average | Select-Object -Property Count, Average
|
||||
|
||||
foreach ($number in $Data)
|
||||
{
|
||||
$variance += [Math]::Pow(($number - $average.Average),2)
|
||||
}
|
||||
|
||||
return [Math]::Sqrt($variance / ($average.Count-1))
|
||||
}
|
||||
|
||||
function Get-Median ([double[]]$Data)
|
||||
{
|
||||
if ($Data.Count % 2)
|
||||
{
|
||||
return $Data[[Math]::Floor($Data.Count/2)]
|
||||
}
|
||||
else
|
||||
{
|
||||
return ($Data[$Data.Count/2], $Data[$Data.Count/2-1] | Measure-Object -Average).Average
|
||||
}
|
||||
}
|
||||
}
|
||||
Process
|
||||
{
|
||||
$Data = $Data | Sort-Object
|
||||
|
||||
$Data | Measure-Object -Maximum -Minimum -Sum -Average |
|
||||
Select-Object -Property Count,
|
||||
Sum,
|
||||
Minimum,
|
||||
Maximum,
|
||||
@{Name='Range'; Expression={$_.Maximum - $_.Minimum}},
|
||||
@{Name='Mean' ; Expression={$_.Average}} |
|
||||
Add-Member -MemberType NoteProperty -Name Median -Value (Get-Median $Data) -PassThru |
|
||||
Add-Member -MemberType NoteProperty -Name StandardDeviation -Value (Get-StandardDeviation $Data) -PassThru |
|
||||
Add-Member -MemberType NoteProperty -Name Mode -Value (Get-Mode $Data) -PassThru
|
||||
}
|
||||
}
|
||||
2
Task/Averages-Median/PowerShell/averages-median-2.psh
Normal file
2
Task/Averages-Median/PowerShell/averages-median-2.psh
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
$statistics = Measure-Data 4, 5, 6, 7, 7, 7, 8, 1, 1, 1, 2, 3
|
||||
$statistics
|
||||
1
Task/Averages-Median/PowerShell/averages-median-3.psh
Normal file
1
Task/Averages-Median/PowerShell/averages-median-3.psh
Normal file
|
|
@ -0,0 +1 @@
|
|||
$statistics.Median
|
||||
Loading…
Add table
Add a link
Reference in a new issue