Python開發與財務應用課件_第1頁
Python開發與財務應用課件_第2頁
Python開發與財務應用課件_第3頁
Python開發與財務應用課件_第4頁
Python開發與財務應用課件_第5頁
已閱讀5頁,還剩175頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、Python 基礎Python 概述01Python 基礎Python 概述01Python的應用方向爬蟲爬取網站數據分析圖片處理Python的應用方向爬蟲爬取網站數據分析圖片處理大勢所趨財務大數據智能財務RPA財務機器人大勢所趨財務大數據智能財務RPA財務機器人Python開發與財務應用課件Python 基礎“Hello Python” 寫下我們第一個程序01Python 基礎“Hello Python”01Python開發與財務應用課件輸出最簡單的Python程序,輸出一句話:“這是財務人的第一個Python程序”,如何實現呢?print函數()也可以接受多個文本,用逗號隔開。Python

2、提供了print()函數,可以非常簡單地實現這個功能。輸出最簡單的Python程序,輸出一句話:“這是財務人的第一給程序加點佐料:注釋定義:一些說明性的語句,輔助理解或記憶(程序不做任何操作)。多行注釋以3個單引號(或雙引號)將文字包裹起來,寫法如下:單行注釋以 # 號開頭,有兩種寫法: 單獨占一行 寫在代碼后給程序加點佐料:注釋定義:一些說明性的語句,輔助理解或記憶(輸入想要更靈活地輸出我想要的東西怎么辦?比如上文中【固定資產原值】的金額不想寫死在輸出語句中,而想在程序執行時再告訴它?Python提供了input()函數,可以讓用戶輸入。金額輸入完成后,按下回車輸入想要更靈活地輸出我想要的東

3、西怎么辦?比如上文中【固定資產小結用print() 輸出,input()輸入。#、或后面可以寫注釋,多寫注釋能幫助我們理解程序。小結用print() 輸出,input()輸入。Python 基礎語法變量與賦值02Python 基礎語法變量與賦值02Python開發與財務應用課件什么是變量變量按字面理解就是會變化的量money = 100變量名稱賦值數據語法:變量 = 數據賦值規則:1.等號右邊有運算時,算出結果后再賦值給變量。 2.變量可以被多次賦值,并且每一次賦值會覆蓋原來的值。小貼士:“=”不代表數學上的相等什么是變量變量按字面理解就是會變化的量money = 變量的命名規則python規

4、定了命名時要遵循以下四條原則:1. 對大小寫敏感 Andyandy2. 第一個字符必須是字母表中字母或者下劃線3. 只能包含字母,數字和下劃線4. 不能使用某些特殊單詞變量的命名規則python規定了命名時要遵循以下四條原則:1小結現在,讓我們來回顧一下知識點: 變量賦值:變量 = 數據 變量可以被多次賦值,每一次賦值替換原來的值。 變量的命名規則:由字母,數字,下劃線組成,不能以數字開頭。 命名時見名知意且使用駝峰命名法。小結現在,讓我們來回顧一下知識點:Python 基礎語法基礎數據類型02Python 基礎語法基礎數據類型02Python開發與財務應用課件財務數據如何存儲財務數據如何存儲

5、數據類型注意:不管是數字還是文字,在Python中都屬于數據 數值:主要用于存儲金額數據,一般是浮點數 字符串:存儲科目名稱、公司名稱等等文本型數據 列表:是一種有序的集合,比如通訊錄列表 字典:多個有映射關系的數據,可以存儲在一個字典里,比如科目及余額數據類型注意:不管是數字還是文字,在Python中都屬于數據算術運算符運算符描述實例+加 - 兩個對象相加a + b 輸出結果 16-減 - 得到負數或是一個數減去另一個數a - b 輸出結果 -4*乘 - 兩個數相乘或是返回一個被重復若干次的字符串a * b 輸出結果 60/除 - a除以bb / a 輸出結果 1.6666666666666

6、667%取余 - 返回除法的余數b % a 輸出結果 4*乘方 - 返回a的b次冪a * b 輸出結果 60466176假設變量a = 6, b = 10算術運算符運算符描述實例+加 - 兩個對象相加a + b 輸賦值運算符運算符描述實例=簡單的賦值運算符c = a + b 將 a + b 的運算結果賦值為c+=加法賦值運算符c += a 等效于 c = c + a-=減法賦值運算符c -= a 等效于 c = c - a*=乘法賦值運算符c *= a 等效于 c = c * a/=除法賦值運算符c /= a 等效于 c = c / a%=取模賦值運算符c %= a 等效于 c = c % a

