首页 > 解决方案 > 删除重复的数据行

问题描述

删除重复的数据行,留下一条时间最快的记录

我的数据如下所示:

First Name Last Name    Fastest Time     Time To Cut
---------- ---------    --------         -----------
Jack       Black        01:31.00         33.497 should be removed    
Jeff       Black        01:27.22         29.718     
Mike       Fair         01:01.33         3.823  should be removed     
Mike       Fair         00:58.12         0.621      
Anthony    Gal          01:04.36         6.858      
Steff      Hart         01:06.50         8.999      
Steff      Hart         01:07.50         9.999  should be removed   

我试图为桌子上的每个人争取最快的时间。我尝试过使用Select-Object -Unique(表格按 ' Last Name','排序First Name'),但我不知道从那里做什么。

标签: powershell

解决方案


用于Group-Object按名称对数据进行分组,然后从每组中选择最佳时间:

$data |Group-Object 'Last Name','First Name' |ForEach-Object {
    # Output only the fastest time from each group
    $_.Group |Sort-Object 'Fastest Time' |Select -First 1
}

推荐阅读