摘要:隨著大數(shù)據(jù)時代不斷發(fā)展,數(shù)據(jù)中蘊藏著豐富的知識,且其價值日益提升。為了更好地認(rèn)識數(shù)據(jù)規(guī)律,通過從UCI數(shù)據(jù)庫中選取陶瓷樣本化學(xué)成分?jǐn)?shù)據(jù)集,基于開源的R語言對該數(shù)據(jù)集進行了預(yù)處理,然后使用不同的功能函數(shù)進行可視化與分析,經(jīng)過實驗探索在一定程度上反映了陶瓷樣本數(shù)據(jù)中化學(xué)成分的規(guī)律。
關(guān)鍵詞:R語言;數(shù)據(jù)分析;陶瓷樣本化學(xué)成分;可視化分析;UCI
中圖分類號:TP312 文獻標(biāo)識碼:A
文章編號:1009-3044(2024)22-0067-03
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID)
0 引言
以大數(shù)據(jù)為核心的時代,數(shù)據(jù)在社會中扮演著重要資產(chǎn)的角色并發(fā)揮著可觀的作用,其種類來源日趨豐富。因此,如何從數(shù)據(jù)中準(zhǔn)確挖掘信息并提取價值,繼而賦能科技生產(chǎn),促進社會經(jīng)濟向前發(fā)展成為當(dāng)今時代的主題。
R是一種開源的編程語言(https://cloud.r-project.org) ,其具備強大的數(shù)據(jù)分析與統(tǒng)計功能,并能產(chǎn)生優(yōu)越的作圖效果。第一屆中國R大會于2008年在中國人民大學(xué)召開,至今已成功延續(xù)至16屆。與此同時,R語言已愈發(fā)受到人們的廣泛關(guān)注,應(yīng)用于農(nóng)業(yè)、醫(yī)學(xué)、教育、材料等領(lǐng)域的各項分析任務(wù)中。余等人[1]從教學(xué)改革的角度出發(fā),利用R語言進行了課程探索。唐等人[2]從課程創(chuàng)新的角度出發(fā),利用R語言針對醫(yī)學(xué)類信息專業(yè)教學(xué)進行了探索研究。楊等人[3]從防災(zāi)應(yīng)用的角度出發(fā),利用R語言對地震數(shù)據(jù)進行了可視化以對防震工作和防震規(guī)律的認(rèn)識形成參考。本文選取了UCI數(shù)據(jù)庫中的陶瓷樣本化學(xué)成分?jǐn)?shù)據(jù),基于R語言對其進行了預(yù)處理與可視化過程,旨在通過分析獲得數(shù)據(jù)集內(nèi)隱含的知識。
針對數(shù)據(jù)集的分析過程分為數(shù)據(jù)采集、數(shù)據(jù)預(yù)處理、數(shù)據(jù)可視化與分析三個步驟,均在以下實驗環(huán)境中進行:R版本為4.3.3(64位),Rstudio版本為2023.06.1.0(64位),硬件操作系統(tǒng)為Windows11,處理器參數(shù)為11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40 GHz。
1 數(shù)據(jù)采集
UCI數(shù)據(jù)庫[5]是機器學(xué)習(xí)領(lǐng)域中一個不可或缺的數(shù)據(jù)源,其由世界各地的研究人員捐贈數(shù)據(jù)集并保持更新,該庫中的數(shù)據(jù)集涵蓋范圍廣泛,數(shù)據(jù)格式標(biāo)準(zhǔn)且種類繁多,適用于聚類、分類、回歸等多種場景。本文從UCI數(shù)據(jù)庫中將數(shù)據(jù)集Chemical Composition of Ceramic Samples[4]下載至本地,并采用read.table函數(shù)將其導(dǎo)入Rstudio集成開發(fā)環(huán)境中。
在UCI數(shù)據(jù)庫中對Chemical Composition of Ceramic Samples即陶瓷樣品的化學(xué)成分?jǐn)?shù)據(jù)集的描述如下:
該數(shù)據(jù)源于采用了能量色散X射線熒光測定了龍泉窯(大瑤縣)和景德鎮(zhèn)窯青瓷胎體和釉料的化學(xué)成分,選取了一些典型碎片,對其原材料和燒制工藝進行了研究。該數(shù)據(jù)集中各個屬性名稱、含義及其取值情況如表1所示。
2 數(shù)據(jù)預(yù)處理
由于相關(guān)研究人員在將本數(shù)據(jù)集上傳至UCI網(wǎng)站之前經(jīng)過了前期處理,因此在本文的數(shù)據(jù)預(yù)處理步驟中,僅使用is.na函數(shù)對數(shù)據(jù)集中的缺失值進行查詢,并結(jié)合summary函數(shù)對數(shù)據(jù)集中各個變量進行初步了解與分析,如變量個數(shù)、變量最大最小值、均值等,以便進一步提高數(shù)據(jù)質(zhì)量,進行后續(xù)的數(shù)據(jù)分析與可視化步驟。
在數(shù)據(jù)集中非數(shù)值型變量有兩個,分別是Ceramic.Name和Part。為了便于后續(xù)可視化與分析,根據(jù)各自取值情況和含義的不同分別對這兩個變量進行了轉(zhuǎn)換,并將Ceramic.Name列的位置由第一列調(diào)整至最后一列。
由于Part的取值包含兩種(Body、Glaze) ,這里使用R語言中的as.numeric函數(shù)對其進行了編碼處理,將因子型變量轉(zhuǎn)換為數(shù)值型變量。(轉(zhuǎn)換規(guī)則:數(shù)值1代表字符Body,2代表字符Glaze) 。
變量Ceramic.Name的取值為字符串型,需對其進行規(guī)約化。首先通過R語言中的grepl函數(shù)進行字符串匹配,然后結(jié)合as.numeric函數(shù)對其進行了編碼處理,將字符串型變量轉(zhuǎn)換為數(shù)值型變量。通過分析得知,該變量下每個字符串中第一子串的取值為二元情況,即“FLQ”與“DY”,因此將該變量下的兩類字符型值全部轉(zhuǎn)換為二元數(shù)值1和2。以字符串“FLQ-1-b”為例,對其轉(zhuǎn)化后用數(shù)值1表示。這里將第一個子串“FLQ”視作瓷器種類,將中間數(shù)字字串“1”視作為該種類下的實例序號,將最后字串“g”視作部位標(biāo)識釉(Glaze的首字母)。本文按照上述規(guī)則對Ceramic.Name變量下的取值進行轉(zhuǎn)換后的結(jié)果如表2所示。
3 數(shù)據(jù)可視化與分析
3.1 pairs函數(shù)分析
首先確保R中導(dǎo)入graphics包,便可使用包中的pairs函數(shù)繪制矩陣圖形,以同時涵蓋數(shù)據(jù)集中的所有變量,針對變量兩兩之間的關(guān)系形成整體描述。對陶瓷樣本化學(xué)成分?jǐn)?shù)據(jù)集經(jīng)過上述預(yù)處理完成后,得到的可視化分析結(jié)果如圖1和圖2所示。
如圖1所示為去掉標(biāo)簽列Ceramic.Name后的可視化結(jié)果,對角線位置依序為陶瓷樣本的化學(xué)成分?jǐn)?shù)據(jù)集中各個特征的名稱。例如,第一行的第一個圖形為本數(shù)據(jù)集第一個變量Part,第一行的第二個圖形顯示了第一個變量Part和第二個變量Na2O重量百分比之間的關(guān)系,而第二行中對角線位置的右側(cè)第一個圖形顯示了Na2O重量百分比和第三個變量MgO重量百分比之間的關(guān)系。圖2所示為保留標(biāo)簽列Ceramic.Name后的可視化結(jié)果,可以看到右下角比圖1多一個對角線位置即標(biāo)簽列。
3.2 PCA函數(shù)分析
PCA是統(tǒng)計學(xué)中常用的分析技術(shù),其通過降維的思想,結(jié)合計算特征值等數(shù)學(xué)量作用于數(shù)據(jù)集中的主成分分析。為了便于可視化分析,這里將陶瓷樣本數(shù)據(jù)集作為分類集對待,首先刪除了標(biāo)簽列即Ceramic.Name,其次需確保R中導(dǎo)入ggplot2、factoextra、FactoMineR包,便可使用包中的PCA函數(shù)一步到位繪制主成分分析圖,預(yù)處理完成后的數(shù)據(jù)集可視化分析結(jié)果如圖3所示。
由圖3可知,經(jīng)PCA函數(shù)分析后可視化為一個半徑為1的圓,橫縱坐標(biāo)軸1.0刻度處的Dim1和Dim2分別表示經(jīng)PCA函數(shù)分析后確定的兩個主成分,貢獻百分比分別為39.52%和14.95%。圓內(nèi)各個箭頭標(biāo)識了不同的特征,在同一空間內(nèi)反映了陶瓷樣本數(shù)據(jù)集中主成分與各個特征之間的關(guān)系。另外,特征之間的夾角不同,例如,ZnO與MgO之間較為靠近且夾角為銳角,表示兩者之間為正相關(guān)關(guān)系;而Al2O3與MgO之間較為疏遠且夾角為鈍角,表示兩者之間為負相關(guān)關(guān)系。
為了進一步探索不同種類陶瓷樣本與化學(xué)成分的規(guī)律,使用get_eigenvalue函數(shù)查看PCA分析后的統(tǒng)計量,包括各個主成分的eigenvalue(特征值)、variance.percent(貢獻百分比)、cumulative.variance.percent(累積貢獻百分比),并根據(jù)每個主成分的貢獻百分比使用fviz_eig函數(shù)繪制柱形圖,當(dāng)貢獻百分比降低的趨勢基本穩(wěn)定并達到初期設(shè)定的閾值時,可得出數(shù)據(jù)集中的主成分各項及數(shù)目,柱形圖分析結(jié)果如圖4所示。
根據(jù)圖4可知,在本數(shù)據(jù)集中,各項的貢獻百分比在x坐標(biāo)軸上從左至右呈現(xiàn)下降現(xiàn)象。例如,第一維特征貢獻百分比為39.5%,第二維特征貢獻百分比為15%,二者下降梯度較大;第三維特征貢獻百分比為8.4%,第二、三維特征間下降梯度較上一間隔要小,此后依次各維特征貢獻百分比與相鄰特征間下降梯度的數(shù)值不斷減小且漸趨平穩(wěn),因此可選取縱坐標(biāo)數(shù)值較大所對應(yīng)的特征作為此數(shù)據(jù)集的主成分,例如前三個特征。
4 結(jié)論
本文選取UCI數(shù)據(jù)源中的陶瓷樣本化學(xué)成分?jǐn)?shù)據(jù)集作為分析對象,基于R語言對該數(shù)據(jù)集進行了預(yù)處理,在此基礎(chǔ)上使用不同的功能函數(shù)進行了數(shù)據(jù)可視化與分析操作,旨在對陶瓷樣本數(shù)據(jù)中化學(xué)成分的規(guī)律進行探索,對后續(xù)該數(shù)據(jù)集及相關(guān)領(lǐng)域的分析具有一定的參考意義。
參考文獻:
[1] 余卓芮,孫怡恒,劉鈺,等.基于開源R語言建模的空間分析教學(xué)改革研究[J].電腦知識與技術(shù),2024,20(1):10-13.
[2] 唐丹丹,張志豪,田翔華.基于R語言的醫(yī)學(xué)院生物信息學(xué)課程教學(xué)探新[J].電腦知識與技術(shù),2023,19(19):133-135.
[3] 楊麗佳,陳新房,汪世偉.基于R語言與BDP的地震數(shù)據(jù)可視化[J].科學(xué)技術(shù)創(chuàng)新,2024(2):139-142.
[4] UCI Machine Learning Repository. Chemical Composition of Ceramic Samples[DB/OL]. https://doi.org/10.24432/C54P5X, 2019.
【通聯(lián)編輯:王 力】