Python數(shù)據(jù)預處理應用技術千鋒習題答案_第1頁
Python數(shù)據(jù)預處理應用技術千鋒習題答案_第2頁
Python數(shù)據(jù)預處理應用技術千鋒習題答案_第3頁
Python數(shù)據(jù)預處理應用技術千鋒習題答案_第4頁
Python數(shù)據(jù)預處理應用技術千鋒習題答案_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

初識Python數(shù)據(jù)預處理習題填空題JupyterNotebook啟動后默認的端口號是_8888_。答案解析:跳轉(zhuǎn)到的網(wǎng)址:http://localhost:8888/tree(其中l(wèi)ocalhost表示你的計算機,8888是服務器的默認端口)。數(shù)據(jù)預處理主要的方法有數(shù)據(jù)清洗、數(shù)據(jù)集成、數(shù)據(jù)變換和數(shù)據(jù)規(guī)約。答案解析:數(shù)據(jù)預處理5大流程:初始數(shù)據(jù)獲取、數(shù)據(jù)清洗、數(shù)據(jù)集成、數(shù)據(jù)變換、數(shù)據(jù)規(guī)約。Numpy的主要數(shù)據(jù)類型是_ndarray對象_,用于計算的主要數(shù)據(jù)類型是_dtype。答案解析:Numpy的主要數(shù)據(jù)類型是ndarray格式,主要包括整數(shù)、浮點數(shù)、復數(shù)、布爾值、字符串、python等對象類型,NumPy數(shù)值類型是dtype(數(shù)據(jù)類型)對象的實例。Pandas的數(shù)據(jù)結構可以分為2類,分別為_series_與_DateFrame_。答案解析:Pandas的數(shù)據(jù)結構主要可以分為兩類:series和DataFrame。Series類似于數(shù)組;DataFrame類似于表格。_Anaconda_中包含了conda、Python在內(nèi)的超過180個科學包及其依賴項。答案解析:Anaconda擁有個人版、商業(yè)版、團隊版、企業(yè)版,除個人版不收費外,其他版本都需要付費,這是一個開源的Python發(fā)行版本,其包含了conda、Python等180多個科學包及其依賴項。JupyterNotebook是一個支持__執(zhí)行_代碼、數(shù)學方程、可視化和Markdown的Web應用程序。答案解析:Jupyter是一個集Python編程語言以及其他編程語言的、交互式集成開發(fā)環(huán)境,可以將代碼執(zhí)行、文本、數(shù)學、情節(jié)和富媒體組合到一個文檔中。選擇題關于Python的說法中錯誤的是(C)Python是一種面向?qū)ο蟮恼Z言Python元組中的元素不可改變Python列表中的元素數(shù)據(jù)類型必須一致Python的字符串可以以一對英文雙引號(“”)括起來答案解析:A項,Python是一種面向?qū)ο蟮哪_本語言。B項,Python元組寫在小括號()里,元素之間用逗號隔開,且元素不能修改。D項,Python的字符串可以使用一對英文單引號'‘或雙引號“”括起來。C項,寫在方括號[]之間、用逗號分隔開的元素列表,元素可以是字符、數(shù)字、字符串等不同類型,故C項說法錯誤。下面代碼的運行結果是(A)importnumpyasnpa=np.array([1,2,3])b=np.array([4,5,6])np.concatenate((a,b))array([1,2,3,4,5,6])[1,2,3,4,5,6][5,7,9]array([1,2,3],[4,5,6])答案解析:np.concatenate()的功能是對兩個數(shù)組數(shù)據(jù)進行拼接,np.concatenate((a,b))是對array進行拼接的函數(shù),a、b是待拼接的數(shù)組。影響數(shù)據(jù)質(zhì)量的因素有哪些(D)準確性、完整性、一致性相關性、時效性可信性、可解釋性以上都是答案解析:數(shù)據(jù)質(zhì)量是指數(shù)據(jù)的一組固有屬性滿足數(shù)據(jù)消費者要求的程度。數(shù)據(jù)質(zhì)量的表述:準確性、完整性、一致性、相關性、時效性和可信性可解釋性等。以下說法錯誤的是(B)數(shù)據(jù)預處理的主要流程為數(shù)據(jù)清理、數(shù)據(jù)集成、數(shù)據(jù)變換和數(shù)據(jù)規(guī)約。數(shù)據(jù)清理、數(shù)據(jù)集成、數(shù)據(jù)變換、數(shù)據(jù)規(guī)約這些步驟在數(shù)據(jù)預處理活動中必須順序使用。冗余數(shù)據(jù)的刪除既是一種數(shù)據(jù)清理格式,也是一種數(shù)據(jù)規(guī)約。整個預處理過程要盡量人機結合,尤其要注重和客戶以及專家多交流。答案解析:A項,數(shù)據(jù)預處理的主要流程包括獲取初始數(shù)據(jù)、數(shù)據(jù)清洗、數(shù)據(jù)集成、數(shù)據(jù)變換和數(shù)據(jù)規(guī)約。B項,數(shù)據(jù)清理、數(shù)據(jù)集成、數(shù)據(jù)變換、數(shù)據(jù)規(guī)約這些步驟在數(shù)據(jù)預處理活動中可以不需要全部使用,也不需要順序使用,只要能達到希望的“干凈”數(shù)據(jù)就可以啦,故B項說法錯誤。C項,冗余數(shù)據(jù)是指同一屬性多次出現(xiàn)或者同一屬性命名不一致導致重復,刪除冗余屬性屬于數(shù)據(jù)清理的格式,也屬于一種數(shù)據(jù)規(guī)約的形式,降低數(shù)據(jù)規(guī)模。D項,整個預處理過程要盡量人機結合,尤其要注重和客戶以及專家多交流,這些都是為了得到更為合適的數(shù)據(jù)集,并且提高數(shù)據(jù)分析或挖掘等操作的效率。以下關于數(shù)據(jù)分析預處理的過程描述正確的是(C)數(shù)據(jù)清洗包括了數(shù)據(jù)標準化、數(shù)據(jù)合并和缺失值處理。數(shù)據(jù)合并按照合并軸方向主要分為左連接、右連接、內(nèi)連接和外連接。數(shù)據(jù)分析的預處理過程主要包括數(shù)據(jù)清洗、數(shù)據(jù)合并、數(shù)據(jù)標準化和數(shù)據(jù)轉(zhuǎn)換,他們之間存在交叉,沒有嚴格的先后關系。數(shù)據(jù)標準化的主要對象是類別型的特征。答案解析:數(shù)據(jù)清洗包括缺失值、重復值和異常值的處理,數(shù)據(jù)標準化屬于數(shù)據(jù)變換的操作,數(shù)據(jù)合并屬于數(shù)據(jù)集成的操作。故A項說法錯誤。數(shù)據(jù)合并按照合并軸方向可以分為橫向合并和縱向合并,左連接、右連接、內(nèi)連接和外連接是merge函數(shù)使用how參數(shù)的不同參數(shù)進行分類。故B項說法錯誤。數(shù)據(jù)標準化的主要特征是數(shù)值型類別的特征,故D項說法錯誤。有一份數(shù)據(jù),需要查看數(shù)據(jù)的類型,并將部分數(shù)據(jù)做強制類型轉(zhuǎn)換,以及對數(shù)值型數(shù)據(jù)做基本的描述型分析。下列的步驟和方法正確的是(A)dtypes查看類型,astype轉(zhuǎn)換類別,describe描述性統(tǒng)計。astype查看類型,dtypes轉(zhuǎn)換類別,describe描述性統(tǒng)計。describe查看類型,astype轉(zhuǎn)換類別,dtypes描述性統(tǒng)計。dtypes查看類型,describe轉(zhuǎn)換類別,astype描述性統(tǒng)計。答案解析:dtypes查看類型,astype轉(zhuǎn)換類別,describe描述性統(tǒng)計。JupyterNotebook不具備的功能是(B)。JupyterNotebook可以直接生成一份交互式文檔。JupyterNotebook可以安裝Python庫。JupyterNotebook可以導出HTML文件。JupyterNotebook可以將文件分享給他人。答案解析:在JupyterNotebook中開始使用IPython,IPython本身專注于交互式Python,其中一部分是為Jupyter提供Python內(nèi)核。包括了Python的庫,不需要安裝?!径噙x】下列關于JupyterNotebook的描述錯誤的是(BCD)。JupyterNotebook有兩種模式。JupyterNotebook有兩種單元形式。JupyterNotebookMarkdown無法使用LaTeX語法。JupyterNotebook僅僅支持Python語言。答案解析:JupyterNotebook有4種單元形式,可以分為:代碼、Markdown、原生NBconvert、標題。JupyterNotebook還支持LaTeX語法、R語言和Python等。在Jupyternotebook的cell中安裝包語句正確的是(C)pipinstall包名condainstall包名!pipinstall包名!condainstall包名答案解析:在Jupyternotebook的cell中安裝包語句為:!pipinstall包名?!径噙x】下列關于Python數(shù)據(jù)分析庫的描述錯誤的是(ABD)。NumPy的在線安裝不需要其他任何輔助工具SciPy的主要功能是可視化圖表pandas能夠?qū)崿F(xiàn)數(shù)據(jù)的整理工作scikit-learn包含所有算法答案解析:NumPy的在線安裝可以借助pip或conda等輔助工具。SciPy的主要功能是從各種文件格式比如CSV、JSON、SQL、MicrosoftExcel導入數(shù)據(jù),還可以對各種數(shù)據(jù)進行運算操作,比如歸并、再成形、選擇、數(shù)據(jù)清洗和數(shù)據(jù)加工特征。scikit-learn包含了常用的機器學習算法,比如回歸、分類、聚類、支持向量機、隨機森林等,同時使用NumPy庫進行高效的科學計算,比如線性代數(shù)、矩陣等,并不是包含所有算法?!径噙x】下列屬于Anaconda主要特點的是(ABC)。包含了眾多流行的科學、數(shù)學、工程、數(shù)據(jù)分析的Python包。完全開源和免費。支持Python2.6、2.7、3.4、3.5、3.6,可自由切換。額外的加速和優(yōu)化是免費的。答案解析:略創(chuàng)建一個3×3的數(shù)組,下列代碼中錯誤的是(C)。np.arange(0,9).reshape(3,3)np.eye(3)np.random.random([3,3,3])np.mat(“123;456;789”)答案解析:正確的數(shù)組形式如下:np.random.random((3,3,3))。簡答題Numpy中的reshape()函數(shù)的主要作用是什么?答:arr.reshape()將在不更改數(shù)據(jù)的情況下為數(shù)組提供新形狀。簡述Series與DataFrame的特點。答:Series