7、*=冪賦值運算符c *= a 等效于 c = c * a假設變量a = 6, b = 10賦值運算符運算符描述實例=簡單的賦值運算符c = a + b比較運算符運算符描述實例=等于 - 比較對象是否相等(a = b)返回False!=不等于 - 比較兩個對象是否不相等(a != b)返回True大于 - 返回a是否大于b(a b)返回False小于 - 返回a是否小于b(a =大于等于 - 返回a是否大于等于b(a = b)返回False=小于等于 - 返回a是否小于等于b(a = b)返回True所有比較運算符返回1表示True,返回0表示False假設變量a = 6, b = 10比較運算

8、符運算符描述實例=等于 - 比較對象是否相等(a 邏輯運算符假設變量a = True, b = False運算符邏輯表達式描述實例anda and b布爾與 - 只有a與b都為True時,a and b才返回True,否則返回False(a and b)返回Falseora or b布爾或 - 如果a與b任意一個為True,a or b返回True,否則返回False(a or b)返回Truenotnot a布爾非 - 如果a為True,返回False。如果a為False,返回Truenot(a and b)返回True邏輯運算符假設變量a = True, b = False運算運算優先級如

9、果一個公式里出現了多種運算符,運算符的計算是有先后順序的。下表對Python中運算符的優先順序進行了總結(從最低優先級到最高優先級)。相同單元格內的運算符從左至右(除了冪運算是從右至左)。運算符描述=賦值運算符or邏輯運算符或orand邏輯運算符與andnot x邏輯運算符非notin, not in, is, is not, , , =, !=, =比較運算符,成員運算符+, -加和減*, /, /, %乘,除,整除,取余*乘方運算優先級如果一個公式里出現了多種運算符,運算符的計算是有先字符串的定義如果字符串內部既包含 又包含 怎么辦?可以用轉義字符來標識,比如: 表示 ” 表示” n 表示

10、換行符 表示反斜杠 字符串是以單引號 或 雙引號 括起來的任意文本字符串的定義如果字符串內部既包含 又包含 怎么辦?可字符串的常規操作字符串是一種字符的集合,集合中的每個字符都會有一個位置標識,我們稱為索引。字符串的常規操作字符串是一種字符的集合,集合中的每個字符都會字符串的常規操作假設變量a =“Hello”, b =“Python”運算符描述實例結果+字符串連接注意:只能將字符串與字符串拼接a + bHelloPython*重復輸出字符串a * 2HelloHello通過索引獲取字符串中字符a1e:截取字符串中的一部分(或者叫“切片”)a1:4ell字符串的常規操作假設變量a =“Hell

11、o”, b =“Py小結Python常見的基本數據類型有: 整型(int),浮點型(float),字符串(str)。Python的運算優先級口訣: “從左往右看,括號優先算,先乘除后加減,再比較,再邏輯”。小結Python常見的基本數據類型有:Python 基礎語法高級數據類型02Python 基礎語法高級數據類型02Python開發與財務應用課件列表listDemo = 現金, 銀行賬款, 應收金額listDemo = listDemo = 現金, 銀行賬款, 應收金額listDemo = 1000, 2000, 3000listDemo = 1000, 銀行賬款, True, 50, 10

12、0, 應收金額列表listDemo = 現金, 銀行賬款, 應索引listDemo = 現金, 銀行賬款, 應收金額列表中的每個元素都會有一個位置標識,我們稱為索引。012索引對應索引的值listDemo0listDemo1listDemo2索引listDemo = 現金, 銀行賬款, 應列表的計算操作符描述+拼接*重復獲取:截取列表的計算操作符描述+拼接*重復獲取:截取列表的操作操作符描述list.append(obj)在列表末尾添加新的元素list.insert(index,obj)將元素插入列表中指定的位置list.extend(seq)在列表末尾一次性追加另一個序列中的多個值(用新列表

13、擴展原來的列表)list.pop(index=-1)移除列表中的一個元素(默認最后一個元素),并且返回該元素的值list.remove(obj)移除列表中某個元素的第一個匹配項list.sort(cmp=None, key=None,reverse=Flase)對原列表進行排序(只能對相同類型的元素進行排序)列表的操作操作符描述list.append(obj)在列表末字典的定義dictionary = “1001” : “庫存現金” , “1002” : “銀行存款”, “1012” : “其他貨幣資金”我是一個元素我是元素的key我是元素的value字典的定義dictionary = “10

14、01” : “字典的特性key是唯一的字典的特性key是唯一的字典的操作操作符描述dictkey訪問字典里的值dictkey=修改值dictkey=添加鍵值對del dictkey刪除鍵值對del dict刪除字典dict.keys()以列表返回所有鍵dict.values()以列表返回所有值dict.items()返回所有鍵值對字典的操作操作符描述dictkey訪問字典里的值dict小結列表:是有序的,可以通過索引存取;值可以重復字典:是無序的,要通過鍵來獲取值;鍵是唯一的,值可重復 小結列表:Python 進階語法條件 分支語句的應用03Python 進階語法條件 分支語句的應用03Pyt

15、hon開發與財務應用課件if-else 條件判斷語句語法格式if 條件 :條件成立要做的事情else : 不滿足條件時要做的事情if-else 條件判斷語句語法格式if 條件 :多條件判斷if - elif - else語句語法格式if 條件1 :條件1 成立要做的事情elif 條件2 :條件2 成立要做的事情elif 條件3 :條件3 成立要做的事情else :以上條件都不滿足時要做的事情多條件判斷if - elif - elseif 條件1 :小結Python 用縮進來控制結構,代碼的縮進為4個空格if 后面要有空格 且判斷條件以冒號結尾elif 、else必須和 if 一起使用if 語句

16、執行是自上而下判斷的,如果滿足某個條件,把該條件對應的語句執行后,就不會再執行剩下的elif/else小結Python 用縮進來控制結構,代碼的縮進為4個空格Python 進階語法循環 批量處理我們的數據03Python 進階語法循環 批量處理我們的數據03while 循環語句語法格式 while 條件 : 滿足條件時要執行的代碼while 循環語句語法格式 while 條件 :for-in 循環語句語法格式for 變量 in 列表 : # in表達從列表中依次取值,又稱為遍歷 代碼塊 # 滿足條件時要執行的代碼如果沒有下一個元素for-in 循環語句語法格式for 變量 in 列表 : br

17、eak 語句語句語法格式while 條件1 : 代碼塊 # 滿足條件時要執行的代碼 if 條件2 : break # 當滿足條件2時終止循環for 變量 in 列表 : 代碼塊 # 滿足條件時要執行的代碼 if 條件3 : break # 當滿足條件3時終止循環注意:break 只能用在循環中,除此以外不能單獨使用break 語句語句語法格式while 條件1 :for continue 語句語句語法格式while 條件1 : if 條件2 : continue # 當滿足條件2時跳過本次循環,直接繼續下次循環。 代碼塊 # 滿足條件1時要執行的代碼for 變量 in 列表 : if 條件3

18、: continue # 當滿足條件時跳過本次循環,直接繼續下次循環。 代碼塊 # 滿足條件3時要執行的代碼注意:contuinue 只能用在循環中,除此以外不能單獨使用continue 語句語句語法格式while 條件1 :f小結while循環是一種判斷型循環控制語句,只有當循環條件被打破時,循環才會終止for-in循環是一種遍歷型循環,遍歷完序列中的每個元素后終止循環break語句是跳出循環,continue是跳出本次循環,進入下一次循環小結while循環是一種判斷型循環控制語句,只有當循環條件被Python 進階語法函數 讓我們的算法重復使用03Python 進階語法函數 讓我們的算法重

19、復使用03Python開發與財務應用課件type函數的調用過程:內置函數Python提供了許多內置函數,比如print()、input()、round()等round函數的調用過程:abs()dict()help()min()setattr()all()dir()hex()next()slice()any()divmod()id()object()sorted()ascii()enumerate()input()oct()staticmethod()bin()eval()int()open()str()bool()exec()isinstance()ord()sum()bytearray()f

20、ilter()issubclass()pow()super()bytes()float()iter()print()tuple()callable()format()len()property()type()chr()frozenset()list()range()vars()classmethod()getattr()locals()repr()zip()compile()globals()map()reversed()_import_()complex()hasattr()max()round()delattr()hash()memoryview()set()小貼士實現的功能內置函數無法幫

21、你完成,你也可以自己創建函數type函數的調用過程:內置函數Python提供了許多內置函自定義函數 菜名( 辣度,酸度, 麻度 ) : 菜品# 調用函數并傳遞參數pickledFrog (微辣,少酸,微麻)語法:def注意:函數名命名規范同變量的命名規范一致函數名稱pickledFrog 參數return返回值自定義函數 菜名( 辣度,酸度, 麻度 ) :小結函數可以被重復調用內置函數可以直接調用自定義函數使用 def 進行函數定義 注意代碼塊的縮進return 語句的作用:結束函數調用、返回值函數的傳參方式:位置參數、關鍵字參數、默認參數小結函數可以被重復調用Python 進階語法模塊 讓已

22、編寫的代碼可以直接使用03Python 進階語法模塊 讓已編寫的代碼可以直接使用0Python開發與財務應用課件什么是模塊python中的每個python文件是一個模塊。每個python文件中,封裝類似功能的變量、函數、類型等等,可以被其他的python模塊通過import關鍵字引入以實現重復使用。什么是模塊python中的每個python文件是一個模塊。模塊引入語句第一種方式:import + 模塊名稱(如引用多個模塊,請用逗號(英文半角) , 隔開)示例:模塊引入語句第一種方式:模塊引入語句第二種方式:from 模塊名 import 方法名(或者 * )示例一:示例二:模塊引入語句第二種方

23、式:示例一:示例二:別名使用方式:import 模塊名 as 別名別名使用方式:import 模塊名 as 別名常見內置模塊常見內置模塊常見內置模塊-random使用方式: import random random.函數名()常見方法: random()randint( 起始值, 結束值 )randrange( 起始值, 結束值 )常見內置模塊-random使用方式: import ran常見內置模塊-datetime使用方式: import datetime datetime.函數名()常見方法:datetime.datetime.now()datetime.date.today()常見內置

24、模塊-datetime使用方式: import d財務常用第三方模塊財務常用第三方模塊小結模塊引入的2種方式:1)import 模塊名2)from 模塊名 import 方法名或者 *常用內置模塊 random 和 datetime常用第三方模塊Numpy、Matplotlib、Pandas小結模塊引入的2種方式:Pandas 基礎Pandas 數據結構04Pandas 基礎Pandas 數據結構04panel+data+analysispanel+data+analysisimport pandas as pdPandas是Python第三方庫,提供高性能易用數據類型和分析工具,常用于解決數

