gpt4 book ai didi

powershell - 如何在 PowerShell 中跨列添加数字?

转载 作者:行者123 更新时间:2023-12-03 00:43:32 25 4
gpt4 key购买 nike

在我的 .csv 文件中,我有四列数字,定义如下:
aIN = $item1.IN
aOUT = $item1.OUT
bIN = $item2.IN
bOUT = $item2.OUT

数字本身是整数和小数的混合。我正在尝试使用以下方法查找总计输入列和总计输出列:
总IN = aIN + bIN
总输出 = aOUT + bOUT

假设我有...
aIN aOUT bIN bOUT
0.1 0.2 0.3 0.4
1 2 3 4
0.5 0.6 0.7 0.8
5 6 7 8

我想要的是......
aIN aOUT bIN bOUT 总输入 总输出
0.1 0.2 0.3 0.4 0.4 0.6
1 2 3 4 4 6
0.5 0.6 0.7 0.8 1.2 1.4
5 6 7 8 12 14

我的方法不起作用。预先感谢您的帮助!

最佳答案

使用

  • Select-Object 用于附加总列
  • 使用 ForEach 迭代源代码
  • 并作为替身 Actor

$CsvData = Import-Csv '.\testfile.csv' | Select-Object *,'total-IN','total-OUT'

ForEach ($Row in $CsvData) {
$Row.'total-IN' = [double]$Row.aIN + $Row.bIN
$Row.'total-OUT' = [double]$Row.aOUT + $Row.bOUT
}

$CsvData | Format-Table -AutoSize
$CsvData | Export-Csv .\your.csv -NoTypeInformation

您还可以使用计算属性

$CsvData = @"
aIN,aOUT,bIN,bOUT
0.1,0.2,0.3,0.4
1,2,3,4
0.5,0.6,0.7,0.8
5,6,7,8
"@ | ConvertFrom-Csv | Select-Object *,
@{n='total-IN';e={[double]$_.aIN + $_.bIN}},
@{n='total-OUT';e={[double]$_.aOUT + $_.bOUT}}

$CsvData | Format-Table -AutoSize
$CsvData | Export-Csv .\your.csv -NoTypeInformation

关于powershell - 如何在 PowerShell 中跨列添加数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53767927/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com