我想导入一个 csv 文件,对一列求和,然后在文件名中使用 sum 导出它。该文件现在看起来像这样:
2015-01
在文件里面它看起来像这样:
Time;E_TotalKwh;E_TodayKwh
01-01-2015;2211.248;4.549
02-01-2015;2212.607;1.359
03-01-2015;2214.048;1.441
04-01-2015;2215.478;1.430
我想得到列 E_TodayKwh 的总和。我正在考虑为每一行使用 a 并将其添加到变量中。然后我想重命名文件 2015-01;132.678 (例如),其中 132.678 是第三列的总和并将其导出。
我对 powershell 很陌生,在总结第三列时遇到了一些麻烦。
Import-Csv '*\Jr_2015\2015-01.CSV' -Delimiter ';' | Select-Object E_TodayKwh
我正在尝试一些事情,但不知道我是否走在正确的轨道上。
应该这样做(请注意,第三列的总和是 8.779,而不是您在问题中所说的 132.678)。另外,我使用_
而不是;
将原始名称和总和分开,因为;
在文件名中并不理想(尽管不是非法的)。
$DataFile = Get-Item '2015-01.csv'
Import-Csv -Path $DataFile -Delimiter ';' |
Measure-Object -Property 'E_TodayKwh' -Sum |
Select-Object @{label="NewName";expression={$DataFile.BaseName + '_' + $_.Sum + $DataFile.Extension}} |
Rename-Item $DataFile
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句