25、據分析任務。代碼引入規則模塊名自定義簡稱pandas介紹import pandas as pdPandas是Ppandas介紹Pandas包含兩種數據類型: DataFrame和Series。Series相當于excel中任意一列數據DataFrame相當于一張完整的Excel表格pandas介紹Pandas包含兩種數據類型: DataFrDataFrame數據結構行索引數據數據結構列索引DataFrame數據結構行索引數據數據結構列索引DataFrame的定義定義規則:pd.DataFrame(數據, columns = 列表,index = 列表)數據:多行數據組成的列表列索引:列表,缺省

26、默認0開始行索引:列表缺省默認0開始DataFrame的定義定義規則:pd.DataFrame(DataFrame的屬性屬性說明使用方法運行結果index獲取行索引(行編號)df.index列表 columns獲取列索引(列的title名稱)df.columns列表 values獲取數據內容df.values列表列表,列表,列表DataFrame的屬性屬性說明使用方法運行結果index獲Series數據結構數據結構索引數據Series數據結構數據結構索引數據Series的定義定義規則:pd.Series( 數據列, 索引列 ) 數據列:可以由列表、字典等作為參數來創建索引列:可用列表自定義,必

27、須與數據列的個數匹配。缺省默認從0開始Series的定義定義規則:pd.Series( 數據列, 小結知識點回顧: Series數據結構,包括索引列和數據,相當于excel的一列數據。 DataFrame數據結構,包含行索引,列索引和數據,相當于一頁excel的內容。 DataFrame 有三種屬性:index、columns、values分別可以獲取行號、列名、數據內容。小結知識點回顧:Pandas 基礎Pandas 文件操作04Pandas 基礎Pandas 文件操作04Pandas讀取Excel函數名稱及必要參數:read_excel ( io, sheet_name=0, index_

28、col=None, converters=None )參數解釋實例io文件路徑D:/python/學生信息.xlsx 或 rD:python學生信息.xlsxsheet_name = 0導入的sheet頁1.sheet name = 0,默認導入第一頁, sheet序號從0開始2.sheet name = 表名,也可以直接輸入表名3.sheet name = Sheet2,代表第2個sheet,S要大寫index_col = None索引號1.默認數據不帶行索引號,pandas自動分配從0開始的索引號2.index_col = 0,以第一列作為行索引converters強制規定列數據類型con

29、verters = 列名: str, 列名: float Pandas讀取Excel函數名稱及必要參數:參數解釋實例iPandas寫入Excel函數名稱及必要參數:to_excel ( excel_writer, sheet_name = Sheet1, index=None)參數解釋實例excel_writer文件路徑D:/python/學生信息.xlsx或 rD:python學生信息.xlsxsheet_name = Sheet1要寫入的excel的sheet頁名稱1.默認sheet名是Sheet12.sheet_name = 我想要的sheet名稱index = True是否輸出索引 i

30、ndexindex=True,默認輸出index=None / False,不輸出Pandas寫入Excel函數名稱及必要參數:參數解釋實例e小結Pandas讀取Excel用read_excel文件路徑要用“/”,若用“”路徑前要加“r”sheet_name 有三種指定方式Pandas寫入Excel用to_excelsheet_name 有兩種指定方式多次寫入同一個文件都是覆蓋小結Pandas讀取Excel用read_excelPandas 基礎數據讀取與計算04Pandas 基礎數據讀取與計算04直接索引df 直接索引,有以下幾種方式:獲取列選取一列 df列名選取多列 df列名1, 列名2獲

31、取行按位置選取連續的行 dfn:m直接索引df 直接索引,有以下幾種方式:條件索引選取某列滿足一定條件的行: df(df列1 = 條件) 條件索引,可以通過條件在被選擇列中篩選出結果為True的記錄,常見的形式有:選取多列滿足一定條件的行:df(df列1 = 條件1) & (df列2 = 條件2) 注意:可以使用 &(并且)、|(或者) 操作符條件索引選取某列滿足一定條件的行: df(df列1索引器原始索引 & 自定義索引在Pandas兩種數據結構( Series和DataFrame )中,原始索引和自定義索引并存。自定義行名自定義列名1自定義列名2a張三25b李四28c王五270 1012P

32、andas有2種索引應用于DataFrame,可以幫助你快速定位到你想提取的行或列索引器原始索引 & 自定義索引在Pandas兩種數據結構( loc索引器locindex,column loc索引器內只能使用自定義索引,如果數據中沒有自定義索引名,則索引名等于原始索引。根據index和column進行選取,常見形式有以下幾種:選取一行 df.loc行loc索引器locindex,column 小結直接索引可獲取一列,多列,連續行的數據布爾索引可獲取列滿足條件的數據,多條件要用括號括起來loc索引器可獲取一行,多行多列組合,列滿足條件,連續行列的數據范圍:dfn:m前閉后開,df.locn:m全

33、閉合小結直接索引可獲取一列,多列,連續行的數據Pandas 基礎數據連接與合并04Pandas 基礎數據連接與合并04數據合并-concat語法格式pd.concat(objs, axis=0, join=outer, join_axes=None, ignore_index=False, sort=True)參數解釋objs連接對象,例如df1, df2axis軸向,0代表縱向連接,1代表橫向連接,默認是0join連接方式,共有inner, outer,默認是outerignore_index重建索引,默認False不重建,ignore_index=True,重建索引,重建后會把自定義索引也

34、刪除sort默認為True,將合并的數據進行排序,設置為False可以提高性能數據合并-concat語法格式pd.concat(objs,數據連接-merge語法格式pd.merge(left, right, how=inner, on=None, left_on=None, right_on=None, sort=True) 參數功能left 和 right要連接的兩個不同的DataFrameHow連接方式,有left、right、outer、inner,默認為inner內連接On指的是用于連接的列索引名稱,必須同時存在于左右兩個DataFrame中,如果沒有指定且其他參數也沒有指定,則以兩

35、個DataFrame列名交集作為連接鍵left_on左側DataFrame中用于連接鍵的列名,這個參數左右列名不同但代表的含義相同時非常的有用right_on右側DataFrame中用于連接鍵的列名Sort將合并的數據進行排序,默認為True,設置為False可以提高性能數據連接-merge語法格式pd.merge(left, r小結知識點回顧: concat可以實現橫向/縱向拼接merge只能橫向連接。 concat可以操作多張表,merge只能操作兩張表。 concat只能單純的表拼接,merge可以過濾進行拼接。小結知識點回顧:Pandas 基礎數據透視04Pandas 基礎數據透視04

36、語法格式 參數解釋實例index=None數據透視表的行,必有index=月columns =None數據透視表的列columns=年values= None數據透視表的值,默認所有數字列values=營業收入,凈 利 潤aggfunc=mean值計算方式默認是mean平均值, sum, lenfill_value=NoneNaN用什么填充默認不填充,可以用0填充NaNfill_value=0margins=False是否匯總margins=True時匯總margins_name=All匯總欄命名margins_name=Totaldf.pivot_table( index=None, col

37、umns=None, values=None, aggfunc=mean, fill_value=None, margins=False, margins_name=All )語法格式 參數解釋實例index=None數據透視表的行,小結知識點回顧: pivot_table函數可實現數據透視分析。 pivot_table函數使用必須要指定透視的行,即index。 透視若需要匯總必須傳參數margins=True。小結知識點回顧:數據采集與清洗數據接口05數據采集與清洗數據接口05Python開發與財務應用課件案例講解案例:使用數據接口,采集上市公司盈利能力數據步驟一:了解接口規則步驟二:運行示

38、范代碼步驟三:改寫代碼案例講解案例:使用數據接口,采集上市公司盈利能力數據數據接口-知識點總結1、什么是數據接口?2、數據接口對比數據庫在數據采集上的優勢(提供方整理過數據,比較規范與完整)3、數據接口的使用方法1)查看接口的網站或文檔2)試運行示范代碼3)根據自己的需求改寫示范代碼4、改寫代碼的重點:數據接口的參數( 重點)數據接口-知識點總結1、什么是數據接口?數據采集與清洗網頁爬蟲05數據采集與清洗網頁爬蟲05Python開發與財務應用課件爬蟲的概念如果你既沒有數據庫權限,又拿不到網絡數據接口,數據爬蟲可能是你最后的手段。優勢:“所見即所得”,不需要數據擁有者提供權限(數據庫或接口)劣勢

39、:數據有限(僅網頁上展示的)、網站反爬機制越來越完善爬蟲的概念如果你既沒有數據庫權限,又拿不到網絡數據接口,數據案例講解案例:使用網頁爬蟲,從新浪財經網站上采集上市公司利潤表數據步驟一:查看數據所在的網頁步驟二:編寫代碼爬取網頁內容步驟三:根據爬取網頁內容篩選出我們要的結果案例講解案例:使用網頁爬蟲,從新浪財經網站上采集上市公司利潤網頁爬蟲-知識點總結1、什么是網頁爬蟲?(沒有數據庫權限與數據接口時最后的手段)2、爬蟲的應用場景廣泛3、爬蟲不難,爬取網頁最少僅需要 3 行代碼4、爬蟲的難點與重點在于對網頁或網址的分析網頁爬蟲-知識點總結1、什么是網頁爬蟲?(沒有數據庫權限與數數據采集與清洗缺失

40、值處理05數據采集與清洗缺失值處理05Python開發與財務應用課件數據清洗的意義采集到的數據,可能存在各種各樣的情況: 1)很多空白 2)很多重復 3)很“奇怪”比如“身份證號”列上出現7位數數據可能存在:缺失值、重復值、異常值,將對后續的數據分析、預測產生影響數據清洗的意義采集到的數據,可能存在各種各樣的情況:數據可能知識點小結數據可能存在:缺失、重復、異常數據清洗之前,要對數據(表格)有個初步認識,大致的印象數據太大,Excel打不開,就用Python: 1)head 查看數據頭幾行,了解數據的列意義(維度) 2)count 查看數據有幾行,了解數據的量知識點小結數據可能存在:缺失、重復

