大數(shù)據(jù)采集與預(yù)處理課件:存儲數(shù)據(jù)-CSV和JSON格式_第1頁
大數(shù)據(jù)采集與預(yù)處理課件:存儲數(shù)據(jù)-CSV和JSON格式_第2頁
大數(shù)據(jù)采集與預(yù)處理課件:存儲數(shù)據(jù)-CSV和JSON格式_第3頁
大數(shù)據(jù)采集與預(yù)處理課件:存儲數(shù)據(jù)-CSV和JSON格式_第4頁
大數(shù)據(jù)采集與預(yù)處理課件:存儲數(shù)據(jù)-CSV和JSON格式_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

存儲數(shù)據(jù)——學(xué)生就業(yè)信息數(shù)據(jù)讀寫和數(shù)據(jù)持久化本章學(xué)習(xí)目標(biāo)了解MySQL的基本概念掌握MySQL的安裝和操作方法了解PyMySQL和MySQL的區(qū)別掌握PyMySQL的安裝和基本用法了解CSV和JSON的基礎(chǔ)知識和數(shù)據(jù)類型轉(zhuǎn)換掌握CSV和JSON數(shù)據(jù)的讀取和寫入操作3.4CSV和JSON 3.4.1CSV的概述

CSV(Comma-SeparatedValues)雖然名為逗號分隔符值,但也可以稱為字符分隔符值,即可以使用其他符號作為分隔符。CSV是以字符序列的方式,以純文本形式保存表格數(shù)據(jù),以一行為一條記錄,記錄間以換行符為分隔。類似于EXCEL表格,CSV以字段的形式表示數(shù)據(jù),每行記錄都有多個字段組成,且所有記錄都相同字段。如果先得到數(shù)據(jù)格式為Excel或者TXT,那么必須要轉(zhuǎn)換格式。1)將TXT文件轉(zhuǎn)換為CSV格式。圖3-14所示為TXT文件,執(zhí)行“文件”→“另存為”菜單命令,修改保存文件格式為“.csv”,在“編碼”下拉列表框中選擇正確的編碼格式后單擊“保存”按鈕,如圖3-15所示。圖3-14TXT文件a)b)圖3-15將TXT文件轉(zhuǎn)換為CSV格式a)執(zhí)行“另存為”菜單命令b)設(shè)置保存文件的后綴名為.csv2)將Excel文件轉(zhuǎn)換為CSV格式。圖3-16所示為Excel文件,執(zhí)行“文件”→“另存為”→“其他格式”菜單命令,文件類型選擇“*.csv”,單擊“保存”按鈕,如圖3-17所示。圖3-16Excel文件b)a)圖3-17將Excel文件轉(zhuǎn)換為CSV格式a)執(zhí)行“另存為”菜單命令b)設(shè)置保存文件的后綴名為.csv3)CSV文件分析

