减去powershell数组元素并将值存储在新变量

时间:2015-10-01 09:54:50

标签: powershell

对powershell有疑问,有希望得到一些暗示让我朝着正确的方向前进。

我有一个变量,其中存储了数据,例如$A将输出

Year  Cost
----  ----

1997   12
1998   42
1999   6
2000   12
2001   14

我想在这里添加另一个专栏,让我们说趋势并计算年份之间的差异,例如

Year  Cost     Trend

1997   12        0
1998   42       30 (42-12)
1999   6       -36 (6-42) 

任何提示都会非常有用

1 个答案:

答案 0 :(得分:2)

你可以遍历每一行,将它与之前的行进行比较,然后从结果中创建一个新对象,如下所示:

$result = 0..($a.count - 1) | % {
    if($_ -eq 0) {$t = $a[$_].Cost} else {$t = $a[$_].Cost - $a[$_ - 1].Cost}
    New-Object PSObject -property @{
    Year = $a[$_].Year
    Cost = $a[$_].Cost
    Trend = $t
    }
 }

$result