41、、異常Python開發與財務應用課件缺失值的處理方法1、查找 找到表格中每處空白單元格2、填充 把空白單元格填上3、刪除 刪掉空白單元格所在的行、或所在的列缺失值的處理方法1、查找 找到表格中每處空白單元格數據采集與清洗重復值處理05數據采集與清洗重復值處理05Python開發與財務應用課件重復值的概念顧名思義,重復值一般泛指數據中重復的數據行如何產生的?業務系統發生異常,重復生成數據數據采集出現意外情況,比如從紙質表格錄入數據到Excel,忘記自己錄到哪一行,個別記錄行出現多錄入一次的情況重復值的概念顧名思義,重復值一般泛指數據中重復的數據行知識點小結缺失值的概念:空白單元格處理方式:刪除缺

42、失值所在的行、所在的列重復值的概念:重復的行處理方式:刪除重復的行無論刪除缺失值或重復值,都需要考慮業務實際情況知識點小結缺失值的概念:空白單元格無論刪除缺失值或重復值,都數據采集與清洗異常值處理05數據采集與清洗異常值處理05Python開發與財務應用課件異常值檢測1、基于正態分布的檢測方法3準則 方法:處于3個標準差之外的數值為異常值2、基于中位數的四分位檢測箱型圖3、基于機器學習的檢測方法 如:聚類分析(散點圖)異常值檢測1、基于正態分布的檢測方法3準則異常值檢測箱型圖我們只需要直接應用看生成出來的圖是否有超出上下界的點即能檢測出異常值(也稱離群值)異常值檢測箱型圖我們只需要直接應用異常

