Python財(cái)務(wù)數(shù)據(jù)分析與應(yīng)用(微課版)課件 09-1文本數(shù)據(jù)處理_第1頁
Python財(cái)務(wù)數(shù)據(jù)分析與應(yīng)用(微課版)課件 09-1文本數(shù)據(jù)處理_第2頁
Python財(cái)務(wù)數(shù)據(jù)分析與應(yīng)用(微課版)課件 09-1文本數(shù)據(jù)處理_第3頁
Python財(cái)務(wù)數(shù)據(jù)分析與應(yīng)用(微課版)課件 09-1文本數(shù)據(jù)處理_第4頁
Python財(cái)務(wù)數(shù)據(jù)分析與應(yīng)用(微課版)課件 09-1文本數(shù)據(jù)處理_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

文本數(shù)據(jù)處理9-1TextDataProcessing內(nèi)容概述1本章學(xué)習(xí)目標(biāo)財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析(1)掌握Series數(shù)據(jù)類型特征和轉(zhuǎn)化;(5)利用str對(duì)象處理財(cái)務(wù)文本數(shù)據(jù)。(4)掌握文本數(shù)據(jù)的拆分、合并、匹配、提取和替換;(2)熟悉str對(duì)象的屬性和方法;(3)熟悉正則表達(dá)式基礎(chǔ)語法;目錄CONTENTS財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析9.1文本數(shù)據(jù)處理

1Pandas數(shù)據(jù)類型綜述

2str對(duì)象

3正則表達(dá)式基礎(chǔ)

4文本數(shù)據(jù)處理的5類操作

【財(cái)務(wù)應(yīng)用與實(shí)踐】上市公司基本信息文本數(shù)據(jù)處理

Pandas數(shù)據(jù)類型綜述PartOne01財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析Pandas數(shù)據(jù)類型Pandas類型(dtype)Python類型(type)說明objectstr字符串,存儲(chǔ)文本數(shù)據(jù)等int64int整數(shù)float64float浮點(diǎn)數(shù)boolboolTrue/False值datetime64NA日期時(shí)間的值timedelta[ns]NA日期時(shí)間的差categoryNA統(tǒng)計(jì)中分類變量財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析數(shù)據(jù)類型轉(zhuǎn)換astype()函數(shù)是pandas中用于轉(zhuǎn)換數(shù)據(jù)類型的方法。它可以將DataFrame或Series的數(shù)據(jù)類型轉(zhuǎn)換為指定的類型。語法格式:DataFrame.astype(dtype,copy=True,errors='raise')Series.astype(dtype,copy=True,errors='raise')errors:類型:{'raise','ignore'},默認(rèn)為'raise'作用:指定在轉(zhuǎn)換期間如何處理錯(cuò)誤。'raise':如果發(fā)生錯(cuò)誤,則引發(fā)異常。'ignore':忽略錯(cuò)誤,保留原始數(shù)據(jù)。財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析分類數(shù)據(jù)category類型在處理具有固定類別或需要特定排序的數(shù)據(jù)時(shí)非常有用,特別是在數(shù)據(jù)分析和處理中,可以提高數(shù)據(jù)的可讀性、內(nèi)存效率和操作便利性。屬性和方法說明舉例catcat對(duì)象df['員工'].catcat.categoriesIndex類型類別的本身df['員工'].cat.categoriescat.ordered是否有序df['員工'].cat.categoriescat.codes序列的類別會(huì)被賦予唯一的整數(shù)編號(hào)df['員工'].cat.codesstr對(duì)象PartTwo02財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析Python字符串簡(jiǎn)單重申一下有關(guān)字符串的相關(guān)概念:字符串的長(zhǎng)度:字符串中字符的數(shù)目n稱為字符串的長(zhǎng)度;空字符串:零個(gè)字符構(gòu)成的串,長(zhǎng)度為0,可以表示為"";子串:字符串中任意個(gè)連續(xù)的字符組成的子序列;字符串的前綴:起始于位置為0、長(zhǎng)度為k的子串稱為「前綴」;字符串的后綴:終止于字符串末尾位置(n-1),長(zhǎng)度為k的子串稱為「后綴」;字符串之間的比較:通過組成字符串的字符之間的字符編碼來決定的。而字符編碼指的是字符在對(duì)應(yīng)字符集中的序號(hào)。財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析str對(duì)象屬性和方法Pandas通過定義在Index或Series上的str屬性,來處理類型為object或string的文本數(shù)據(jù)1)字母型函數(shù)字符串函數(shù)中有關(guān)字母型的概念是針對(duì)英文字符串而言的。upper(),lower(),title(),capitalize()和swapcase()