上面的CSV文件的結(jié)構(gòu)主要分為兩個部分:文件頭和文件內(nèi)容。其中,文件頭是由多個字段組成(班級,先就業(yè)公司名稱,工作崗位,大學(xué)擔(dān)任職務(wù)),其他部分為文件內(nèi)容。因此,可以通過CSV文件的行和字段獲取特定內(nèi)容。3.4.2輸出CSV文件頭部【實(shí)例3-2】接下來輸出該CSV文件的頭部信息:班級、現(xiàn)就業(yè)公司名稱、工作崗位、大學(xué)擔(dān)任職務(wù)。1)Python文件中導(dǎo)入CSV庫importcsv2)指定需要輸出的CSV文件名字filetouse='公司名單.csv'3)使用withopen方法打開該文件。其中,filetouse為文件名,‘r’表示該文件為只讀,encoding表示該文件的編碼方式為utf-8。withopen(filetouse,'r',encoding='utf-8')asf:4)使用csv.reader方法創(chuàng)建數(shù)據(jù)讀取對象r=csv.reader(f)5)使用next方法讀取第一行的頭部數(shù)據(jù),并將焦點(diǎn)轉(zhuǎn)到下一行。file_header=next(r)6)輸出結(jié)果print(file_header)7)顯示結(jié)果[‘班級','現(xiàn)就業(yè)公司名稱','工作崗位','大學(xué)擔(dān)任職務(wù)']完成代碼如下。importcsvfiletouse='公司名單.csv'withopen(filetouse,'r',encoding='utf-8')asf:r=csv.reader(f)file_header=next(r)print(file_header)3.4.3使用Python讀取CSV文件數(shù)據(jù)【實(shí)例3-3】獲得了該CSV文件的頭部字段信息,但是如何獲取某個記錄的具體信息呢?例如,我們要獲得“大學(xué)擔(dān)任職務(wù)”字段中值為“團(tuán)支書”的記錄。提取數(shù)據(jù):1)Python文件中導(dǎo)入CSV庫。importcsv2)指定需要輸出的CSV文件名字filetouse='公司名單.csv'3)使用withopen方法打開該文件。其中,filetouse為文件名,‘r’表示該文件為只讀,encoding表示該文件的編碼方式為utf-8。withopen(filetouse,'r',encoding='utf-8')asf:4)使用csv.reader方法創(chuàng)建數(shù)據(jù)讀取對象r=csv.reader(f)5)使用next方法讀取第一行的頭部數(shù)據(jù),并將焦點(diǎn)轉(zhuǎn)到下一行。file_header=next(r)6)輸出結(jié)果print(file_header)7)通過自定義變量id和file_header_col,以for循環(huán)的方式,使用enumerate方法將file_header的值導(dǎo)出,并打印。其中,enumerate方法將把頭文件中的內(nèi)容以索引號和文字的形式劃分。forid,file_header_colinenumerate(file_header):print(id,file_header_col)8)輸出結(jié)果。Id為索引號,file_header為公司頭文件字段。由此可知,字段“大學(xué)擔(dān)任職務(wù)”的索引號為3。0班級1現(xiàn)就業(yè)公司名稱2工作崗位3大學(xué)擔(dān)任職務(wù)9)使用自定義變量row獲得for循環(huán)中CSV模塊讀取的文件對象r,并在循環(huán)中使用if條件語句判斷每行中row[3](第四個元素)的值為“團(tuán)支書”,并打印出結(jié)果。forrowinr:ifrow[3]=='團(tuán)支書':print(row)10)顯示結(jié)果 ['軟件1120','重慶虛擬人生科技有限公司','技術(shù)員','團(tuán)支書']這樣,我們就通過對CSV模塊的操作,提取了特定的內(nèi)容。3.4.4使用Python寫入CSV文件數(shù)據(jù)【實(shí)例3-3】獲得了該CSV文件的頭部字段信息,但是如何獲取某個記錄的具體信息呢?例如,我們要獲得“大學(xué)擔(dān)任職務(wù)”字段中值為“團(tuán)支書”的記錄。提取數(shù)據(jù):1)Python文件中導(dǎo)入CSV庫。importcsv2)指定需要輸出的CSV文件名字filetouse='愛國主義精神.csv'3)使用withopen方法打開該文件。其中,filetouse為文件名,‘r’表示該文件為只讀,encoding表示該文件的編碼方式為utf-8。withopen(filetouse,'r',encoding='utf-8')asf:【實(shí)例3-4】本實(shí)例實(shí)現(xiàn)寫入數(shù)據(jù)。1)Python文件導(dǎo)入CSV庫importcsv2)使用withopen方法打開該文件。其中,‘公司名單.csv’為需要寫入的文件名,‘a(chǎn)’表示向文件附加寫入內(nèi)容,encoding表示該文件的編碼方式為utf-8。withopen('愛國主義精神.csv','a',encoding='utf-8')asf:3)使用csv.writer方法創(chuàng)建數(shù)據(jù)寫入對象wr=csv.writer(f)4)開始寫入數(shù)據(jù),這里有可以使用writerow和writerows兩種方法。第一種方法一次寫入一行記錄,第二種方法一次寫入多行記錄。wr.writerows([['創(chuàng)造精神','奮斗精神'],['團(tuán)結(jié)精神','夢想精神']])wr.writerow(['創(chuàng)造精神','奮斗精神'])wr.writerow(['團(tuán)結(jié)精神','夢想精神'])5)讀取并顯示寫入后的文件withopen('愛國主義精神.csv','r',encoding='utf-8')asf2:r=csv.reader(f2)forrowinr:print(row)6)顯示結(jié)果['創(chuàng)造精神','奮斗精神']['團(tuán)結(jié)精神','夢想精神']3.4.5JSON的概述 JSON(JavaScript對象表示法)是一種輕量級的數(shù)據(jù)交換格式。對人類很容易讀和寫。機(jī)器很容易解析和生成。它是基于JavaScript編程語言的一個子集。JSON是一種完全獨(dú)立于語言的文本格式,但對于熟悉C-family語言的程序員,包括C、C++、C#、Java、JavaScript、Perl、Python等其他許多人來說,這些性質(zhì)使JSON成為一種理想的數(shù)據(jù)交換語言。1.JSON是建立在兩種結(jié)構(gòu)1)鍵/值對的集合。在各種語言中,這是實(shí)現(xiàn)為對象、記錄、結(jié)構(gòu)、字典、哈希表、鍵列表或關(guān)聯(lián)數(shù)組。2)值的有序列表。在大多數(shù)語言中,是實(shí)現(xiàn)一個數(shù)組,向量、列表或序列。這些都是通用的數(shù)據(jù)結(jié)構(gòu)。幾乎所有現(xiàn)代編程語言都支持一種或另一種形式。這就使得不同的編程語言之間的數(shù)據(jù)結(jié)構(gòu)互換能夠基于這種JSON結(jié)構(gòu)。2.JSON文件分析下面以一個JSON格式的數(shù)據(jù)為例。{"people":[{"name":"Simon","age":"22"},{"name":"Tom","age":"24"},{"name":"Jack","age":"26"}]}在這個實(shí)例中,花括號{}之間為JSON鍵值對數(shù)據(jù),其中”people”為鍵,方括號的內(nèi)容為值。同時,在方括號中,有嵌套了三個鍵為”name”和”age”,值分別為”Simon”和”22”、”Tom”和”24”、”Jack”和”26”的JSON數(shù)據(jù)。從面向?qū)ο蟮慕嵌葋矸治?,這個people對象是包含3個人物記錄(對象)的數(shù)組。3.4.6使用Python讀取JSON文件數(shù)據(jù) 【實(shí)例3-5】本實(shí)例實(shí)現(xiàn)JSON文件數(shù)讀取。1)Python文件導(dǎo)入json庫importjson2)使用withopen方法打開一個名為:JSON文件.json的文件,通過參數(shù)‘r’實(shí)現(xiàn)文件的讀取,并且指定其打開的字符集格式為utf-8-sig,最后將文件操作對象放入變量f中。withopen('JSON文件.json','r',encoding='utf-8-sig')asf:3)使用read方法讀取文件數(shù)據(jù),并存入變量str中。

str=f.read()4)使用json庫的load方法將數(shù)據(jù)格式轉(zhuǎn)換為json格,將其賦值給變量data,并打印輸出,以便查看。