43、值的處理方法1、將異常值刪除,比如一個人的年齡是異常值,那么就把這個人從數據中刪除 df_clear = df.drop(dfdf 列名判斷大于或小于某值.index)2、將異常值當作缺失值進行替換,用0或者平均值進行替換異常值的處理方法1、將異常值刪除,比如一個人的年齡是異常值,知識點小結異常值:不符合正態分布、不符合業務邏輯的數據異常值的影響: 1)影響我們正常的分析結果 2)有時是客觀事實的體現,具有預警作用異常值的檢測:利用中位數取代均值;以中位數為基礎的箱型圖知識點小結異常值:不符合正態分布、不符合業務邏輯的數據數據可視化Matplotlib初級應用06數據可視化Matplotlib

44、初級應用06什么是數據可視化? 數據可視化,是指將大型數據集中的數據以圖形圖像形式表示,并利用數據分析和開發工具發現其中未知信息的處理過程。什么是數據可視化? 數據可視化,是指將大型數據集Python開發與財務應用課件 Matplotlib是一個Python的第三方2D繪圖庫。通過Matplotlib,我們僅需要幾行代碼,便可生成繪圖。一般可繪制折線圖、散點圖、柱狀圖、餅圖、直方圖等等。什么是Matplotlib? Matplotlib是一個Python的第三方了解繪制步驟繪圖步驟:1. 創建一個圖紙(figure)2. 在圖紙上創建一個或多個繪圖(plotting)區域(坐標系/軸3. 在p

45、lotting區域上描繪點、線等了解繪制步驟繪圖步驟:按步驟繪制圖像# 繪制一個 4 * 3 的圖紙plt.figure(figsize=(4, 3)# 設定數值x = -1, 0, 1, 2y = -1, 0, 1, 2# 以折線圖展示plt.plot(x, y)# 坐標軸顯示范圍plt.xlim(-1, 2)plt.ylim(-1, 2)# 坐標軸名稱plt.xlabel(X)plt.ylabel(Y)按步驟繪制圖像# 繪制一個 4 * 3 的圖紙數據可視化Matplotlib高級應用06數據可視化Matplotlib高級應用06Python開發與財務應用課件導入excel數據# 讀取 x

46、ls 文件df = pd.read_excel(銷售信息.xls)# 展示文件前5行df.head()導入excel數據# 讀取 xls 文件根據提示繪制圖像# 繪制直方圖基本樣式#(內容,邊框顏色,圖例名稱)plt.hist(dfage, edgecolor=k, label=人數)# 顯示圖像名稱plt.title(年齡分布直方圖)# 顯示圖例plt.legend()根據提示繪制圖像# 繪制直方圖基本樣式將圖像一同顯示# 繪制畫布plt.figure(figsize=(16,12)# 繪制第一個圖像ax1 = plt.subplot(221)ax1 = plt.hist(dfage, ed

47、gecolor=k, label=人數)ax1 = plt.title(年齡分布直方圖)ax1 = plt.legend()將圖像一同顯示# 繪制畫布數據可視化Pyecharts初級應用06數據可視化Pyecharts初級應用06Pyecharts簡介Echarts是一個由百度開源的數據可視化框架,憑借著良好的交互性,精巧的圖表設計,得到了眾多開發者的認可。而Python是門富有表達力的語言,很適合用于數據處理。當數據分析遇上數據可視化時,pyecharts誕生了。Pyecharts簡介Echarts是一個由百度開源的數據繪制折線圖# 所需繪制圖形的樣式line = Line()# 創建X軸并

