數(shù)據(jù)分析作業(yè)——Numpy(第4次作業(yè))_第1頁
數(shù)據(jù)分析作業(yè)——Numpy(第4次作業(yè))_第2頁
數(shù)據(jù)分析作業(yè)——Numpy(第4次作業(yè))_第3頁
數(shù)據(jù)分析作業(yè)——Numpy(第4次作業(yè))_第4頁
全文預覽已結束

下載本文檔

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

文檔簡介

1、數(shù)據(jù)分析作業(yè)Numpy(第4次作業(yè))Numpy第4次作業(yè)如下列表格所示,有兩張后綴名為.csv的數(shù)據(jù)文件,記錄的是“五糧液”與“云南白藥”在某段時間內(nèi),股市交易變化的數(shù)據(jù)。五糧液1s_cdetrade_da1operhigiilewclcs=匚r=_closEchargzpc:_chvolncint00CS5S.S;2:200821220223.業(yè)216.il213.4216.44:1.36C.305615731E.33317800CS5S.S;23200820220223.92l-Z_3216.4222.2-E.76-2.5923lstsoe.340225S000CS5S.S;2:20081

2、922C.47225.92r.27222.2220.E171.330.739233472.753C052900CS5S.S;2:200818215.3922521S.12220.57219.S9C.58C.2636190382.542CS35600CS5S.S;iXiSl1721.5222214.5219.99212.97.395.33023151536913369云南白藥1s_ccdetrade_daiopenhigiilewclcs=匚r=_clo=Echargzpc:_chvolsncint00C53S.S2:200S211C2.1103.S9匸.乜工3,J101.32.112.3S29

3、LllC.oi2iC02.500C53S.S2:200S20101.71102.7E101.03101.3132.-1.57-1.32182674.3i32951.300C53S.S2:200S19104.55104.5E102.31C2.97134.3-1.56-1.oS6545645.11i71323.600C53S.S2:200S18104.510o.17103.S3工土礙134.C.39C.3S6146503.91530200C53S.SiXiSl17104.徑10o.3E103.131C.54133.E6C.58C.3547:56S6.2o685E32.100C53S.S2:200S

4、141C3.2133.9101.631C3.S6133.ISC.580.6592112.53556E71S要求:1,將這兩個文件保存在某個文件夾下,如:D:CodingPythonLogicCodingDataAnalyze;2,34轉換壬作路徑并使用OS模塊獲取該文件夾下所有文件列表,但只返回csv文件格式的文件名列表;讀取后綴名為“.csv”的數(shù)據(jù)文件,并將多張表中的數(shù)據(jù)通過“行堆疊”的形式拼接在一起;將合并后的數(shù)據(jù)保存到一個名為“MergeData.csv的文件中。實現(xiàn)代碼如下第種方法#coding:utf8CreatedonMonJan1816:29:282021author:清弦墨客

5、(聆聽)mportosmportnumpyasnp#定義一個函數(shù),從指定路徑中獲取文件名列表defgetFileNames(path):#修改當前路徑os.chdir(path=path)#獲取路徑下的文件信息files=os.listdir(path)#只返回csv格式的文件csv_files=forfileinfiles:iffile.endswith(.csv):csv_filesappend(file)returncsv_files#定義一個函數(shù),從指定的文件名列表中打開文件并合并文件數(shù)據(jù)defmergeData(file_names):#創(chuàng)建一個空的數(shù)組用來保存數(shù)據(jù)arr=np.ar

6、ray()#遍歷文件,打開文件,讀取文件foriinrange(len(file_names):IHflf#使用numpy讀取數(shù)據(jù)文件#因為數(shù)據(jù)文件中既有字符串又有數(shù)值,所以使用dtype=object來讀取#如果讀取的是第一張表,則保留表頭,否則不保留表頭ifi=0:stock=np.loadtxt(file_namesi,delimiter,”,dtype=object)#添加首張文件的數(shù)據(jù)到rrarr=stockelse:stock=np.loadtxt(file_namesi,delimiter,”,dtype=object,skiprows=1)#余下文件的數(shù)據(jù)垂直拼接到rr,需注意

7、參數(shù)是元組的形式np.vstack(arr,stock)#保存文件np.savetxt(DataMerge.csv,arr,delimiter,”,fmt=%s)#主函數(shù)入口f_name_=_main_:#先獲得數(shù)據(jù)文件的文件名path=rD:CodingPythonLogicCodingDataAnalyze#獲得文件名列表file_names=getFileNames(path)#將文件的路徑補充完整foriinrange(len(file_names):file_name$i=path+file_namesi#顯示文件的完整路徑名#print(file_names)#打開并合并文件數(shù)據(jù)m

8、ergeData(filenames)第種方法使用Pandas庫實現(xiàn).csv文件的讀取。coding:utf8CreatedonMonJan1817:46:162021author:清弦墨客(聆聽)mportosmportpandasaspdmportnumpyasnp定義一個函數(shù),從指定路徑中獲取文件名列表defgetFileNames(path):修改當前路徑os.chdir(path=path)獲取路徑下的文件信息files=os.listdir(path)只返回csv格式的文件csv_files=forfileinfiles:iffile.endswith(.csv):csv_file

9、sappend(file)returncsv_files定義一個函數(shù),使pandas從指定的文件名列表中打開文件并合并文件數(shù)據(jù)defmergeData(file_names):創(chuàng)建一個空的DataFramedf=pd.DataFrame()使用pandas從文件名列表中讀取數(shù)據(jù)foriinrange(len(file_names):ifi=0:csv_data=pd.read_csv(file_namesi)df=csv_dataelse:csv_data=pd.read_csv(file_namesi)合并數(shù)據(jù),合并時忽略首行df=df.append(csv_data.iloc1:)print(df)保存數(shù)據(jù)不保留行索引df.to_csv(DataMerge1.csv,index=0)主函數(shù)入口f_name_=_main_:先獲得數(shù)據(jù)文件的文件名path=rD:CodingPythonLogicCodingDataAnalyze獲得文件名列表fil

溫馨提示

  • 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

提交評論