這5個(gè)函數(shù)主要用于字母的大小寫轉(zhuǎn)化。s=pd.Series(['industry(工業(yè))','CN','ascale','FinancialApp'])財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析str對(duì)象屬性和方法2)pd.to_numeric()函數(shù)pd.to_numeric()函數(shù)能夠?qū)ψ址袷降臄?shù)值進(jìn)行快速轉(zhuǎn)換和篩選。s=pd.Series(['10','2.1','2e5','<>'])財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析str對(duì)象屬性和方法3)統(tǒng)計(jì)型函數(shù)count

()和

len()函數(shù)的作用分別是返回出現(xiàn)正則模式的次數(shù)和字符串的長(zhǎng)度。s=pd.Series(['**','B***','Ab$'])財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析str對(duì)象屬性和方法4)格式型函數(shù)格式型函數(shù)第一類函數(shù)用于數(shù)據(jù)清洗,空格等字符消除,分別代表去除兩側(cè)空格strip()、右側(cè)空格rstrip()和左側(cè)空格lstrip()。my_index=pd.Index(['列A','列B','列C'])my_code=pd.Series([1,323,600618]).astype('string')正則表達(dá)式基礎(chǔ)PartThere03財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式概述正則表達(dá)式是一種文本模式,包括普通字符(例如,a-z之間的字母)和特殊字符(元字符),描述匹配字符串的特定模式,用來查找、替換、驗(yàn)證和提取文本數(shù)據(jù)等操作。簡(jiǎn)單地說,正則表達(dá)式是一個(gè)特殊的字符序列,其用于檢查一個(gè)字符串是否與某種模式匹配。通過使用正則表達(dá)式可以做到:數(shù)據(jù)驗(yàn)證。通過測(cè)試字符串,得到需要的字符串模式。如電話號(hào)是有模式的數(shù)字組成的固定位數(shù)的字符串;匹配替換?;谀J狡ヅ鋸奶崛∽幼址M(jìn)而進(jìn)行后續(xù)操作;替換文本??梢允褂谜齽t表達(dá)式識(shí)別文檔中的特定文本,刪除或者替換文本。財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法1)正則表達(dá)式的構(gòu)造正則表達(dá)式是由普通字符和特殊字符(稱為“元字符”)組成的文字模式(pattern)財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法1)正則表達(dá)式的構(gòu)造正則表達(dá)式是由普通字符和特殊字符(稱為“元字符”)組成的文字模式(pattern)(1)普通字符普通字符包括沒有被指定為元字符的所有可打印和不可打印字符。財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法1)正則表達(dá)式的構(gòu)造正則表達(dá)式是由普通字符和特殊字符(稱為“元字符”)組成的文字模式(pattern)(2)元字符在正則表達(dá)式中,通常使用一些特殊的字符來描述模式,這些特殊的字符稱為元字符。常用的元字符包括:.[]*+?{}()|\^$財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法2)正則表達(dá)式基礎(chǔ)語法(1)【.】元字符元字符點(diǎn)【.】匹配除換行符【\n】之外的任何單字符。(2)匹配元字符像點(diǎn)【.】、【\】等是元字符。要匹配它們,需要請(qǐng)使用【\.】和【\\】財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法2)正則表達(dá)式基礎(chǔ)語法(3)限定符限定符用來指定正則表達(dá)式的一個(gè)給定組件必須出現(xiàn)多少次才能滿足匹配。限定符有

*

、

+

、

?、

{n}、

{n,}

、或

{n,m}

共6種。s='Apple蘋果!\nanApple\np'財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法2)正則表達(dá)式基礎(chǔ)語法(4)字符集和否定字符集字符集也稱為字符類,是匹配方括號(hào)中包含的任意字符。分兩種情況:①[],匹配方括號(hào)中包含的任意字符。②[^],否定字符類,匹配方括號(hào)中不包含的任意字符。財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法2)正則表達(dá)式基礎(chǔ)語法(4)字符集和否定字符集字符集也稱為字符類,是匹配方括號(hào)中包含的任意字符。分兩種情況:①[],匹配方括號(hào)中包含的任意字符。②[^],否定字符類,匹配方括號(hào)中不包含的任意字符。財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法2)正則表達(dá)式基礎(chǔ)語法(5)字符組字符組是一組寫在圓括號(hào)內(nèi)的子模式