48、導入數據line.add_xaxis(x_data)# 創建Y軸并導入數據line.add_yaxis(線下銷售量, y1_data)# 將圖形在notebook中展示line.render_notebook()繪制折線圖# 所需繪制圖形的樣式繪制散點圖# 所需繪制圖形的樣式scatter = Scatter()# 創建X軸并導入數據scatter.add_xaxis(x_data)# 創建Y軸并導入數據scatter.add_yaxis(線上銷售量, y_data)# 將圖形在notebook中展示scatter.render_notebook()繪制散點圖# 所需繪制圖形的樣式數據可視化P

49、yecharts高級應用06數據可視化Pyecharts高級應用06給圖像添加標題# 創建標題bar.set_global_opts(title_opts = opts.TitleOpts(title = Bar-基本示例)# 將圖形在notebook中展示bar.render_notebook()給圖像添加標題# 創建標題將圖像一同顯示將圖像一同顯示Python財務會計應用工資計算07Python財務會計應用工資計算07應用財會知識職工薪酬職工工資、獎金、津貼和補貼職工福利費社會保險費工會經費和職工教育經費非貨幣性福利因解除與職工的勞動關系給予的補償住房公積金其他與獲得職工提供的服務相關的支

50、出應用財會知識職工薪酬職工工資、獎金、津貼和補貼職工福利費社會應用案例引入pandas模塊導入 數據計算應發工資計算社保及公積金計算應納稅所得額創建自定義函數計算應納稅額計算實發工資應用案例引入pandas模塊導入 數據計算應發工Python財務會計應用職工薪酬分析07Python財務會計應用職工薪酬分析07應用財會知識職工薪酬稅前扣除標準職工福利費不超過工資薪金總額14%的部分準予扣除職工教育經費不超過工資薪金總額8%的部分準予扣除,超過部分結轉以后年度扣除工會經費一般按工資總額的2%計提,不超過工資薪金總額2%的部分準予扣除應用財會知識職工薪酬職工福利費不超過工資薪金總額14%的部分應用案

