我想解析一個巨大的選項卡有限文件(TSV文件),並將其轉換爲逗號分隔值文件。 我遇到的問題是tsv文件中的所有條目都不完整,其中一些條目不完整,並且由條目之間的多個製表符間隔表示。現在,當我將它轉換爲csv文件時,我希望它們之間有「n.a」,表示該記錄的該字段中沒有任何條目。計數多個選項卡tsv文件
例如,考慮學生記錄樣品(1個標籤= 4位,與我的差格式熊)
Name Age Department GPA
Kevin 21 Computer Science 3.4
Tom 20 3.8
Kelsey 22 Psychology (2 tab spaces here)
在上述例子中的第一個記錄表示該字段的標題和每個行是一個記錄。 我們可以觀察到Tom的'Department'字段條目缺失,Kelsey缺少'GPA'字段條目。 我的輸出應該是這樣的:
"Name","Age","Department","GPA"
"Kevin","21","Computer Science","3.4"
"Tom","20","n.a","3.8"
"Kelsey","22","Psychology","n.a"
我的問題:
1)我怎樣才能解決這個問題? Python,java,bash,awk任何腳本都可以做
2)觀察在'department'字段下的第二行中的單詞「Computer」&「Science」之間的空間被忽略和保留。所以生成的腳本不應該計入空格。
完成此操作非常重要,因爲我將爲搜索索引提供數據。提前致謝。
$ AWK 'NR> 0 {$ 1 = $ 1} 1' OFS = 「」 FILENAME> OUTPUT_FILE – crazyim5 2012-08-10 22:07:45
恐怕我們並沒有真正看到你貼上的標籤,所以你應該清楚在連續字段之間是否總是有一個標籤。 – 2012-08-10 22:10:30