(…)。如(xyz),按照確切的順序匹配字符xyz。還可以使用元字符【|】,表示“或”關(guān)系財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法2)正則表達(dá)式基礎(chǔ)語法(6)定位符在正則表達(dá)式中,使用定位符檢查匹配符號(hào)是否是起始符號(hào)或結(jié)尾符號(hào)。插入符號(hào)【^】符號(hào)用于檢查匹配字符是否是輸入字符串的第一個(gè)字符;$】符號(hào)用于檢查匹配字符是否是輸入字符串的最后一個(gè)字符財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法2)正則表達(dá)式基礎(chǔ)語法(7)斷言在使用正則表達(dá)式時(shí),有時(shí)我們需要捕獲的內(nèi)容前后必須是特定內(nèi)容,但又不捕獲這些特定內(nèi)容的時(shí)候,需要帶有斷言正則表達(dá)式。斷言是非捕獲組內(nèi)容。財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法2)正則表達(dá)式基礎(chǔ)語法(7)斷言①正向先行斷言。正向先行斷言格式:

x(?=y)②負(fù)向先行斷言。負(fù)向先行斷言格式:

x(?!y)③正向后行斷言。正向后行斷言格式:

(?<=y)x④負(fù)向后行斷言。負(fù)向后行斷言格式:

(?<!y)x財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法2)正則表達(dá)式基礎(chǔ)語法(8)修飾符修飾符也稱為標(biāo)記,正則表達(dá)式的修飾符用于指定額外的匹配策略。修飾符不寫在正則表達(dá)式里,位于表達(dá)式之外,語法格式:/pattern/flags財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析正則表達(dá)式語法2)正則表達(dá)式基礎(chǔ)語法(9)使用反向引用在正則表達(dá)式中,\n

(n為整數(shù))可以用來引用前面捕獲組中匹配的內(nèi)容。例如匹配重復(fù)的單詞:‘\b(\w+)\b\s+\文本數(shù)據(jù)處理的5類操作PartFour04財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析拆分split()函數(shù)按照能夠匹配的子串將Series/Index分割后返回列表或Series/DataFrame,語法格式:財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析合并合并操作有2個(gè)函數(shù),分別是

str.join()和str.cat()

。1)str.join()函數(shù)

str.join()表示用某個(gè)連接符把

Series

中的字符串列表連接起來,如果列表中出現(xiàn)了非字符串元素則返回缺失值。s.str.join(sep)只有1個(gè)參數(shù)sep,為合并所需的分隔符字符串2)str.cat()函數(shù)str.cat()按照給定分隔符合并Series/Index,語法格式:財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析匹配1)str.contains()函數(shù)str.contains()返回了每個(gè)字符串是否包含正則模式的布爾序列,語法格式:2)str.startswith()和str.endswith()函數(shù)str.startswith()和str.endswith()返回了每個(gè)字符串以給定模式為開始和結(jié)束的布爾序列,他們都不支持正則表達(dá)式。財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析匹配3)str.match()函數(shù)如果需要用正則表達(dá)式來檢測(cè)開始或結(jié)束字符串的模式,可以使用

str.match()

,其返回了每個(gè)字符串起始處是否符合給定正則模式的布爾序列,語法格式:財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析提取str.extract()函數(shù)提取操作,是一種返回具體元素操作,首先是匹配操作,再根據(jù)匹配的結(jié)果提取捕獲組內(nèi)容并返回語法格式:str.extractall()不同于str.extract()只匹配一次,其會(huì)把所有符合條件的模式全部匹配出來。提取的多個(gè)結(jié)果,以多級(jí)索引的方式存儲(chǔ)。str.findall()的功能類似于str.extractall(),區(qū)別在于前者把結(jié)果存入列表中,而后者處理為多級(jí)索引,每個(gè)行只對(duì)應(yīng)一組匹配,而不是把所有匹配組合構(gòu)成列表。財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析替換Series/Dataframe的str.replace()和replace()并不是一個(gè)函數(shù),在使用字符串替換時(shí)應(yīng)當(dāng)使用前者。

1)replace()函數(shù)replace()函數(shù)是Series/Dataframe某一個(gè)或匹配的值的整個(gè)值的替換,而str.replace不是改變值的部分。Series/Dataframe的replace()函數(shù)語法格式:財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析提取2)str.replace()函數(shù)Series/Dataframe的str.replace()函數(shù)某一個(gè)或匹配的值的部分值的替換,語法格式:財(cái)務(wù)數(shù)據(jù)分析財(cái)務(wù)數(shù)據(jù)分析flags參數(shù)flags參數(shù)是用來指定正則表達(dá)式操作的額外選項(xiàng)。下面列出了常用的flags及其用法。re.I/re.IGNORECASE:忽略大小寫re.M/re.MULTILINE:多行匹配re.S/re.DOTALL:讓.可以匹配包括\n在內(nèi)的任意字符re.U/re.UNICODE:使用Unicode字符

溫馨提示

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

評(píng)論

0/150

提交評(píng)論