從CSV

2016-08-08 38 views
0

刪除唯一行我有以下結構的CSV:從CSV

Source Target LinkId LinkName Throughput 
================================================== 
1  12  1250  link1250   5 
1  12  3250  link3250   14 
1  14  1250  link1250   5 
1  14  3250  link3250   14 
1  18  1250  link1250   5 
1  18  3250  link3250   14 
1  25  250  link250    24 //to be removed 
2  12  2250  link2250   5 
2  12  5250  link5250   14 
2  14  2250  link2250   5 
2  14  5250  link5250   14 
2  18  2250  link2250   5 
2  18  5250  link5250   14 
2  58  50  link50    34 //to be removed 

在上面的CSV,我應該正在發生一次,像那些上面所強調的刪除行。在突出顯示的行中,鏈接250僅存在一行。我想知道是否有一種使用Excel的簡單方法來執行此操作。

+0

您是否需要以連續的方式進行此操作,或者只需要一次「修復」您的數據? –

+0

我需要以連續的方式去做@UlliSchmid – smyslov

回答

1

1) 「速戰速決」 的方式 - 輔助列和過濾

創建一個新的列F 「Occurances」。在F3中,輸入

=COUNTIF(D:D,D3) 

然後將單元格F3複製到F4:F16。現在,你可以簡單地篩選只有一個次數的一切:

  • 選擇你的整個範圍(A1:F16,包括F列和行1)
  • 點擊數據 - >過濾
  • 點擊次數(F1) - >取消選擇 「1」 來過濾不必要的行

2) 「連續修復」 - 輔助列和索引/匹配

創建一個新的列F「幫手」。在F3中,輸入

=F2+(COUNTIF(D:D,D3)<>1) 

然後將單元格F3複製到F4:F16。現在,您可以創建數據的「清理」或濾波片:

  • 創建一個新的Excel工作表(Sheet2中,我認爲舊的命名工作表Sheet1)
  • 複製你的頭文件(A1:E2)從工作表Sheet1
  • 進入A3,進入=INDEX(Sheet1!A$3:F$16,MATCH(ROW()-2,Sheet1!$F$3:$F$16,0),1)
  • 複製A3到A3:E14

Sheet2中現在會自動創建工作表Sheet1的過濾副本。

+0

我忘記在我的問題中提到csv有超過5k行和超過150個來源。 – smyslov