51、例工費經費計算按部門分析職工薪酬按職工薪酬項目 分析職工薪酬應用案例工費經費計算按部門分析職工薪酬按職工薪酬項目 Python財務會計應用收入與發票核對07Python財務會計應用收入與發票核對07實現步驟條件與問題思路條件:收入記賬憑證、開票數據問題:收入與發票進行校對,查找差異查找核算系統的收入數據與開票系統的開票數據之間的差異時,我們可以先分別對兩個系統的數據按客戶進行匯總,再從客戶維度比較每一個客戶兩個系統之間數據的差異。實現步驟條件與問題思路條件:收入記賬憑證、開票數據查找核算系應用案例引入模塊導入數據選擇開票收入憑證選擇未作廢發票數據通過客戶維度比較數據差異差異額不為0的客戶輸出應

52、用案例引入模塊導入數據選擇開票收入憑證選擇未作廢發票數據通Python財務會計應用固定資產折舊07Python財務會計應用固定資產折舊07應用財會知識固定資產折舊折舊方法年限平均法、工作量法、雙倍余額遞減法、年數總和法折舊范圍應計提折舊的固定資產正常使用的固定資產因大修理而停用的固定資產未使用、不需用的固定資產不計提折舊的固定資產已提足折舊仍繼續使用的固定資產處于更新改造過程停止使用的固定資產應用財會知識固定資產折舊折舊方法年限平均法、工作量法、雙倍余應用案例引入模塊導入 數據計算已折舊月數計算剩余折舊月數計算當月折舊及轉出金額計算固定資產賬面價值應用案例引入模塊導入 數據計算已折舊月數計算剩