data=json.loads(str)print(data)5)獲取變量data的鍵為‘people’的值,將其賦值給變量name_age,并打印輸出。name_age=data['people']print(name_age)6)獲取列表name_age的第二個元素的鍵為‘name’和‘a(chǎn)ge’的值,并打印輸出。target_name=name_age[1]['name']target_age=name_age[1]['age']print(target_name+':'+target_age)輸出結(jié)果:{'people':[{'name':'Simon','age':'22'},{'name':'Tom','age':'24'},{'name':'Jack','age':'26'}]}[{'name':'Simon','age':'22'},{'name':'Tom','age':'24'},{'name':'Jack','age':'26'}]Tom:243.4.7使用Python寫入JSON文件數(shù)據(jù) 【實(shí)例3-6】本實(shí)例實(shí)現(xiàn)JSON文件數(shù)寫入。1)Python文件導(dǎo)入json庫importjson2)聲明及定義一個字典類型數(shù)據(jù)dict_content={"name":"jack"}3)使用withopen方法打開一個名為:JSON文件.json的文件,通過參數(shù)‘w’實(shí)現(xiàn)文件的寫入,然后將文件操作對象放入變量f中,最后使用json的dump方法實(shí)現(xiàn)數(shù)據(jù)的寫入。withopen('JSON文件寫入.json','w')asf: json.dump(dict_content,f)輸出結(jié)果:{"name":"jack"}3.5任務(wù)實(shí)現(xiàn) 【實(shí)例3-5】本實(shí)例逐步實(shí)現(xiàn)使用PyMySQL對MySQL的增刪改查操作。所有操作均在剛才創(chuàng)建的數(shù)據(jù)庫test中完成。這里先創(chuàng)建一個數(shù)據(jù)表employee,并對該表設(shè)置字段id,first_name,last_name,age,sex,income,將id設(shè)為主鍵,然后使用PyMySQL實(shí)現(xiàn)對數(shù)據(jù)表employee的數(shù)據(jù)操作。1.創(chuàng)建表結(jié)構(gòu)(1)Python中導(dǎo)入PyMySQL庫。importpymysql(2)使用PyMySQL庫建立與MySQL的連接,并返回一個db對象。Connect方法中的參數(shù)分別表示:"localhost"主機(jī)名,"root"連接MySQL的用戶名,"密碼"為MySQL的連接密碼,"test"表示操作的MySQL數(shù)據(jù)庫。db=pymysql.connect("localhost","root","密碼","test")(3)使用connector對象的cursor方法建立對MySQL的操作游標(biāo)。cursor=db.cursor()(4)使用游標(biāo)cursor執(zhí)行SQL語句。該SQL語句表示如果數(shù)據(jù)庫test存在表employee,則將其先刪除。這一步的目的就是防止有重復(fù)數(shù)據(jù)的出現(xiàn)。cursor.execute("DROPTABLEIFEXISTSemployee")(5)使用字符串編寫完成SQL語句。注意,這里使用的是三引號表示多行字符串。這里的SQL語句使用CREATETABLE創(chuàng)建一個名為employee的表,并設(shè)置id,first_name,last_name,age,sex,income的字段和屬性,并將id設(shè)為主鍵,字符集使用utf8mb4sql="""CREATETABLE`employee`(`id`int(10)NOTNULLAUTO_INCREMENT,`first_name`char(20)NOTNULL,`last_name`char(20)DEFAULTNULL,`age`int(11)DEFAULTNULL,`sex`char(1)DEFAULTNULL,`income`floatDEFAULTNULL,PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=utf8mb4;"""(6)執(zhí)行前面的SQL語句。cursor.execute(sql)(7)打印輸出提示字符串,并關(guān)閉連接。print("CreatedtableSuccessfull.")db.close()(8)運(yùn)行結(jié)果,如圖3-18所示。CreatedtableSuccessful圖3-18創(chuàng)建表employee成功完成代碼如下所示。importpymysql

