《Using OpenRefine》翻譯~6

上一篇:《Using OpenRefine》翻譯~5

第二章:分析和修改數據

本章中,我們將更加深入的學習OpenRefine的數據分析和修改功能,主要的內容包括下面六點:

*點1-數據排序

*點2-數據透視

*點3-重複檢測

*點4-應用一個文本過濾

*點5-使用簡單單元格轉換

*點6-移除匹配行

和第一章:初識OpenRefine一樣,本章可以讓讀者按照自己的需要或愛好選擇閱讀順序,並不需要按照順序閱讀。按照順序閱讀也可以,但並不是必須的。

各個要點內容長短不一,有些很短,但有些卻不止一兩頁,比如要點2-數據透視,包括了數據透視的方方面面,這個要點包括了很多頁內容並且有很多子內容。

本章學習中,我們建議你使用Import Project 導入項目chapter2.openrefine.tar.gz 。當然你也可以使用第一章中使用的示例文件chapter1.tsv 



1-數據排序

本點中,我們將學習如何使用排序功能來作爲觀察數據的手段,以及在進一步處理數據前如何對行進行排序。

因爲排過序的值更加容易理解和分析,某些時候你需要使用OpenRefine的排序功能,你可能是想用來觀察下數據或者就是想對數據進行排序.我們以Record ID 列爲例進行排序,選擇列菜單中的Sort... ,將彈出如下窗口:


單元格值可以按照文本(區別大小寫或者不區別)、數字、日期、布爾值排序,對每個 類別有兩種不同的排序方式:

Text: 文本:從a到z排序或者從z到a排序

Numbers數字: 升序或者降序

Dates: 日期升序或者日期降序

Booleans: false值先於true值 或true值先於false值 

還有我們可以對錯誤值和空值指定排序順序。比如錯誤值可以排在最前面(這樣容易發現問題),空值排在最後(因爲空值一般沒有意義),而有效值居中。

Record ID列通過按數字升序排列爲例,我們就會獲得一列以7、9、14等等標識的列,而打開時是以267220、346260、 267098標識順序的,下圖對排序前後的情況做了比對:


如果按照Text: 文本排序的話,會得到以100、1001、10019開始的一列。同時應該關注的一點是:排序並不會被記錄在項目操作歷史中。你可以在屏幕左側頂部的Undo / Redo 頁中確認下。

那是因爲排序並不會改變數據,其僅僅是改變了顯示方式,比如行列互換、隱藏不想顯示的列(就像excel的排序過濾功能)。所以每次對某列進行排序,你就會面對三種抉擇:取消排序回到原來狀態、暫時保持、永久改變。

你無法能在列菜單中做到上面三種要求,但是你可以在屏幕頂部的快捷菜單Sort來做到:


對行進行重新排序

Sort菜單可以讓你移除排序操作或者永久對行進行排序。另外,該功能還能提醒你究竟對哪些列進行了排序,還能夠對多列進行組合排列操作(見上圖)。舉個例子,你可以先對Registration Number排序,然後再對Object Title列排序,過會你還可以去掉按Registration Number排序的操作(通過菜單Sort | By Registration Number | Remove sort ),最後再將排序永久保存。每個排序的子菜單還能夠通過點擊一次來改變排序順序(比如升序變降序) 

記得如果你想將排序後的結果再進行後續操作,一定要將排序結果永久保存,比如對於空白單元格或者填充單元格,爲了避免前後不一致的錯誤,在3-重複檢測中,我們將學習如何利用排序的預處理手段來移除重複值。


下一篇:《Using OpenRefine》翻譯~7


發佈了15 篇原創文章 · 獲贊 16 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章