53、余Python管理會計應用貨幣時間價值08Python管理會計應用貨幣時間價值08應用案例飛魚公司打算投資一芯片項目,根據投資協議,各個階段投資情況如下:2021-01-01:投資20000萬元2021-05-01:投資50000萬元2021-08-12:投資30000萬元那么,若預計投資回報率為8%,到2022年01月01日時,飛魚公司該項目投資終值是多少?應用案例飛魚公司打算投資一芯片項目,根據投資協議,各個階段投應用案例引入pandas模塊變量定義基礎數據構造日期格式化計算間隔天數計算折線系數創建TVM函數計算終值應用案例引入pandas模塊變量定義基礎數據構造日期格式化計Python管

54、理會計應用項目投資決策08Python管理會計應用項目投資決策08應用案例卡卡公司計劃引入新生產線,項目總投資2000萬元,建設期2年,第1年年初投資1200萬元,第二年年初投資800萬元。項目投產后,預計每年年末銷售收入、付現成本及折舊與攤銷如表3-1所示。卡卡公司適用的企業所得稅稅率為15%,項目預期投資回報率為8%。請評估卡卡公司該投資計劃是否可行。應用案例卡卡公司計劃引入新生產線,項目總投資2000萬元,建應用案例引入pandas模塊導入 數據計算營業利潤計算所得稅費用計算稅后營業利潤計算現金凈流量計算折現系數計算凈現值應用案例引入pandas模塊導入 數據計算營業利Python管理會

55、計應用本量利分析08Python管理會計應用本量利分析08應用案例運動鞋市場售價大約為100元/雙,預估每雙運動鞋原材料、人工成本等變動成本為50元,預估房租、機器設備等固定成本為100000元/月,推算銷售量為3000雙/月。請問:運動鞋的單位邊際貢獻、月銷售額、變動成本、月邊際貢獻、月營業利潤分別是多少?應用案例運動鞋市場售價大約為100元/雙,預估每雙運動鞋原材應用案例引入pandas模塊定義本量利函數賦值計算應用案例引入pandas模塊定義本量利函數賦值計算Python管理會計應用標準成本差異分析08Python管理會計應用標準成本差異分析08應用管會知識標準成本構成直接材料標準成本單

56、位產品的標準用量材料的標準單價直接人工標準成本單位產品的標準工時小時標準工資率制造費用標準成本單位產品的標準工時等制造費用標準分配率標準成本差異價格差異實際用量(實際價格標準價格)用量差異(實際用量標準用量)標準價格應用管會知識標準成本構成直接材料標準成本單位產品的標準用量應用管會知識直接材料 成本差異 直接材料價格差異實際耗用量(實際單價標準單價) 直接材料數量差異(實際耗用量標準耗用量)標準單價直接人工 成本差異 直接人工工資率差異實際工時(實際工資率標準工資率) 直接人工效率差異(實際工時標準工時)標準工資率變動制造 費用差異 變動制造費用耗費差異實際消耗量(實際分配率標準分配率) 變動

57、制造費用效率差異(實際消耗量標準消耗量)標準分配率應用管會知識直接材料 成本差異 直接材料價格差異實應用案例案例:北京加旺制衣廠有限公司3月的預算損益與實際損益對比、單位產品標準成本數據與實際成本數據表如下圖。請進行標準成本差異分析(直接材料、直接人工、變動制造費用差異分析)。項目預算數實際數差異銷售量(件)500500單售額90000095000050000變動成本53100058830057300邊際貢獻369000361700-7300變動制造費用2345002434008900營業利潤134500118300-16200應用案例案例:北京加旺制衣廠有限公司3月的預算損益與實際損益應用案例引入pandas 模塊導入 數據計算實際與標準成本的差異計算價差和量差計算實際銷量的差異計算差異總額合計數應用案例引入pandas 模塊導入 數據計算實Python管理會計應用固定預算與彈性預算08Python管理會計應用固定預算與彈性預算08應用管會知識項目固定預算彈性預算概念以預算期內正常的、最可能實現的某一業務量水平為固定基礎,不考慮可能發生的變動的預算編制方法。企業在分析業務量與預算項目之間數量依存關系的基礎上,分別確定不同

溫馨提示

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

評論

0/150

提交評論