db=pymysql.connect("localhost","root","密碼","test")

cursor=db.cursor()cursor.execute("DROPTABLEIFEXISTSemployee")sql="""CREATETABLE`employee`(`id`int(10)NOTNULLAUTO_INCREMENT,`first_name`char(20)NOTNULL,`last_name`char(20)DEFAULTNULL,`age`int(11)DEFAULTNULL,`sex`char(1)DEFAULTNULL,`income`floatDEFAULTNULL,PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=utf8mb4;"""cursor.execute(sql)print("CreatedtableSuccessfull.")db.close()2.插入數(shù)據(jù)【實(shí)例3-6】本實(shí)例通過PyMySQL向表employee的first_name,last_name,age,sex,income字段插入一條新的記錄。如果發(fā)生異常,則實(shí)現(xiàn)事務(wù)性的回滾操作。(1)Python中導(dǎo)入PyMySQL庫。importpymysql(2)使用PyMySQL庫建立與MySQL的連接,并返回一個db對象。Connect方法中的參數(shù)分別表示:"localhost"主機(jī)名,"root"連接MySQL的用戶名,"密碼"為MySQL的連接密碼,"test"表示操作的MySQL數(shù)據(jù)庫。db=pymysql.connect("localhost","root","密碼","test")(3)使用connector對象的cursor方法建立對MySQL的操作游標(biāo)。cursor=db.cursor()(4)使用字符串編寫完成SQL語句。注意,這里使用的是三引號表示多行字符串。這里的SQL語句使用INSERTINTO向表EMPLOYEE的字段FIRST_NAME,LAST_NAME,AGE,SEX和INCOME分別插入VALUES為’Mac’,’Su’,20,’M’和5000的值。sql="""INSERTINTOEMPLOYEE(FIRST_NAME,LAST_NAME,AGE,SEX,INCOME)VALUES('Mac','Su',20,'M',5000)"""(5)使用try和except語句執(zhí)行游標(biāo)cursor的sql語句,并使用commit方法提交至MySQL數(shù)據(jù)庫服務(wù)器,rollback方法表示如果在整個提交過程中出現(xiàn)任何問題,則實(shí)現(xiàn)事務(wù)性的回滾操作。try:cursor.execute(sql)dbmit()except:db.rollback()(6)關(guān)閉數(shù)據(jù)庫連接。db.close()(7)運(yùn)行效果如圖3-19所示。圖3-19使用PyMySQL向MySQL插入數(shù)據(jù)完成代碼如下所示。importpymysqldb=pymysql.connect("localhost","root","密碼","test")cursor=db.cursor()sql="""INSERTINTOEMPLOYEE(FIRST_NAME,LAST_NAME,AGE,SEX,INCOME)VALUES('Mac','Su',20,'M',5000)"""try:cursor.execute(sql)dbmit()except:db.rollback()db.close()3.查詢數(shù)據(jù)【實(shí)例3-7】這里將通過PyMySQL向表employee查詢字段income值大于1000的記錄,并使用for循環(huán)輸出所有記錄。如果出現(xiàn)異常,則拋出異常信息。(1)Python中導(dǎo)入PyMySQL庫importpymysql(2)使用PyMySQL庫建立與MySQL的連接,并返回一個db對象。Connect方法中的參數(shù)分別表示:"localhost"主機(jī)名,"root"連接MySQL的用戶名,"密碼"為MySQL的連接密碼,"test"表示操作的MySQL數(shù)據(jù)庫。db=pymysql.connect("localhost","root","密碼","test")(3)使用connector對象的cursor方法建立對MySQL的操作游標(biāo)。cursor=db.cursor()(4)使用字符串編寫完成SQL語句。注意,這里使用的是三引號表示多行字符串。這里的SQL語句使用SELECTFROM用于查詢表EMPLOYEE中條件為INCOME大于1000的記錄。sql="SELECT*FROMEMPLOYEE\WHEREINCOME>%d"%(1000)(5)在try中執(zhí)行游標(biāo)的sqltry:cursor.execute(sql)(6)使用fetchall方法獲取第五步返回的結(jié)果results=cursor.fetchall()(7)使用for循環(huán)將返回的結(jié)果進(jìn)行遍歷,并將每行中的列值通過數(shù)組下標(biāo)獲得,最后使用print方法將其輸出。forrowinresults:fname=row[1]lname=row[2]age=row[3]sex=row[4]income=row[5]print("name=%s%s,age=%s,sex=%s,income=%s"%\(fname,lname,age,sex,income))(8)在except中導(dǎo)入traceback模塊,并使用該模塊的print_exc方法輸出更加詳細(xì)的異常信息。except:importtracebacktraceback.print_exc()print("Error:unabletofetchdata")(9)關(guān)閉服務(wù)器連接db.close()(10)運(yùn)行結(jié)果如圖3-20所示。name=MacSu,age=20,sex=M,income=5000.0圖3-20使用PyMySQL向MySQL查詢數(shù)據(jù)完成代碼如下所示。importpymysql

