大數(shù)據(jù)分析(三):使用R讀取CSV數(shù)據(jù)

CSV數(shù)據(jù)

逗號分隔值(Comma-Separated Values,CSV,有時(shí)也稱為字符分隔值,因?yàn)榉指糇址部梢圆皇嵌禾枺?,其文件以純文本形式存儲表格?shù)據(jù)(數(shù)字和文本)。純文本意味著該文件是一個(gè)字符序列,不含必須像二進(jìn)制數(shù)字那樣被解讀的數(shù)據(jù)。CSV文件由任意數(shù)目的記錄組成,記錄間以某種換行符分隔;每條記錄由字段組成,字段間的分隔符是其它字符或字符串,最常見的是逗號或制表符。通常,所有記錄都有完全相同的字段序列。

CSV也是一種常用的數(shù)據(jù)格式,其特點(diǎn)是純文本,讀取和存儲簡單。目前很多BI系統(tǒng)或者大數(shù)據(jù)平臺也支持直接對接CSV文件。比如Hadoop Hive平臺默認(rèn)的數(shù)據(jù)存儲格式就是CSV。

在R中讀取和保存CSV文件非常簡單,不需要像讀取EXCEL文件那樣下載其他的package,因?yàn)镽本身就支持CSV文件的讀取。依然以學(xué)生信息數(shù)據(jù)為例,

CSV數(shù)據(jù)

因?yàn)镃SV文件為純文本格式,所以可以方便的用記事本進(jìn)行編輯,數(shù)據(jù)分隔符默認(rèn)為逗號(EXCEL的打開可就沒有這么方便咯,有探索精神的童鞋可以用記事本編輯下EXCEL試試_)。

直接在R環(huán)境中輸入如下命令:

> stu_data <- read.csv(file="download/stu.csv", header=T)

上述命令中的file參數(shù)表示csv文件的路徑,header參數(shù)表示是否將csv文件的第一行作為列名,header參數(shù)默認(rèn)是T(true)。如果沒有錯(cuò)誤提示則表示讀取成功,然后可以用class(stu_data)來查看stu_data的數(shù)據(jù)類型:

> class(stu_data)

也可以用head(stu_data)來查看stu_data中的數(shù)據(jù)內(nèi)容:

> head(stu_data)

R中查看CSV數(shù)據(jù)

以上結(jié)果為header=T時(shí),第一行數(shù)據(jù)會被作為列名,而不是作為實(shí)際的數(shù)據(jù)。如果header=F時(shí),那結(jié)果會是下面的樣子:

header=F時(shí)的數(shù)據(jù)

大家可以看上面兩幅圖中的第一行的數(shù)據(jù),就明白header參數(shù)設(shè)置的意義了。

至此,使用R語言讀取CSV中的數(shù)據(jù)就完成了。后續(xù)就可以利用R來處理這些數(shù)據(jù)了。

  • 使用R也可以非常方便的將數(shù)據(jù)保存為CSV文件,命令為:
>write.csv(x=stu_data, file="stu_bak.csv", row.names=F, quote=F)

通過以上命令可以將數(shù)據(jù)寫入csv文件,row.names設(shè)置是否將行號寫入csv文件,quote設(shè)置是否在數(shù)據(jù)中加入引號。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容