Python金融數(shù)據(jù)分析與挖掘(微課版) 課件 3-1.序列_第1頁
Python金融數(shù)據(jù)分析與挖掘(微課版) 課件 3-1.序列_第2頁
Python金融數(shù)據(jù)分析與挖掘(微課版) 課件 3-1.序列_第3頁
Python金融數(shù)據(jù)分析與挖掘(微課版) 課件 3-1.序列_第4頁
Python金融數(shù)據(jù)分析與挖掘(微課版) 課件 3-1.序列_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第3章

數(shù)據(jù)處理包Pandaspandas簡介、序列創(chuàng)建與訪問序列屬性與方法序列切片與聚合運算Pandas簡介第3章

Pandas是基于Numpy開發(fā)的一個Python數(shù)據(jù)分析包,提供了大量的數(shù)據(jù)分析函數(shù),包括數(shù)據(jù)處理、數(shù)據(jù)抽取、數(shù)據(jù)集成、數(shù)據(jù)計算等基本的數(shù)據(jù)分析手段。Pandas核心數(shù)據(jù)結(jié)構(gòu)包括序列和數(shù)據(jù)框,序列儲存一維數(shù)據(jù),而數(shù)據(jù)框則可以存儲更復(fù)雜的多維數(shù)據(jù)。這里的數(shù)據(jù)框主要用來存儲二維數(shù)據(jù)(類似于數(shù)據(jù)表)。通過importpandasaspd命令導(dǎo)入該包,其中pd為其簡寫。序列創(chuàng)建及訪問第3章

序列由索引index和對應(yīng)的值構(gòu)成,默認情況下索引從0開始從小到大順序排列,每個索引對應(yīng)一個值。可以通過列表、元組、數(shù)組、字典等創(chuàng)建默認序列或個性化序列。序列對象的創(chuàng)建通過Pandas包中的Series()函數(shù)來實現(xiàn)。importpandasaspd

#導(dǎo)入Pandas庫importnumpyasnp

#導(dǎo)入Numpy庫s1=pd.Series([1,-2,2.3,'hq'])#指定列表創(chuàng)建默認序列s2=pd.Series([1,-2,2.3,'hq'],index=['a','b','c','d'])#指定列表和索引,創(chuàng)建個性化序列s3=pd.Series((1,2,3,4,'hq'))

#指定元組創(chuàng)建默認序列s4=pd.Series(np.array([1,2,4,7.1]))

#指定數(shù)組創(chuàng)建默認序列#通過字典創(chuàng)建序列mydict={'red':2000,'bule':1000,'yellow':500}

#定義字典ss=pd.Series(mydict)

#指定字典創(chuàng)建序列序列創(chuàng)建及訪問第3章序列的訪問通過index索引訪問對應(yīng)的元素值。print(s4[3])print(s2['c'])執(zhí)行結(jié)果如下:7.12.3序列屬性第3章序列有兩個屬性,分別為值(values)和索引(index)。通過序列中的values屬性和index屬性可以獲取其內(nèi)容。importpandasaspds1=pd.Series([1,-2,2.3,'hq'])#創(chuàng)建序列s1va1=s1.values#獲取序列s1中的值,賦給變量va1in1=s1.index#獲取序列s1中的索引,賦給變量in1print(va1)

#打印變量結(jié)果print(in1)

#打印變量結(jié)果,可通過list()函數(shù)轉(zhuǎn)化為列表,如in2=list(in1)執(zhí)行結(jié)果如下:[1-22.3'hq']RangeIndex(start=0,stop=4,step=1)序列方法第3章unique()通過序列中的unique()方法,可以去掉序列中重復(fù)的元素值importpandasaspds5=[1,2,2,3,'hq','hq','he']#定義列表s5s5=pd.Series(s5)#將定義的列表s5轉(zhuǎn)換為序列s51=s5.unique()#調(diào)用unique()方法去重print(s51)

執(zhí)行結(jié)果如下:[123'hq''he']序列方法第3章isin()通過isin()方法,判斷元素值的存在性,如果存在則返回True,否則為False。比如判斷‘he’這個元素是否存在前面定義的s5序列中。importpandasaspds5=[1,2,2,3,'hq','hq','he']s5=pd.Series(s5)s52=s5.isin(['he'])print(s52)執(zhí)行結(jié)果如下:0False1False2False3False4False5False6Truedtype:bool序列方法——value_counts()第3章value_counts()通過序列中的value_counts()方法,可以統(tǒng)計獲得序列元素值出現(xiàn)的次數(shù)。比如統(tǒng)計s5序列中每個元素值出現(xiàn)的次數(shù)。s53=s5.value_counts()其中索引(index)為原序列元素的值,其值部分則為出現(xiàn)的次數(shù)。序列方法——空值處理方法第3章空值處理方法:isnull()、notnull()、dropan()它們的使用方法如下:isnull()判斷序列中是否有空值(nan值),如果有空值,返回True,否則False;notnull()判斷序列中的非空值(nan值),如果真,返回True,否則False;dropan()清洗序列中的空值(nan值)。importpandasaspdimportnumpyasnpss1=pd.Series([10,'hq',60,np.nan,20])#定義序列ss1,其中np.nan為空值(nan值)tt=ss1[~ss1.isnull()]#~為取反,采用邏輯數(shù)組進行索引獲取數(shù)據(jù)在以上代碼后面繼續(xù)輸入以下示例程序:tt2=ss1[ss1.notnull()]tt3=ss1.dropna()tt2和tt3的結(jié)果與tt一樣。序列切片第3章序列元素訪問是通過索引完成的,切片即連續(xù)或者間斷地批量獲取元素。importnumpyasnps1=pd.Series([1,-2,2.3,'hq'])s2=pd.Series([1,-2,2.3,'hq'],index=['a','b','c','d'])s4=pd.Series(np.array([1,2,4,7.1]))s22=s2[['a','d']]#取索引號為字符a,b的元素s11=s1[0:2]#索引為連續(xù)的數(shù)組s12=s1[[0,2,3]]#索引為不連續(xù)的數(shù)組s41=s4[s4>2]#索引為邏輯數(shù)組print(s22)print('-'*20)print(s11)print('-'*20)print(s12)print('-'*20)print(s41)執(zhí)行結(jié)果如下:a1dhqdtype:object--------------------011-2dtype:object--------------------0122.33hqdtype:object--------------------24.037.1dtype:float64

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論