db=pymysql.connect("localhost","root","密碼","test")

cursor=db.cursor()

sql="SELECT*FROMEMPLOYEE\

WHEREINCOME>%d"%(1000)

try:

cursor.execute(sql)

results=cursor.fetchall()forrowinresults:fname=row[1]lname=row[2]age=row[3]sex=row[4]income=row[5]print("name=%s%s,age=%s,sex=%s,income=%s"%\(fname,lname,age,sex,income))except:importtracebacktraceback.print_exc()print("Error:unabletofetchdata")db.close()4.更新數(shù)據(jù)【實(shí)例3-8】這里將通過PyMySQL向表employee更新字段age,并將其所有的值加1,更新的條件是字段sex的值為M。如果出現(xiàn)異常,則實(shí)現(xiàn)事務(wù)性的回滾操作。(1)Python中導(dǎo)入PyMySQL庫importpymysql(2)使用PyMySQL庫建立與MySQL的連接,并返回一個db對象。Connect方法中的參數(shù)分別表示:"localhost"主機(jī)名,"root"連接MySQL的用戶名,"密碼"為MySQL的連接密碼,"test"表示操作的MySQL數(shù)據(jù)庫。db=pymysql.connect("localhost","root","密碼","test")(3)使用connector對象的cursor方法建立對MySQL的操作游標(biāo)cursor=db.cursor()(4)使用字符串編寫完成SQL語句。注意,這里使用的是三引號表示多行字符串。這里的SQL語句使用UPDATESET更新表EMPLOYEE的AGE,更新條件為SEX等于’M’。sql="UPDATEEMPLOYEESETAGE=AGE+1\WHERESEX='%c'"%('M')(5)使用try和except語句執(zhí)行游標(biāo)cursor的sql語句,并使用commit方法提交至MySQL數(shù)據(jù)庫服務(wù)器,rollback方法表示如果在整個提交過程中出現(xiàn)任何問題,則實(shí)現(xiàn)事務(wù)性的回滾操作。try:cursor.execute(sql)dbmit()except:db.rollback()(6)關(guān)閉服務(wù)器連接db.close()(7)運(yùn)行結(jié)果如圖3-21所示。圖3-21使用PyMySQL向MySQL更新數(shù)據(jù)完成代碼如圖所示。importpymysqldb=pymysql.connect("localhost","root","密碼","test")cursor=db.cursor()sql="UPDATEEMPLOYEESETAGE=AGE+1\WHERESEX='%c'"%('M')try:cursor.execute(sql)dbmit()except:db.rollback()db.close()5.刪除數(shù)據(jù)【實(shí)例3-9】這里將通過PyMySQL向表employee刪除符合條件的記錄,刪除的條件是字段age的值大于40。如果出現(xiàn)異常,則實(shí)現(xiàn)事務(wù)性的回滾操作。(1)Python中導(dǎo)入PyMySQL庫importpymysql(2)使用PyMySQL庫建立與MySQL的連接,并返回一個db對象。Connect方法中的參數(shù)分別表示:"localhost"主機(jī)名,"root"連接MySQL的用戶名,"密碼"為MySQL的連接密碼,"test"表示操作的MySQL數(shù)據(jù)庫。db=pymysql.connect("localhost","root","密碼","test")(3)使用connector對象的cursor方法建立對MySQL的操作游標(biāo)。cursor=db.cursor()(4)使用字符串編寫完成SQL語句。注意,這里使用的是三引號表示多行字符串。這里的SQL語句使用DELETEFROM將表EMPLOYEEZ中條件為AGE大于40的記錄刪除。sql="DELETEFROMEMPLOYEEWHEREAGE>'%d'"%(40)(5)使用try和except語句執(zhí)行游標(biāo)cursor的sql語句,并使用commit方法提交至MySQL數(shù)據(jù)庫服務(wù)器,rollback方法表示如果在整個提交過程中出現(xiàn)任何問題,則實(shí)現(xiàn)事務(wù)性的回滾操作。try:cursor.execute(sql)dbmit()except:db.rollback()(6)關(guān)閉服務(wù)器連接db.close()(7)運(yùn)行結(jié)果如圖3-22所示。圖3-22使用PyMySQL向MySQL刪除數(shù)據(jù)完成代碼如圖所示。importpymysqldb=pymysql.connect("localhost","root","密碼","test")cursor=db.cursor()sql="DELETEFROMEMPLOYEEWHEREAGE>'%d'"%(40)try:cursor.execute(sql)dbmit()except:db.rollback()db.close()到此,我們已經(jīng)實(shí)現(xiàn)了在Python中使用PyMySQL模塊針對MySQL操作數(shù)據(jù)表格的基本用法。6.數(shù)據(jù)探索【實(shí)例3-10】這里將通過numpy生成學(xué)生模擬數(shù)據(jù),pandas的寫入和讀取指定學(xué)生就業(yè)信息,并對其進(jìn)行數(shù)據(jù)探索。(1)Python中導(dǎo)入pandas、numpy和randomimportpandasaspdimportnumpyasnpimportrandom(2)設(shè)置隨機(jī)種子以確保結(jié)果的可重復(fù)性np.random.seed(42)random

溫馨提示

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

評論

0/150

提交評論