是一種類似于一維數(shù)組的對象,它由一組數(shù)據(jù)以及索引(index)組成。DataFrame

是一個表格型的數(shù)據(jù)結構,它含有一組有序的列,每列可以是不同的值類型(數(shù)值、字符串、布爾型值)。DataFrame既有行索引也有列索引,它可以被看做由Series組成的字典(共同用一個索引)。操作題創(chuàng)建如下數(shù)組。注意:使用正確的數(shù)據(jù)類型。[[4,3,4,3,4,3],[2,1,2,1,2,1],[4,3,4,3,4,3],[2,1,2,1,2,1]]答:程序如下:importnumpyasnparr=np.array([[4,3,4,3,4,3],[2,1,2,1,2,1],[4,3,4,3,4,3],[2,1,2,1,2,1]])print(arr)生成范圍在0~1、服從均勻分布的10行5列的數(shù)組。importnumpyasnparr=np.random.rand(10,5)arr生成兩個2×2矩陣,并計算矩陣乘積。importnumpyasnpmatr1=np.mat("23;45")matr1matr2=np.mat("56;78")matr2思考與拓展P31思考:為什么NumPy比列表快?參考答案:Numpy與列表不同,NumPy數(shù)組存儲在內(nèi)存中的一個連續(xù)位置,因此進程可以非常有效地訪問和操縱它們。這種行為在計算機科學中稱為引用的局部性。這是NumPy比列表更快的主要原因。Numpy還經(jīng)過了優(yōu)化,可與最新的CPU體系結構一同使用。P44大家運用學過的知識將上述結果可視化展現(xiàn)。fromscipyimportoptimizeimportmatplotlib.pyplotasplt#梯度下降優(yōu)化算法deff(x):returnx**2-4*xinitial_x=0optimize.fmin_bfgs(f,initial_x)plt.plot(x,f(x))plt.show()數(shù)據(jù)獲取與存儲習題填空題大數(shù)據(jù)領域主流有三種數(shù)據(jù)類型,分別是_結構化數(shù)據(jù)、_半結構化數(shù)據(jù)_和__非結構化數(shù)據(jù)_。答案解析:按照數(shù)據(jù)類型分類,可將數(shù)據(jù)分為結構化數(shù)據(jù)、半結構化數(shù)據(jù)、非結構化數(shù)據(jù),這是大數(shù)據(jù)領域主流的三種數(shù)據(jù)類型。pandas.read_csv()函數(shù)中,如果讀取的文件中含有中文,則encoding常設置為_utf-8_。答案解析:encoding:通常設置encoding=”utf-8”,指定字符集類型。如果文件名中有中文,容易導致亂碼。engine="python"可以避免文件路徑中有中文,encoding="utf_8_sig"可以使讀取的內(nèi)容中有中文。網(wǎng)絡爬蟲的基本執(zhí)行流程的三個過程:_請求數(shù)據(jù)、解析數(shù)據(jù)與保存數(shù)據(jù)。答案解析:網(wǎng)絡爬蟲的基本執(zhí)行流程可以總結為三個過程:請求數(shù)據(jù)、解析數(shù)據(jù)與保存數(shù)據(jù)。數(shù)據(jù)請求:請求的數(shù)據(jù)除了HTML之外,還有json數(shù)據(jù)、字符串數(shù)據(jù)、圖片、視頻、音頻等。解析數(shù)據(jù):當一個數(shù)據(jù)下載完成后,對數(shù)據(jù)中的內(nèi)容進行分析,并提取出需要的數(shù)據(jù),提取到的數(shù)據(jù)可以以多種形式保存起來,數(shù)據(jù)的格式有非常多種,常見的有csv、json、pickle等。保存數(shù)據(jù):最后將數(shù)據(jù)以某種格式(CSV、JSON)寫入文件中或存儲到數(shù)據(jù)庫(MySQL、MongoDB),同時保存為一種或者多種。常見的文本文件可分為三種:_CSV_、_TXT_與_PDF_。答案解析:常見的文本文件有TXT文件、CSV文件和PDF格式文件。Python處理JSON文件的函數(shù)有json.dumps、json.loads、json.dump與json.load。答案解析:Python處理JSON文件的函數(shù)有json.dumps、json.loads、json.dump與json.load。函數(shù)作用json.dumps對數(shù)據(jù)進行編碼,將Python中的字典轉(zhuǎn)換為JSON字符串json.loads對數(shù)據(jù)進行解碼,將JSON字符串轉(zhuǎn)換為Python中的字典json.dump將Python中的字典數(shù)據(jù)寫入json文件中json.load打開json文件,并把字符串轉(zhuǎn)換為Python的字典數(shù)據(jù)選擇題下面有關SQL說法不正確的是(B)刪除表可用drop修改表結構可用update增加數(shù)據(jù)可用insertinto切換數(shù)據(jù)庫可用use答案解析:修改表結構可用ALTER,update用于更新表中的數(shù)據(jù)。以下說法錯誤的是(C)可能通過pymysql.connect(host,user,password,database)連接到mysql數(shù)據(jù)庫cursor.execute(sq)執(zhí)行SQL語句cursor.fetch.all()獲取一行執(zhí)行結果若改變了數(shù)據(jù)庫里的數(shù)據(jù),需要調(diào)用commit()來提交答案解析:cursor.fetch.all()從數(shù)據(jù)庫取數(shù)據(jù),返回多個元組,即返回多個記錄(rows),如果沒有結果則返回()。fetchone():返回單個的元組,也就是一條記錄(row),如果沒有結果則返回None。下列關于pandas數(shù)據(jù)讀/寫說法錯誤的是(A)。read_csv能夠讀取所有文本文檔的數(shù)據(jù)read_sql能夠讀取數(shù)據(jù)庫的數(shù)據(jù)to_csv函數(shù)能夠?qū)⒔Y構化數(shù)據(jù)寫入.csv文件to_excel函數(shù)能夠?qū)⒔Y構化數(shù)據(jù)寫入Excel文件答案解析:read_csv能夠讀取所有CSV格式的文本文檔的數(shù)據(jù)。數(shù)據(jù)的存儲方式有(ABC)ExcelCSV數(shù)據(jù)庫Python答案解析:數(shù)據(jù)的存儲方式有Excel、CSV、Word、JSON、XML與數(shù)據(jù)庫等。閱讀下面一段程序:importjiebasentence='人生苦短,我用Python'terms_list=jieba.cut(sentence,cut_all=True)print(''.join(terms_list))執(zhí)行上述程序,最終輸出的結果為(D)。人生苦短我用Python人生苦短我用Python人生苦短我用Python人生苦短我用Python答案解析:jieba.cut()為jieba全模式,把句子中所有可能是詞語的都掃描出來,所以需要將詞語都分開?;ヂ?lián)網(wǎng)的數(shù)據(jù)獲取有哪些不足(C)?大數(shù)據(jù)時代很難獲得大量的有效數(shù)據(jù)大數(shù)據(jù)獲取的速度比較慢大數(shù)據(jù)時代的數(shù)據(jù)也不是百分之百的真實有效地挖掘數(shù)據(jù)中隱含的關聯(lián)關系有一定難度答案解析:互聯(lián)網(wǎng)數(shù)據(jù)獲取的優(yōu)缺點分別如下,優(yōu)點:1.高效、便捷2.信息傳播渠道多速度快,減少了信息不對稱3.部分公司或個人抓住風口創(chuàng)業(yè)成功。缺點:1.不良信息2.有效信息不易找?!径噙x】三維地圖數(shù)據(jù)獲取的技術手段(ABCD)。大地測量與工程測量技術三維激光掃描測量技術SAR與InSAR技術真實性攝影測量與遙感技術答案解析:三維地圖數(shù)據(jù)獲取的技術手段有多種,如大地測量技術、攝影測量技術、三維激光掃描技術等,合成孔徑雷達(SyntheticApertureRadar,SAR)是一種能夠產(chǎn)生高分辨率圖像的雷達系統(tǒng)。合成孔徑雷達干涉測量(InterferometricSyntheticApertureRadar,InSAR)是最具潛力的空間對地觀測技術之一,是對SAR技術的一種擴展,其工作原理是利用SAR對相同地區(qū)拍攝兩幅影像,經(jīng)過干涉獲得該區(qū)域的干涉條紋圖,干涉條紋圖中則包含該區(qū)域的地形信息。數(shù)據(jù)預處理的初始數(shù)據(jù)獲取,包括(AB)。文件數(shù)據(jù)庫網(wǎng)頁大數(shù)據(jù)平臺答案解析:數(shù)據(jù)預處理的初始數(shù)據(jù)獲取,包括文件、數(shù)據(jù)庫等。下列不屬于常見爬蟲類型的是(C)。增量式網(wǎng)絡爬蟲通用網(wǎng)絡爬蟲淺層網(wǎng)絡爬蟲聚焦網(wǎng)絡爬蟲答案解析:網(wǎng)絡爬蟲按照系統(tǒng)結構和實現(xiàn)技術,大致可以分為以下幾種類型:通用網(wǎng)絡爬蟲、聚焦網(wǎng)絡爬蟲、增量式網(wǎng)絡爬蟲、深層網(wǎng)絡爬蟲。故選擇C項。網(wǎng)絡數(shù)據(jù)采集法,主要通過網(wǎng)絡爬蟲或網(wǎng)站公開API的方式獲取,網(wǎng)絡爬蟲從網(wǎng)頁的(C)開始獲取。HTMLWWWURLXML答案解析:網(wǎng)絡數(shù)據(jù)采集法,主要通過網(wǎng)絡爬蟲或網(wǎng)站公開API的方式獲取,網(wǎng)絡爬蟲從網(wǎng)頁的URL開始獲取。簡答題常用的Excel解析數(shù)據(jù)包分別是什么,各有什么作用?答:Python庫有一個匯總在線目錄,叫作PyPI(/pypi),里面保存了大量的Python包及其元數(shù)據(jù)和文檔。解析Excel文件用的是xlrd庫,主要是用Python處理Excel文件。xlwt 向Excel文件寫入,并設置格式。xlutils 一組Excel高級操作工具(需要先安裝xlrd和xlwt)。簡述XML數(shù)據(jù)與HTML數(shù)據(jù)的區(qū)別。答:XML不是HTML的替代,XML是對HTML的補充。概念不同。XML是可擴展標記語言,而HTML超文本標記語言。目的不同。XML被設計用來傳輸和存儲數(shù)據(jù),重點是數(shù)據(jù)的內(nèi)容。HTML被設計用來顯示數(shù)據(jù)和編輯網(wǎng)頁,重點是數(shù)據(jù)的外觀。語法有所不同。XML語法比較嚴謹而HTML語法比較松散。HTML旨在顯示信息,而XML旨在傳輸信息。操作題利用Pandas讀取本地文件:~\Desktop\data\list2文件夾中的的《上海餐飲數(shù)據(jù).xlsx》,并寫入CSV文件,保存在本地位置:~\Desktop\data\list2文件夾;名稱為:上海餐飲分析.csv。數(shù)據(jù)清洗習題填空題導入數(shù)據(jù)集時,讀取CSV文件的函數(shù)為__read_csv()_。檢測異常值的常用的兩種方式為__3σ原則__和_箱型圖_。常見的缺失值的三種處理方式為:_填充缺失值_、_刪除_和___插補_____。刪除、填充、插補缺失值的函數(shù)分別是_dropna()_、_fillna()_和_interpolate()_。3σ準則(拉依達準則)只適用于檢測符合或近似符合__正態(tài)分布____的數(shù)據(jù)集。檢查重復值和刪除重復值的函數(shù)分別是_duplicated()_和___drop_duplicates()_。選擇題下面程序運行的結果是(B)importdatetimex=datetime.datetime.now()print(x)2022/8/2417:30:562022-08-2417:30:56.9170848/24/202217/30/5608-24-202217:30:56.917084答案解析:datetime.datetime.now([tz])表示返回一個表示當前本地時間的datetime對象,如果提供了參數(shù)tz,則獲取tz參數(shù)所指時區(qū)的本地時間;默認日期間隔符號為“-”,顯示順序為“年-月-日”,時間為“時:分:秒”格式,最后添加后綴表示系統(tǒng)時間。now():讀取的時間是系統(tǒng)的本地時間。關于為什么要做數(shù)據(jù)清洗,下列說法不正確的是?(D)數(shù)據(jù)有重復數(shù)據(jù)有缺失數(shù)據(jù)有錯誤數(shù)據(jù)量太大答案解析:數(shù)據(jù)清洗的原因有:可以讓數(shù)據(jù)更容易存儲、搜索和復用。目標:格式標準化,異常數(shù)據(jù)清除,錯誤糾正,重復數(shù)據(jù)的清除。故D項錯誤,數(shù)據(jù)量太大時,需要對數(shù)據(jù)進行規(guī)約操作。以下說法錯誤的是(A)數(shù)據(jù)清洗能完全解決數(shù)據(jù)質(zhì)量差的問題數(shù)據(jù)清洗在數(shù)據(jù)分析過程中是不可或缺的一個環(huán)節(jié)數(shù)據(jù)清洗的目的是提高數(shù)據(jù)質(zhì)量可以借助pandas來完成數(shù)據(jù)清洗工作答案解析:數(shù)據(jù)清洗通過填寫缺失的值、光滑噪聲數(shù)據(jù)、識別或刪除離群點并解決不一致性來“清理”數(shù)據(jù),但是對于有些數(shù)據(jù)集,還需要進行數(shù)據(jù)集成、變換和規(guī)約等操作后才能達到理想的狀態(tài),故A項說法錯誤。以下關于缺失值檢測的說法中,正確的是(B)null和notnull可以對缺失值進行處理dropna方法既可以刪除觀測記錄,亦可以刪除特征fillna方法中用來替換缺失值的值只能是數(shù)據(jù)庫pandas庫中的interpolate模塊包含了多種插值方法答案解析:缺失值檢測函數(shù)包括isnull()、isna()、notnull()和notna()四個方法,故A項錯誤。dropna方法用于刪除缺失值所在的一行或一列數(shù)據(jù),并返回一個刪除缺失值后的新對象,故B項正確。fillna方法用于填充缺失值。故C項錯誤。SciPy庫中的interpolate模塊包含了多種插值方法,故D項錯誤。以下關于異常值檢測的說法中錯誤的是(B)3σ原則利用了統(tǒng)計學中小概率事件的原理使用箱線圖方法時要求數(shù)據(jù)服從或近似正態(tài)分布基于聚類的方法可以進行離群點檢測基于分類的方法可以進行離群點檢測答案解析:異常值檢測的方法中,與3σ準則不同,箱型圖并不局限于正態(tài)分布,任何數(shù)據(jù)集都可以用箱型圖來檢測異常值。故選擇B項。以下關于drop_duplicates函數(shù)的說法中錯誤的是(B)僅對DateFrame和Series類型的數(shù)據(jù)有效。僅支持單一特征的數(shù)據(jù)去重。數(shù)據(jù)重復時默認保留第一個數(shù)據(jù)。該函數(shù)不會改變原始數(shù)據(jù)排列。答案解析:drop_duplicates函數(shù)不僅支持單一特征的數(shù)據(jù)去重,還支持多個特征去重。下列關于時間相關類錯誤的是(D)。Timestamp是存放某個時間點的類。Period是存放某個時間段的類。Timestamp數(shù)據(jù)可以使用標準的時間字符串轉(zhuǎn)換得來。兩個數(shù)值上相同的Period和Timestamp所代表的意義相同。答案解析:period是表示一段時間,timestamp表示一個時刻,因此兩個數(shù)值上相同的Period和Timestamp所代表的意義不同。下列選項中,描述不正確的是。(B)數(shù)據(jù)清洗的目的是為了提高數(shù)據(jù)質(zhì)量異常值一定要刪除可使用drop_duplicates()方法刪除重復數(shù)據(jù)concat()函數(shù)可以沿著一條軸將多個對象進行堆疊答案解析:對于含有異常值的數(shù)據(jù),可以直接刪除含有異常值的記錄;也可以視為缺失值,利用缺失值處理的方法進行處理;還可以使用平均值進行修正,有時也可以不處理:直接在具有異常值的數(shù)據(jù)集上進行數(shù)據(jù)挖掘。下列選項中,可以刪除缺失值或空值的是(C)isnull()notnull()dropna()fillna()答案解析:可以刪除缺失值或空值的函數(shù)為dropna()。isnull()與notnull()用于檢測缺失值。fillna()用于填充缺失值。下列選項中,描述不正確是(D)concat()函數(shù)可以沿著一條軸將多個對象進行堆疊merge()函數(shù)可以根據(jù)一個或多個鍵將不同的DataFrame進行合并可以使用rename()方法對索引進行重命名操作unstack()方法可以將列索引旋轉(zhuǎn)為行索引答案解析:unstack()方法可以將行索引旋轉(zhuǎn)為列索引。簡答題簡述使用3σ原則檢測異常值的思路。答:檢測異常值的思路如下:確認數(shù)據(jù)集是否為正態(tài)分布,正態(tài)分布的數(shù)據(jù)集才能繼續(xù)。計算需要檢驗的數(shù)據(jù)列的平均值mean_data和標準差std_data;寫一個3σ檢測函數(shù),傳入一個DataFrame對象的一個列,方法中,先看數(shù)據(jù)列的每個值,小于μ-3σ或大于μ+3σ的數(shù)據(jù)均為異常值,返回異常值系列。如果是真實異常值,則剔除異常值,得到規(guī)范的數(shù)據(jù)。操作題打開本地文件《2020年各省人口數(shù)量.xlsx》文件,檢測其中的缺失值和異常值,并利用均值填充缺失值數(shù)據(jù)。思考與拓展練習:使用時間日期格式化符號,使用不同格式來表示時間日期格式。格式化成2022-04-2608:08:06形式。格式化成TueApr2608:08:062022形式。將格式字符串轉(zhuǎn)換為時間戳。答案:#!/usr/bin/python#-*-coding:UTF-8-*-importtime#格式化成2022-04-2608:08:06形式print(time.strftime("%Y-%m-%d%H:%M:%S",time.localtime()))#格式化成TueApr2608:08:062022形式print(time.strftime("%a%b%d%H:%M:%S%Y",time.localtime()))#將格式字符串轉(zhuǎn)換為時間戳a="SatMar2808:08:242022"print(time.mktime(time.strptime(a,"%a%b%d%H:%M:%S%Y")))數(shù)據(jù)集成習題填空題數(shù)據(jù)集成過程中,可能出現(xiàn)的問題有__實體識別__、___冗余屬性識別_、_元組重復__、_數(shù)據(jù)值沖突__。答案解析:數(shù)據(jù)集成通俗的說,就是將多個數(shù)據(jù)源合并存放在一個一致的數(shù)據(jù)存儲中的過程。這一過程中需要著重解決三個問題:模式匹配、數(shù)據(jù)冗余、數(shù)據(jù)值沖突檢測與處理。實體識別中常見的矛盾有:__同名異義_、__異名同義__、單位不統(tǒng)一___。答案解析:實體識別是指從不同數(shù)據(jù)源識別出現(xiàn)實世界的實體,它的任務是統(tǒng)一不同源數(shù)據(jù)的矛盾之處,常見形式有:同名異義:數(shù)據(jù)源A的某個數(shù)據(jù)特征的名稱和數(shù)據(jù)源B的某個數(shù)據(jù)特征是一樣的但是表示的內(nèi)容不一樣。數(shù)據(jù)源A中的屬性ID和數(shù)據(jù)源B中的屬性ID分別描述的是菜品編號和訂單編號,即描述的是不同的實體。異名同義:數(shù)據(jù)源A的某個特征的名稱和數(shù)據(jù)源B的某個特征名稱不一樣,但是表達的內(nèi)容不一樣。例如,數(shù)據(jù)源A中的sales_dt和數(shù)據(jù)源B中的sales_date都是描述銷售日期的,即A.sales_dt=B.salesdate。單位不統(tǒng)一:不同地數(shù)據(jù)源記錄的單位不一樣,比如統(tǒng)計身高、一個數(shù)據(jù)源以m為單位,一個使用英尺為單位。描述同一個實體分別用的是國際單位和中國傳統(tǒng)的計量單位。寫出2個常見的合并數(shù)據(jù)的函數(shù)。(1)merge()(2)join()答案解析:本書重點講解了merge()、join()、concat()、combine()、append()、concatenate()函數(shù)等。主鍵合并數(shù)據(jù)需要指定一個或多個__鍵_來對兩組數(shù)據(jù)進行連接;答案解析:\t"/m0_47384542/article/details/_blank"主鍵合并類似于關系型數(shù)據(jù)庫的連接方式,它是指根據(jù)一個或多個鍵將不同的DataFrame對象連接起來,大多數(shù)是將兩個DataFrame對象重疊的列作為合并都是鍵。merge()函數(shù)支持4種連接合并方式,即內(nèi)連接、左外連接、右外連接和全外連接。它們對應的參數(shù)設置分別是how='___inner___',how='__left__',how='__right_',how='__outer__'。答案解析:merge()函數(shù)要執(zhí)行的合并類型,從

