根据相同的列值合并csv的行

zxcv
Entity          Entry type                               Time       
------          ----------                               ----       
abab            Recording stopped                        10:48:01 AM
abab            Recording started                        10:49:14 AM
fghi            Recording stopped                        10:11:40 AM
fghi            Recording started                        10:12:13 AM
fghi            Recording stopped                        11:13:01 AM
fghi            Recording started                        9:14:13 AM 
tr              Recording stopped                        8:45:01 AM 
tr              Recording started                        11:14:18 AM

我有一个csv文件,我想要同一行中相同实体列值的数据。例如:数据“ abab”将在单行中。我正在尝试通过电源外壳实现这一点。抱歉,如果怀疑太基础了。

根据

如果这是您的CSV输入文件

"Entity","Entry type","Time"
"abab","Recording stopped","10:48:01 AM"
"abab","Recording started","10:49:14 AM"
"fghi","Recording stopped","10:11:40 AM"
"fghi","Recording started","10:12:13 AM"
"fghi","Recording stopped","11:13:01 AM"
"fghi","Recording started","9:14:13 AM"
"tr","Recording stopped","8:45:01 AM"
"tr","Recording started","11:14:18 AM"

然后,您可以将停止时间与开始记录时间进行合并,如下所示:

$csv = Import-Csv -Path 'THE PATH TO YOUR INPUT CSV FILE'

$result = $csv | Group-Object Entity | ForEach-Object {
    $name = $_.Name
    $stopTime = $null
    foreach ($entity in $_.Group) {
        if (!$stopTime) { $stopTime = $entity.Time } 
        else { 
            [PsCustomObject]@{
                'Entity' = $name
                'Recording stopped' = $stopTime
                'Recording started' = $entity.Time 
            }
            $stopTime = $null      
        }
    }
}

# output on screen
$result

# output to new CSV file
$result | Export-Csv -Path 'THE PATH TO YOUR OUTPUT CSV FILE' -NoTypeInformation

屏幕上的结果将如下所示:

Entity Recording stopped Recording started
------ ----------------- -----------------
abab   10:48:01 AM       10:49:14 AM      
fghi   10:11:40 AM       10:12:13 AM      
fghi   11:13:01 AM       9:14:13 AM       
tr     8:45:01 AM        11:14:18 AM

由于fghi输入文件中有4个实体条目,因此将导致结果在该实体的输出中有两个条目。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据特定的列值合并Dataframe上的行并添加其他值

来自分类Dev

根据相同的属性将值合并到对象列表中

来自分类Dev

根据列值合并列

来自分类Dev

合并具有相同值的sql行

来自分类Dev

根据匹配的行合并两个csv文件,并在linux中添加新列

来自分类Dev

熊猫根据列中的相同值合并数据框

来自分类Dev

合并具有相同值和总和值的同一列和表中的行

来自分类Dev

Python,Pandas:根据列值合并的某些行的总和

来自分类Dev

根据行值合并表

来自分类Dev

熊猫:根据相同的列值但不同的行和条件更新某些列值

来自分类Dev

如何根据唯一的行值将列值合并到向量列中?

来自分类Dev

根据列值合并表的2行

来自分类Dev

根据特定的列值合并Dataframe上的行并添加其他值

来自分类Dev

根据Powershell中的列值删除CSV行

来自分类Dev

根据Powershell中的列值删除CSV行

来自分类Dev

根据行值合并Oracle中的多列

来自分类Dev

根据行值将数据添加到csv列

来自分类Dev

合并具有相同值的sql行

来自分类Dev

合并列值相同的CSV行

来自分类Dev

根据相同的列值合并2行

来自分类Dev

根据其他列值返回具有相同列值的所有行

来自分类Dev

根据一列中的匹配项合并2个CSV文件,而不管标题行

来自分类Dev

根据列值合并行,并在下一行中对不同的列进行赋值

来自分类Dev

如果在不同的列(AWK)上具有相同的值,则合并连续的行的值

来自分类Dev

根据一列中的值拆分一个csv,然后按行合并/绑定输出

来自分类Dev

根据表值合并两列

来自分类Dev

根据列值合并数据框中的行值

来自分类Dev

根据列中的值合并行

来自分类Dev

使用shell脚本合并csv文件中具有相同值的行

Related 相关文章

热门标签

归档