{'left',

'right',

'outer',

'inner'}中取值,默認為“inner”內(nèi)連接。選擇題數(shù)據(jù)集成的過程中需要處理的問題有(D)實體識別冗余與相關性分析。數(shù)據(jù)不一致以上都是答案解析:數(shù)據(jù)集成主要的問題有:冗余屬性識別、實體識別和數(shù)據(jù)不一致的問題,故正確答案選D。下列合并多個數(shù)據(jù)集說法誤的是?(D)pandas.merge基于一個或多個鍵連接多個DataFrame中的行。pandas.concat按行或按列將不同的對象疊加。pandas.merge默認的合并操作使用的是innerjoin,通過傳遞how參數(shù)修改為outerjoin。concat函數(shù)的axis參數(shù)值為0,表示沿著橫軸串接,生成一個新的Series對象。答案解析:concat函數(shù)默認axis=0表示行方向,也就是橫向拼接;將Series與DataFrame對象組合在一起,用于沿橫軸執(zhí)行連接操作。下列關于concat函數(shù)、append方法、merge函數(shù)和join方法的說法正確的是(D)concat是最常用的主鍵合并的函數(shù),能夠?qū)崿F(xiàn)內(nèi)連接和外連接。append方法只能用來做縱向堆疊,適用于所有縱向堆疊。merge是常用的主鍵合并的函數(shù),但不能夠?qū)崿F(xiàn)左連接和右連接。join是常用的主鍵合并方法之一,但不能夠?qū)崿F(xiàn)左連接和右連接。答案解析:merge是最常用的主鍵合并的函數(shù),能夠?qū)崿F(xiàn)內(nèi)連接和外連接。故A、C項錯誤。join是常用的主鍵合并方法之一,且能夠利用how參數(shù)實現(xiàn)左連接和右連接。append方法只能用來做縱向堆疊,適用于所有縱向堆疊。故B項正確。下列關于train_test_split函數(shù)的說法正確的是(D)train_test_split能夠?qū)?shù)據(jù)集劃分為訓練集、驗證集和測試集生成的訓練集和測試集在賦值的時候可以調(diào)換位置,系統(tǒng)能夠自動識別train_test_split每次的劃分結果不同,無法解決traintest_split函數(shù)可以自行決定訓練集和測試集的占比答案解析:train_test_split函數(shù)的作用為自行設置訓練集和測試集的占比,故D項正確。【多選】數(shù)據(jù)集成的ETL是指(BCD)退出抽取轉(zhuǎn)化加載答案解析:ETL過程包括了提取(Extract)、轉(zhuǎn)換(Transform)和加載(Load)三個過程。(A)是數(shù)據(jù)集成的重要問題。數(shù)據(jù)冗余數(shù)據(jù)完整數(shù)據(jù)完備數(shù)據(jù)有效答案解析:數(shù)據(jù)冗余是數(shù)據(jù)集成的重要問題。【多選】數(shù)據(jù)集成的合并類型,包括(ABC)。主鍵合并數(shù)據(jù)重疊合并數(shù)據(jù)堆疊合并數(shù)據(jù)數(shù)據(jù)拆分答案解析:數(shù)據(jù)集成的合并類型,包括主鍵合并數(shù)據(jù)、重疊合并數(shù)據(jù)和堆疊合并數(shù)據(jù)?!径噙x】數(shù)據(jù)集成可能產(chǎn)生的問題有(ABC)。屬性冗余元組沖突數(shù)據(jù)值沖突屬性值缺失答案解析:數(shù)據(jù)集成的目的是指維護數(shù)據(jù)源整體上的數(shù)據(jù)一致性,解決企業(yè)“信息孤島”的問題,提高信息共享和利用的效率。集成多個數(shù)據(jù)源時,會出現(xiàn)冗余數(shù)據(jù),常見的有屬性重復、屬性相關冗余和元組重復等,還需要考慮實體識別數(shù)據(jù)不一致等問題。故答案選擇ABC項。關于數(shù)據(jù)集成的描述,說法錯誤的是(C)。數(shù)據(jù)集成的目的是增大數(shù)據(jù)量數(shù)據(jù)集成可以把不同格式的文件數(shù)據(jù)合并數(shù)據(jù)集成時不需要考慮實體識別、屬性冗余、數(shù)據(jù)值沖突等問題數(shù)據(jù)集成主要是把多個數(shù)據(jù)源合并成一個數(shù)據(jù)源的過程答案解析:數(shù)據(jù)集成時需要考慮實體識別、屬性冗余、數(shù)據(jù)值沖突等問題。【多選】數(shù)據(jù)集成需要注意的三個基本問題有(ABC)。模式集成數(shù)據(jù)冗余沖突檢測和消除數(shù)據(jù)錯誤答案解析:數(shù)據(jù)集成需要注意的三個基本問題有模式集成、數(shù)據(jù)冗余和沖突檢測與消除。簡答題簡述數(shù)據(jù)集成的意義。答:數(shù)據(jù)集成的目的是指維護數(shù)據(jù)源整體上的數(shù)據(jù)一致性,解決企業(yè)“信息孤島”的問題,提高信息共享和利用的效率?!靶畔⒐聧u”是指不同軟件間,尤其是不同部門間的數(shù)據(jù)信息不能共享,造成系統(tǒng)中存在大量冗余數(shù)據(jù)、垃圾數(shù)據(jù),無法保證數(shù)據(jù)的一致性,嚴重地阻礙了企業(yè)信息化建設的整體進程。簡述merge()函數(shù)和concat()函數(shù)的區(qū)別和聯(lián)系。答:聯(lián)系:concat()函數(shù)能將Series與DataFrame對象組合在一起,用于沿某個特定的軸執(zhí)行連接操作。Merge()函數(shù)指的是將兩個DataFrame數(shù)據(jù)表按照指定的規(guī)則進行連接,最后拼接成一個新的DataFrame數(shù)據(jù)表。區(qū)別:主要用于基于指定列的橫向合并拼接(類似SQL的inner

join等);可用于橫向和縱向合并拼接,操作題importpandasaspddf_left=pd.DataFrame({'學號':['S01','S02','S03','S04','S05','S06'],'姓名':['怠涵','婉清','溪榕','漠涓','祈博','孝冉'],'籍貫':['山東','河南','湖北','陜西','山東','河南']})df_right=pd.DataFrame({'學號':['S01','S02','S03','S04','S05','S06'],'性別':['女','女','男','女','男','女'],'年齡':[23,22,25,23,19,21],'籍貫':['山東','河南','湖北','陜西','山東','河南']})#以學號為主鍵,采用內(nèi)連接的方式合并數(shù)據(jù)result_inner=pd.merge(df_left,df_right,on='學號',how="inner")print(result_inner)數(shù)據(jù)變換習題填空題在Pandas中DataFrame類對象可以使用_pivot()或_melt()方法實現(xiàn)軸向旋轉(zhuǎn)操作。答案解析:在Pandas中,pivot()方法能根據(jù)列值進行轉(zhuǎn)置。使用指定索引/列中的唯一值形成返回數(shù)據(jù)框架的軸。該函數(shù)不支持數(shù)據(jù)聚合,多數(shù)值將導致多重索引。同時會根據(jù)給定的行索引或列索引重新組織一個DataFrame對象。分組和聚合的操作大致分為三個步驟:(1)拆分(2)應用(3)合并答案解析:分組與聚合的基本過程如下:拆分(split):將數(shù)據(jù)集按照一些標準拆分為若干個組。拆分操作是指在指定軸上進行的,既可以對橫軸方向上的數(shù)據(jù)進行分組,也可以對縱軸方向上的數(shù)據(jù)進行分組。應用(apply):將某個函數(shù)或方法(內(nèi)置和自定義均可)應用到每個分組。合并(combine):將產(chǎn)生的新值整合到結果對象中。聚合操作除了內(nèi)置的統(tǒng)計方法外,還可以使用_agg()、_tranform()、_apply()方法。答案解析:Pandas中的agg()函數(shù)為aggregate的縮寫,是一個功能非常強大的函數(shù),在Pandas中可以利用agg()對Series、DataFrame以及groupby()后的結果進行聚合操作。transform()是一個嚴格的條件的特殊函數(shù),具有轉(zhuǎn)換值、組合groupby()、過濾數(shù)據(jù)、在組級別處理缺失值等功能。apply會將待處理的對象拆分為多個片段,然后對各片段調(diào)用傳入的函數(shù),最后嘗試將各個片段組合在一起。啞變量又稱虛擬變量,是_人為虛設_的變量,用來反映某個變量的__不同類別__。答案解析:為了將類別類型的數(shù)據(jù)轉(zhuǎn)換為數(shù)值類型的數(shù)據(jù),類別類型的數(shù)據(jù)在被應用之前需要經(jīng)過“量化”處理,從而轉(zhuǎn)換為啞變量。啞變量,又稱虛擬變量,是人為虛設的變量,用來反映某個變量的不同類別,常用取值為0和1,0代表否,1代表是。啞變量(DummyVariables)用以反映質(zhì)的屬性的一個人工變量,是量化了的自變量。面元劃分中,默認劃分的區(qū)間是后_閉__前__開__的。答案解析:為了便于分析,連續(xù)數(shù)據(jù)常常被離散化或拆分為“面元”(bin),用cut()函數(shù)可以實現(xiàn)。cut()函數(shù)的right參數(shù)定義了面元區(qū)間范圍,默認為True,即“左開右閉”,修改為False,則“左閉右開”。選擇題下列方法不是數(shù)據(jù)變換的有(B)小波變換抽樣規(guī)范化屬性構造答案解析:數(shù)據(jù)變換的常見操作有:簡單函數(shù)變換、連續(xù)數(shù)據(jù)離散化、屬性構造、小波變換和數(shù)據(jù)規(guī)范化等。而數(shù)據(jù)抽樣也叫數(shù)據(jù)采樣。數(shù)據(jù)抽樣是選擇數(shù)據(jù)子集對象的一種常用方法。假設12個銷售價格記錄組已經(jīng)排序如下:5,10,11,13,15,35,50,55,72,92,204,215使用如下每種方法將它們劃分成四個箱。等頻(等深)劃分時,15在第幾個箱子內(nèi)?(B)A、第一個B、第二個C、第三個D、第四個答案解析:根據(jù)數(shù)據(jù)的頻率分布進行排序,然后按照頻率進行離散,好處是數(shù)據(jù)變?yōu)榫鶆蚍植?,但是會更改原有的?shù)據(jù)結構。采用等頻(等深)劃分時,將屬性的值域分成具有相同寬度的區(qū)間,即將連續(xù)型變量的取值范圍均勻劃分成n等份,每份的間距相等。故正確答案為B選項。假設有這么一組排序后的數(shù)據(jù)4,8,15,21,21,24,25,28,34,劃分為等頻的箱。箱1:4,8,15;箱2:21,21,24:箱3:25,28,34,要求:箱1用平均值,箱2用中位值,箱3用箱邊界三種方法來光滑噪聲數(shù)據(jù),下面哪個選項是正確的?(C)A、9,9,9:22,22,22:25,25,34B、8,8,8:22,22,22:25,25,34C、9,9,9:21,21,21:25,25,34D、4,4,15:21,21,21:25,25,25答案解析:采用等頻(等深)劃分時,將屬性的值域分成具有相同寬度的區(qū)間,即將連續(xù)型變量的取值范圍均勻劃分成n等份,每份的間距相等。箱1三個數(shù)據(jù)的平均值為9,箱2三個數(shù)據(jù)的中位值為21,箱3使用箱邊界方法光滑噪聲數(shù)據(jù)就是用較小的數(shù)據(jù)替代箱中的每一項數(shù)據(jù)。箱中的最大和最小值同樣被視為邊界。箱中的每一個值被最近的邊界值替換。結果為25,25,34。下列數(shù)據(jù)特征縮放的公式中,正確的是(C)A.數(shù)據(jù)中心化公式為:B.數(shù)據(jù)標準化公式為:C.Max-ABS縮放公式為:D.Robust縮放公式為:答案解析:數(shù)據(jù)中心化公式為:,故A項錯誤。數(shù)據(jù)標準化公式為:,故B項錯誤。Max-ABS縮放公式為:,故C項正確。Robust縮放公式為:,故D項錯誤。下列關于啞變量的名稱中,不正確的是(D)。二分類變量虛擬變量0-1型變量數(shù)值型變量答案解析:啞變量,又稱虛擬變量、虛設變量、名義變量或啞變量,是人為虛設的變量,用來反映某個變量的不同類別,常用取值為0和1,0代表否,1代表是。所以又可以成為0-1型變量或者二分類變量。啞變量(DummyVariables)用以反映質(zhì)的屬性的一個人工變量,是量化了的自變量,而代表特征的數(shù)據(jù)不一定都是數(shù)值類型的,其中一部分是類別型的。故D項錯誤。以下關于pandas數(shù)據(jù)預處理說法正確的是(D)pandas沒有做啞變量的函數(shù)。在不導入其他庫的情況下,僅僅使用pandas就可實現(xiàn)聚類分析離散化。pandas可以實現(xiàn)所有的數(shù)據(jù)預處理操作。cut函數(shù)默認情況下做的是等寬離散法。答案解析:Pandas中使用get_dummies()函數(shù)對類別數(shù)據(jù)進行啞變量處理,并在處理后返回一個啞變量矩陣。故A項說法錯誤。聚類離散法使用k-means將樣本進行離散處理。故B項說法錯誤。Pandas可以對各種數(shù)據(jù)進行運算操作,比如歸并、再成形、選擇、數(shù)據(jù)清洗和數(shù)據(jù)加工特征,但不支持如數(shù)據(jù)規(guī)約、離散化的數(shù)據(jù)預處理操作。故C項說法錯誤。Pandas的cut方法是將數(shù)值數(shù)據(jù)轉(zhuǎn)換為分類數(shù)據(jù)的方法,對離散量進行區(qū)間劃分,即cut函數(shù)默認情況下做的是等寬離散法。故D項正確。下列與標準化方法有關的說法錯誤的是(A)離差標準化簡單易懂,對最大值和最小值敏感度不高。標準差標準化是最常用的標準化方法,又稱零—均值標準化。小數(shù)定標標準化實質(zhì)上就是將數(shù)據(jù)按照一定的比例縮小。多個特征的數(shù)據(jù)的K-Means聚類不需要對數(shù)據(jù)進行標準化。答案解析:Min-max規(guī)范化(最小-最大規(guī)范化)也稱為離差標準化,是對原始數(shù)據(jù)的線性變換,將數(shù)據(jù)值映射到[0,1]之間,若數(shù)據(jù)集中且某個數(shù)值很大,則規(guī)范化后各值會接近于0,并且將會相差不大。故A項說法錯誤。Z-Score規(guī)范化(零-均值規(guī)范化)也稱標準差標準化,經(jīng)過處理的數(shù)據(jù)的均值為0,標準差為1。故B項說法正確,小數(shù)定標規(guī)范化就是通過移動小數(shù)點的位置來進行規(guī)范化,用于消除單位影響,最終取值范圍是[-1,1]。故C項說法正確。聚類離散包括兩個過程:選取聚類算法(K-Means算法)將連續(xù)屬性值進行聚類;處理聚類之后得到k個簇并得到每個簇對應的分類值(類似這個簇的標記),將在同一個簇內(nèi)的屬性值做為統(tǒng)一標記。因此,多個特征的數(shù)據(jù)的K-Means聚類不需要對數(shù)據(jù)進行標準化,D項說法正確。關于標準差標準化,下列說法中錯誤的是(B)經(jīng)過該方法處理后的數(shù)據(jù)均值為0,標準差為1??赡軙淖償?shù)據(jù)的分布情況。Python中自定義該方法實現(xiàn)函數(shù)defStandardScaler(data):data=(data-data.mean())/data.std()returndata計算公式為X答案解析:標準差標準化,經(jīng)過處理的數(shù)據(jù)的均值為0,標準差為1。故A項正確。計算公式為:X?下列關于groupby方法說法正確的是(C)。groupby能夠?qū)崿F(xiàn)分組聚合groupby方法的結果能夠直接查看groupby是pandas提供的一個用來分組的方法groupby方法是pandas提供的一個用來聚合的方法答案解析:groupby方法能夠完成數(shù)據(jù)的分組操作,不能實現(xiàn)聚合操作,A項說法錯誤。groupby方法通過調(diào)用groups屬性查看分組結果,故B項說法錯誤。groupby方法位于Pandas庫中,故C項說法正確、D項說法錯誤。下列關于apply方法說法正確的是(D)。apply方法是對DataFrame每一個元素應用某個函數(shù)的apply方法能夠?qū)崿F(xiàn)所有aggregate方法的功能apply方法和map方法都能夠進行聚合操作apply方法只能夠?qū)π辛羞M行操作答案解析:apply方法可以作用于數(shù)據(jù)集的每一行每一列元素,故A項說法錯誤。apply方法對DataFrame應用單個函數(shù)時,agg()的結果與apply()的結果等效,Series對象在agg()中傳入單個函數(shù),聚合結果為標量值,也就是單個數(shù)據(jù),apply方法專注于將方法應用于pandasSeries中的每個元素以及pandasDataFrame的每一行/列,故D項說法正確,C項說法錯誤。使用map可以將已有的一行/列元素進行替換,也可以創(chuàng)建新的行/列。不僅僅可以使用字典對映射關系進行界定,還可以使用函數(shù)對各個元素進行變換。故C項說法錯誤。下列關于分組聚合的說法錯誤的是(A)。pandas提供的分組和聚合函數(shù)分別只有一個pandas分組聚合能夠?qū)崿F(xiàn)組內(nèi)標準化pandas聚合時能夠使用agg、apply、transform方法pandas分組函數(shù)只有一個groupby答案解析:pandas提供的分組函數(shù)有:groupby;聚合函數(shù):agg、mean、sum、size、count、std、var、sem、describe、apply、transform等方法。故A項說法錯誤,CD項說法正確,pandas分組聚合的基本過程為拆分、應用與聚合,能夠?qū)崿F(xiàn)組內(nèi)標準化,B項說法正確。使用pivot_table函數(shù)制作透視表用下列(A)參數(shù)設置行分組鍵。indexrawvaluesData答案解析:使用pivot_table函數(shù)制作透視表,參數(shù)index表示行索引,參數(shù)columns表示列索引,參數(shù)values表示某一列的值。故答案選擇A項。使用其本身可以達到數(shù)據(jù)透視功能的函數(shù)是(D)。groupbytransformcrosstabpivot_table答案解析:pivot_table函數(shù)可以制作透視表,支持重復元素的聚合操作,故選擇D項。判斷題在數(shù)據(jù)預處理時,數(shù)據(jù)集包含變量的數(shù)量不能發(fā)生變化。(B)答案解析:數(shù)據(jù)規(guī)約的過程中,屬性規(guī)約的目的就是去除冗余屬性,也就是減少變量的數(shù)量,故說法錯誤。Min-Max縮放可以將數(shù)據(jù)縮放至任意給定的范圍內(nèi)。(A)答案解析:Min-Max縮放也可以稱為離差標準化,該方法可以將數(shù)據(jù)縮放至指定的區(qū)間,故說法正確。但是通常情況下這一指定區(qū)間為[0,1]。模型預測準確度總是隨著樣本數(shù)量的增加而同比例增加。(B)答案解析:模型準確度影響因素:數(shù)據(jù)質(zhì)量、數(shù)據(jù)科學家的水平。如果輸入數(shù)據(jù)是連續(xù)型數(shù)據(jù),使用分類模型時,就需要將連續(xù)型變量離散化為定性變量使用。(A)答案解析:如果輸入數(shù)據(jù)是連續(xù)型數(shù)據(jù),使用分類模型時,就需要將連續(xù)型變量離散化為定性變量使用。連續(xù)屬性的離散化就是在數(shù)據(jù)的取值范圍內(nèi)設定若干個離散的劃分點,將取值范圍劃分為一些離散化的區(qū)間,最后用不同的符號或整數(shù)值代表落在每個子區(qū)間中的數(shù)據(jù)值。數(shù)據(jù)離散化指的是將連續(xù)型變量在保留其基本數(shù)據(jù)含義的基礎上轉(zhuǎn)換為定性變量的操作。(A)答案解析:數(shù)據(jù)離散化指的是將連續(xù)型變量在保留其基本數(shù)據(jù)含義的基礎上轉(zhuǎn)換為定性變量的操作。數(shù)據(jù)離散化是指將連續(xù)的數(shù)據(jù)進行分段,使其變?yōu)橐欢味坞x散化的區(qū)間。也就是定性變量的操作。簡答題簡述數(shù)據(jù)屬性離散化的意義。答:數(shù)據(jù)離散化是指將連續(xù)的數(shù)據(jù)進行分段,使其變?yōu)橐欢味坞x散化的區(qū)間。連續(xù)屬性的離散化就是在數(shù)據(jù)的取值范圍內(nèi)設定若干個離散的劃分點,將取值范圍劃分為一些離散化的區(qū)間,最后用不同的符號或整數(shù)值代表落在每個子區(qū)間中的數(shù)據(jù)值。簡述數(shù)據(jù)規(guī)范化的方法。最小-最大規(guī)范化也稱為離差標準化,是對原始數(shù)據(jù)的線性變換,將數(shù)值值映射到[0,1]之間。均值規(guī)范化也稱標準差標準化,經(jīng)過處理的數(shù)據(jù)的均值為0,標準差為1。小數(shù)定標規(guī)范化就是通過移動小數(shù)點的位置來進行規(guī)范化。用于消除單位影響。小數(shù)點移動多少位取決于屬性A的取值中的最大絕對值。最終取值范圍是[-1,1]。使用正則化的適用可以降低模型的復雜度。正則化的本質(zhì)就是對某一問題加以先驗的限制或約束以達到特定目的的一種手段或操作。操作題根據(jù)以下表格,完成下面的程序。namescoreoption_courseJohn82PHPHelen98PythonSona91JavaElla87C將數(shù)據(jù)應用一個聚合函數(shù)求平均值。#導入pandas和numpyimportpandasaspdimportnumpyasnp#創(chuàng)建DataFrame,并重命名為datadata={'name':['John','Helen','Sona','Ella'],'score':[82,98,91,87],'option_course':['PHP','Python','Java','C']}df=pd.DataFrame(data)grouped=df.groupby('name')#按照“name”列分組#應用一個聚合函數(shù)求均值print(grouped['score'].agg(np.mean))#求“score”列的平均值將數(shù)據(jù)應用多個聚合函數(shù)求平均值和標準差。#求“score”列的平均值與標準差print(grouped['score'].agg([np.size,np.mean,np.std]))思考思考與拓展思考1:數(shù)據(jù)規(guī)范化、歸一化、標準化是同一個概念么?答:數(shù)據(jù)規(guī)范化是更大的概念,它指的是將不同渠道的數(shù)據(jù),都按照同一種尺度來進行度量,這樣做有兩個好處,一是讓數(shù)據(jù)之間具有可比較性;另一個好處就是方便后續(xù)運算,因為數(shù)據(jù)在同一個數(shù)量級上規(guī)整了,在機器學習迭代的時候,也會加快收斂效率。數(shù)據(jù)歸一化和數(shù)據(jù)標準化都是數(shù)據(jù)規(guī)范化的方式。不同點在于數(shù)據(jù)歸一化會讓數(shù)據(jù)在一個[0,1]或者[-1,1]的區(qū)間范圍內(nèi)。而數(shù)據(jù)標準化會讓規(guī)范化的數(shù)據(jù)呈現(xiàn)正態(tài)分布的情況,所以你可以這么記:歸一化的“一”,是讓數(shù)據(jù)在[0,1]的范圍內(nèi)。而標準化,目標是讓數(shù)據(jù)呈現(xiàn)標準的正態(tài)分布。思考2:什么時候用到數(shù)據(jù)規(guī)范化?答:進行數(shù)據(jù)規(guī)范化有兩個作用:一是讓數(shù)據(jù)之間具有可比較性,二是加快后續(xù)算法的迭代收斂速度。在數(shù)據(jù)挖掘算法中,是否都需要進行數(shù)據(jù)規(guī)范化呢?一般情況下是需要的,尤其是針對距離相關的運算,比如在K-Means、KNN以及聚類算法中,我們需要有對距離的定義,所以在做這些算法前,需要對數(shù)據(jù)進行規(guī)范化。另外還有一些算法用到了梯度下降作為優(yōu)化器,這是為了提高迭代收斂的效率,也就是提升找到目標函數(shù)最優(yōu)解的效率。我們也需要進行數(shù)據(jù)規(guī)范化,比如邏輯回歸、SVM和神經(jīng)網(wǎng)絡算法。在這些算法中都有目標函數(shù),需要對目標函數(shù)進行求解。梯度下降的目標是尋找到目標函數(shù)的最優(yōu)解,而梯度的方法則指明了最優(yōu)解的方向,如下圖所示。當然不是所有的算法都需要進行數(shù)據(jù)規(guī)范化。在構造決策樹的時候,可以不用提前做數(shù)據(jù)規(guī)范化,因為我們不需要關心特征值的大小維度,也沒有使用到梯度下降來做優(yōu)化,所以數(shù)據(jù)規(guī)范化對決策樹的構造結果和構造效率影響不大。除此之外,還是建議你在做數(shù)據(jù)挖掘算法前進行數(shù)據(jù)規(guī)范化。思考3:如何使用Z-Score規(guī)范化,將分數(shù)變成正態(tài)分布?答:假設A與B的考試成績都為80分,A的考卷滿分是100分(及格60分),B的考卷滿分是500分(及格300分)。這里假設A和B的考試成績都是成正態(tài)分布,可以直接采用Z-Score的線性化規(guī)范化方法。有個同學提出了“Z-Score”的非線性計算方式,大家可以一起了解下:先按公式計算出百分等級。百分等級(年級)=100-(100x年級名次-50)/有效參加考試人數(shù)。這里百分等級是每個學生在該批學生中的相對位置,其中百分等級是按照正態(tài)分布圖的所占面積比例求得的;按照百分等級數(shù)去標準正態(tài)分布表中查詢得出Z-Score值,這樣最終得出的Z分便是標準的正態(tài)分布,能夠?qū)⑵珣B(tài)轉(zhuǎn)化成標準正態(tài)。因為在很多情況下,數(shù)值如果不是正態(tài)分布,而是偏態(tài)分布,直接使用Z-Score的線性計算方式無法將分數(shù)轉(zhuǎn)化成正態(tài)分布。采用以上的方法可以解決這一個問題,大家可以了解下。這里偏態(tài)分布指的是非對稱分布的偏斜狀態(tài),包括了負偏態(tài),也就是左偏態(tài)分布,以及正偏態(tài),也就是右偏態(tài)分布。數(shù)據(jù)規(guī)約習題填空題數(shù)據(jù)規(guī)約的常見操作有_維規(guī)約_、_數(shù)量歸約_和_數(shù)據(jù)壓縮_。答案解析:數(shù)據(jù)歸約的常見種類包括維歸約、數(shù)量歸約和數(shù)據(jù)壓縮。降采樣常見于__時間類型_的數(shù)據(jù)。答案解析:降采樣就是降低采樣頻率,即將高頻率采集的數(shù)據(jù)規(guī)約到低頻率采集的數(shù)據(jù),常用于時間序列類型的數(shù)據(jù)。重塑分層索引是pandas中簡單的_維度規(guī)約___操作,最簡單的方式為_stack___和_unstack_。答案解析:重塑分層索引是pandas中簡單的維度規(guī)約操作,該操作主要會將DataFrame類對象的列索引轉(zhuǎn)換為行索引,生成一個具有分層索引的結果對象。stack:將數(shù)據(jù)的列”旋轉(zhuǎn)“為行,也就是將二維表轉(zhuǎn)化為一維表(默認操作最內(nèi)層)。unstack:將數(shù)據(jù)的行“旋轉(zhuǎn)”為列,也就是將一維表轉(zhuǎn)化為二維表(默認操作最內(nèi)層)。PCA的主要目的是找出數(shù)據(jù)里最主要的方面代替原始數(shù)據(jù)。答案解析:PCA的主要目的是找出數(shù)據(jù)里最主要的方面代替原始數(shù)據(jù)。新的低維數(shù)據(jù)集盡可能保留原始數(shù)據(jù)的變量,是最常用的一種降維方法。數(shù)據(jù)規(guī)約的途徑包括_屬性規(guī)約_和_數(shù)值規(guī)約_。答案解析:數(shù)據(jù)歸約主要有兩個途徑:屬性規(guī)約和數(shù)值規(guī)約,分別針對原始數(shù)據(jù)集中的屬性和記錄,也可以稱作屬性選擇和數(shù)據(jù)采樣。選擇題數(shù)據(jù)歸約的方法有(D)維歸約數(shù)量歸約數(shù)據(jù)壓縮以上都是答案解析:數(shù)據(jù)歸約的常見種類包括維歸約、數(shù)量歸約和數(shù)據(jù)壓縮,故選D項。下面哪一項不是屬于數(shù)據(jù)歸約的策略?(D)維歸約數(shù)量歸約數(shù)據(jù)壓縮屬性構造答案解析:數(shù)據(jù)歸約的常見種類包括維歸約、數(shù)量歸約和數(shù)據(jù)壓縮。而屬性構造是數(shù)據(jù)集成的常見操作之一。故答案選D項。以下說法錯誤的是(C)主成分分析、屬性子集選擇為維歸約方法直方圖、聚類抽樣和數(shù)據(jù)立方體聚集為數(shù)量歸約方法。用于規(guī)約的時間可以超過或抵消在規(guī)約后的數(shù)據(jù)上挖掘節(jié)省的時間。數(shù)據(jù)歸約的目的用于幫助從原有龐大數(shù)據(jù)集中獲得一個精簡的數(shù)據(jù)集合,并使這一精簡數(shù)據(jù)集保持原有數(shù)據(jù)集的完整性,這樣在精簡數(shù)據(jù)集上進行數(shù)據(jù)挖掘顯然效率更高,并且挖掘出來的結果與使用原有數(shù)據(jù)集所獲得結果是基本相同。答案解析:維規(guī)約可以分為屬性子集選擇、小波變換和主成分分析三類操作,故A項正確。直方圖、聚類、抽樣和數(shù)據(jù)立方體聚類屬于非參數(shù)方法的數(shù)量規(guī)約方法,故B項正確。數(shù)據(jù)規(guī)約類似數(shù)據(jù)集的壓縮,它的作用主要是從原有數(shù)據(jù)集中獲得一個精簡的數(shù)據(jù)集,這樣可以在降低數(shù)據(jù)規(guī)模的基礎上,保留了原有數(shù)據(jù)集的完整特性。這樣,在歸約后的數(shù)據(jù)集上挖掘?qū)⒏行?,并產(chǎn)生相同(或幾乎相同)的分析結果,故D項正確。用于數(shù)據(jù)歸約的時間不應當超過或“抵消”在歸約后的數(shù)據(jù)上挖掘節(jié)省的時間歸約得到的數(shù)據(jù)比原數(shù)據(jù)小得多,但可以產(chǎn)生相同或幾乎相同的分析結果數(shù)據(jù)規(guī)約方法,故C項說法錯誤,選擇C項。(D)的目的縮小數(shù)據(jù)的取值范圍,使其更適合于數(shù)據(jù)挖掘算法的需要,并且能夠得到和原始數(shù)據(jù)相同的分析結果。數(shù)據(jù)清洗數(shù)據(jù)集成數(shù)據(jù)變換數(shù)據(jù)歸約答案解析:數(shù)據(jù)規(guī)約類似數(shù)據(jù)集的壓縮,它的作用主要是從原有數(shù)據(jù)集中獲得一個精簡的數(shù)據(jù)集,這樣可以在降低數(shù)據(jù)規(guī)模的基礎上,保留了原有數(shù)據(jù)集的完整特性。這樣,在歸約后的數(shù)據(jù)集上挖掘?qū)⒏行?,并產(chǎn)生相同(或幾乎相同)的分析結果。故答案選擇D項。將原始數(shù)據(jù)進行集成、變換、維度規(guī)約、數(shù)值規(guī)約是在以下哪個步驟的任務?(C)A.頻繁模式挖掘B.分類和預測C.數(shù)據(jù)預處理D.數(shù)據(jù)流挖掘答案解析:數(shù)據(jù)預處理的基本流程可以分為五步:數(shù)據(jù)獲取、數(shù)據(jù)清洗、數(shù)據(jù)集成、數(shù)據(jù)變換和數(shù)據(jù)規(guī)約,而數(shù)據(jù)規(guī)約又可以分為屬性規(guī)約和數(shù)值規(guī)約,其中屬性規(guī)約又被稱為維度規(guī)約。故答案選擇C項。關于數(shù)據(jù)重塑的說法中,下列選項描述錯誤的是(C)。數(shù)據(jù)重塑可以將DataFrame轉(zhuǎn)換為Seriesstack()方法可以將列索引轉(zhuǎn)換為行索引對一個DataFrame使用stack()方法后返回的一定是一個Seriesunstack()方法可以將行索引轉(zhuǎn)換為列索引答案解析:對一個DataFrame使用stack()方法后返回的一定是Series,但不一定是一個。故C項說法錯誤,A項說法正確。數(shù)據(jù)重塑指的是將數(shù)據(jù)重新排列,也叫軸向旋轉(zhuǎn),使用stack是將數(shù)據(jù)的列“旋轉(zhuǎn)”為行,即將二維表轉(zhuǎn)化為一維表,故B項說法正確。unstack是將數(shù)據(jù)的行“旋轉(zhuǎn)”為列,即將一維表轉(zhuǎn)化為二維表,故D項說法正確。數(shù)據(jù)規(guī)約的目的是(C)。填補數(shù)據(jù)中的空缺值集成多個數(shù)據(jù)源的數(shù)據(jù)得到數(shù)據(jù)集的壓縮表示規(guī)范化數(shù)據(jù)答案解析:數(shù)據(jù)規(guī)約是指在盡可能保持數(shù)據(jù)原貌的前提下,最大限度地精簡數(shù)據(jù)量保持數(shù)據(jù)的原始狀態(tài),通過產(chǎn)生更小但保持元數(shù)據(jù)完整性的新數(shù)據(jù)集的過程。故答案選C。【多選】數(shù)據(jù)規(guī)約技術包括(ABC)。維規(guī)約數(shù)量規(guī)約數(shù)據(jù)壓縮數(shù)據(jù)清理答案解析:數(shù)據(jù)規(guī)約的常見種類包括維規(guī)約、數(shù)量規(guī)約和數(shù)據(jù)壓縮。故答案為ABC項?!径噙x】以下屬于數(shù)據(jù)規(guī)約方法的是(AD)數(shù)據(jù)立方體聚集數(shù)據(jù)標準化噪聲數(shù)據(jù)識別題數(shù)據(jù)壓縮答案解析:數(shù)據(jù)規(guī)約的常用方法包括維規(guī)約、數(shù)量規(guī)約和數(shù)據(jù)壓縮。數(shù)據(jù)立方體類似于非參數(shù)化數(shù)據(jù)規(guī)約的直方圖方法,故答案為AD。數(shù)據(jù)標準化屬于數(shù)據(jù)變換的方法,而噪聲數(shù)據(jù)識別屬于數(shù)據(jù)清洗的方法。【多選】下面哪些是數(shù)據(jù)規(guī)約的策略(ABD)維歸約數(shù)量歸約螺旋式方法數(shù)據(jù)壓縮答案解析:數(shù)據(jù)規(guī)約的策略就是常見的數(shù)據(jù)規(guī)約的類型,數(shù)據(jù)規(guī)約的常見類型包括維規(guī)約、數(shù)量規(guī)約和數(shù)據(jù)壓縮。故答案選擇ABD項。簡答題簡述數(shù)據(jù)重塑的stack和unstack方法。答:數(shù)據(jù)重塑指的是將數(shù)據(jù)重新排列,也叫軸向旋轉(zhuǎn)。重塑(reshape)層次化索引,可分為最簡單的stack和unstack。stack:將數(shù)據(jù)的列”旋轉(zhuǎn)“為行,也就是將二維表轉(zhuǎn)化為一維表(默認操作最內(nèi)層)。unstack:將數(shù)據(jù)的行“旋轉(zhuǎn)”為列,也就是將一維表轉(zhuǎn)化為二維表(默認操作最內(nèi)層)。簡述主成分分析降維的原理。答:主成分分析(PCA)是一種無監(jiān)督學習的多元統(tǒng)計分析方法。PCA分析的主要原理是將高維數(shù)據(jù)投影到較低維空間,提取多元事物的主要因素,揭示其本質(zhì)特征。它可以高效地找出數(shù)據(jù)中的主要部分,將原有的復雜數(shù)據(jù)降維處理。PCA的主要目的是找出數(shù)據(jù)里最主要的方面代替原始數(shù)據(jù)。新的低維數(shù)據(jù)集盡可能保留原始數(shù)據(jù)的變量,是最常用的一種降維方法。操作題實例:使用PCA()對一個10x4維的隨機矩陣進行主成分分析。fromsklearn.decompositionimportPCAD=np.random.rand(10,4)pca=PCA()pca.fit(D)PCA(copy=True,n_components=None,whiten=False)pca.components_#返回模型的各個特征向量pca.explained_variance_ratio_#返回各個成分各自的方差百分比程序運行結果:返回模型的各個特征向量。array([[-0.73862979,0.09195812,0.4288488,0.51191645],[-0.26925935,-0.49850207,-0.7539009,0.33260866],[-0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論