Python開發(fā)與財務應用_第1頁
Python開發(fā)與財務應用_第2頁
Python開發(fā)與財務應用_第3頁
Python開發(fā)與財務應用_第4頁
Python開發(fā)與財務應用_第5頁
已閱讀5頁,還剩175頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

Python基礎Python概述01Python的應用方向爬蟲爬取網(wǎng)站數(shù)據(jù)分析圖片處理大勢所趨財務大數(shù)據(jù)智能財務RPA財務機器人Python基礎“HelloPython”——寫下我們第一個程序01輸出最簡單的Python程序,輸出一句話:“這是財務人的第一個Python程序”,如何實現(xiàn)呢?print函數(shù)()也可以接受多個文本,用逗號隔開。Python提供了print()函數(shù),可以非常簡單地實現(xiàn)這個功能。給程序加點佐料:注釋定義:一些說明性的語句,輔助理解或記憶(程序不做任何操作)。多行注釋以3個單引號(或雙引號)將文字包裹起來,寫法如下:單行注釋以#號開頭,有兩種寫法:①單獨占一行②寫在代碼后輸入想要更靈活地輸出我想要的東西怎么辦?比如上文中【固定資產(chǎn)原值】的金額不想寫死在輸出語句中,而想在程序執(zhí)行時再告訴它?Python提供了input()函數(shù),可以讓用戶輸入。金額輸入完成后,按下回車小結(jié)用print()輸出,input()輸入。#、'''或''''''后面可以寫注釋,多寫注釋能幫助我們理解程序。Python基礎語法變量與賦值02什么是變量變量按字面理解就是會變化的量money=100變量名稱賦值數(shù)據(jù)語法:變量=數(shù)據(jù)賦值規(guī)則:1.等號右邊有運算時,算出結(jié)果后再賦值給變量。 2.變量可以被多次賦值,并且每一次賦值會覆蓋原來的值。小貼士:“=”不代表數(shù)學上的相等變量的命名規(guī)則python規(guī)定了命名時要遵循以下四條原則:1.對大小寫敏感Andy≠andy2.第一個字符必須是字母表中字母或者下劃線3.只能包含字母,數(shù)字和下劃線4.不能使用某些特殊單詞小結(jié)現(xiàn)在,讓我們來回顧一下知識點:

●變量賦值:變量=數(shù)據(jù)●變量可以被多次賦值,每一次賦值替換原來的值?!褡兞康拿?guī)則:由字母,數(shù)字,下劃線組成,不能以數(shù)字開頭?!衩麜r見名知意且使用駝峰命名法。Python基礎語法基礎數(shù)據(jù)類型02財務數(shù)據(jù)如何存儲數(shù)據(jù)類型注意:不管是數(shù)字還是文字,在Python中都屬于數(shù)據(jù)●

數(shù)值:主要用于存儲金額數(shù)據(jù),一般是浮點數(shù)●

字符串:存儲科目名稱、公司名稱等等文本型數(shù)據(jù)●

列表:是一種有序的集合,比如通訊錄列表●

字典:多個有映射關(guān)系的數(shù)據(jù),可以存儲在一個字典里,比如科目及余額算術(shù)運算符運算符描述實例+加-兩個對象相加a+b輸出結(jié)果16-減-得到負數(shù)或是一個數(shù)減去另一個數(shù)a-b輸出結(jié)果-4*乘-兩個數(shù)相乘或是返回一個被重復若干次的字符串a(chǎn)*b輸出結(jié)果60/除-a除以bb/a輸出結(jié)果1.6666666666666667%取余-返回除法的余數(shù)b%a輸出結(jié)果4**乘方-返回a的b次冪a**b

輸出結(jié)果60466176假設變量a=6,b=10賦值運算符運算符描述實例=簡單的賦值運算符c=a+b將a+b的運算結(jié)果賦值為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**=冪賦值運算符c**=a等效于c=c**a假設變量a=6,b=10比較運算符運算符描述實例==等于-比較對象是否相等(a==b)返回False!=不等于-比較兩個對象是否不相等(a!=b)返回True>大于-返回a是否大于b(a>b)返回False<小于-返回a是否小于b(a<b)返回True>=大于等于-返回a是否大于等于b(a>=b)返回False<=小于等于-返回a是否小于等于b(a<=b)返回True所有比較運算符返回1表示True,返回0表示False假設變量a=6,b=10邏輯運算符假設變量a=True,b=False運算符邏輯表達式描述實例andaandb布爾"與"-只有a與b都為True時,aandb才返回True,否則返回False(aandb)返回Falseoraorb布爾"或"-如果a與b任意一個為True,aorb返回True,否則返回False(aorb)返回Truenotnota布爾"非"-如果a為True,返回False。如果a為False,返回Truenot(aandb)返回True運算優(yōu)先級如果一個公式里出現(xiàn)了多種運算符,運算符的計算是有先后順序的。下表對Python中運算符的優(yōu)先順序進行了總結(jié)(從最低優(yōu)先級到最高優(yōu)先級)。相同單元格內(nèi)的運算符從左至右(除了冪運算是從右至左)。運算符描述=賦值運算符or邏輯運算符或orand邏輯運算符與andnotx邏輯運算符非notin,notin,is,isnot,<,<=,>,>=,!==,==比較運算符,成員運算符+,-加和減*,/,//,%乘,除,整除,取余**乘方字符串的定義如果字符串內(nèi)部既包含'又包含

"

怎么辦?可以用轉(zhuǎn)義字符\來標識,比如:○\’表示’○\”表示”○\n表示換行符○\\表示反斜杠

字符串是以單引號

'

或雙引號"

括起來的任意文本字符串的常規(guī)操作字符串是一種字符的集合,集合中的每個字符都會有一個位置標識,我們稱為索引。字符串的常規(guī)操作假設變量a=“Hello”,b=“Python”運算符描述實例結(jié)果+字符串連接注意:只能將字符串與字符串拼接a+bHelloPython*重復輸出字符串a(chǎn)*2HelloHello[]通過索引獲取字符串中字符a[1]e[:]截取字符串中的一部分(或者叫“切片”)a[1:4]ell小結(jié)Python常見的基本數(shù)據(jù)類型有:整型(int),浮點型(float),字符串(str)。Python的運算優(yōu)先級口訣:“從左往右看,括號優(yōu)先算,先乘除后加減,再比較,再邏輯”。Python基礎語法高級數(shù)據(jù)類型02列表listDemo=["現(xiàn)金","銀行賬款","應收金額"]listDemo=[]listDemo=["現(xiàn)金","銀行賬款","應收金額"]listDemo=[1000,2000,3000]listDemo=[1000,"銀行賬款",True,[50,100,"應收金額"]]索引listDemo=["現(xiàn)金","銀行賬款","應收金額"]列表中的每個元素都會有一個位置標識,我們稱為索引。012索引對應索引的值listDemo[0]listDemo[1]listDemo[2]列表的計算操作符描述+拼接*重復[]獲取[:]截取列表的操作操作符描述list.append(obj)在列表末尾添加新的元素list.insert(index,obj)將元素插入列表中指定的位置list.extend(seq)在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)list.pop([index=-1])移除列表中的一個元素(默認最后一個元素),并且返回該元素的值list.remove(obj)移除列表中某個元素的第一個匹配項list.sort(cmp=None,key=None,reverse=Flase)對原列表進行排序(只能對相同類型的元素進行排序)字典的定義dictionary={“1001”:“庫存現(xiàn)金”,“1002”:“銀行存款”,“1012”:“其他貨幣資金”}我是一個元素我是元素的key我是元素的value字典的特性key是唯一的字典的操作操作符描述dict[key]訪問字典里的值dict[key]=修改值dict[key]=添加鍵值對deldict[key]刪除鍵值對deldict刪除字典dict.keys()以列表返回所有鍵dict.values()以列表返回所有值dict.items()返回所有鍵值對小結(jié)列表:是有序的,可以通過索引存?。恢悼梢灾貜妥值洌菏菬o序的,要通過鍵來獲取值;鍵是唯一的,值可重復

Python進階語法條件—分支語句的應用03if-else條件判斷語句語法格式if

條件

:條件成立要做的事情else:

不滿足條件時要做的事情

多條件判斷if-elif-else語句語法格式if

條件1:條件1成立要做的事情elif

條件2:條件2成立要做的事情elif

條件3:條件3成立要做的事情else:以上條件都不滿足時要做的事情小結(jié)Python用縮進來控制結(jié)構(gòu),代碼的縮進為4個空格if后面要有空格且判斷條件以冒號結(jié)尾elif、else必須和if一起使用if語句執(zhí)行是自上而下判斷的,如果滿足某個條件,把該條件對應的語句執(zhí)行后,就不會再執(zhí)行剩下的elif/elsePython進階語法循環(huán)—批量處理我們的數(shù)據(jù)03while循環(huán)語句語法格式while

條件

:

滿足條件時要執(zhí)行的代碼

for-in循環(huán)語句語法格式for

變量in

列表:#in表達從列表中依次取值,又稱為遍歷

代碼塊#滿足條件時要執(zhí)行的代碼如果沒有下一個元素break語句語句語法格式while

條件1:

代碼塊#滿足條件時要執(zhí)行的代碼

if

條件2:

break#當滿足條件2時終止循環(huán)for

變量in

列表:

代碼塊#滿足條件時要執(zhí)行的代碼

if

條件3:

break#當滿足條件3時終止循環(huán)

注意:break

只能用在循環(huán)中,除此以外不能單獨使用continue語句語句語法格式while

條件1:

if

條件2:

continue#當滿足條件2時跳過本次循環(huán),直接繼續(xù)下次循環(huán)。

代碼塊#滿足條件1時要執(zhí)行的代碼

for

變量

in

列表:

if

條件3:

continue#當滿足條件時跳過本次循環(huán),直接繼續(xù)下次循環(huán)。

代碼塊#滿足條件3時要執(zhí)行的代碼注意:contuinue只能用在循環(huán)中,除此以外不能單獨使用小結(jié)while循環(huán)是一種判斷型循環(huán)控制語句,只有當循環(huán)條件被打破時,循環(huán)才會終止for-in循環(huán)是一種遍歷型循環(huán),遍歷完序列中的每個元素后終止循環(huán)break語句是跳出循環(huán),continue是跳出本次循環(huán),進入下一次循環(huán)Python進階語法函數(shù)—讓我們的算法重復使用03type函數(shù)的調(diào)用過程:內(nèi)置函數(shù)Python提供了許多內(nèi)置函數(shù),比如print()、input()、round()等round函數(shù)的調(diào)用過程: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()filter()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()

小貼士實現(xiàn)的功能內(nèi)置函數(shù)無法幫你完成,你也可以自己創(chuàng)建函數(shù)自定義函數(shù)菜名(辣度,酸度,

麻度):

<做菜過程>

菜品#調(diào)用函數(shù)并傳遞參數(shù)pickledFrog(微辣,少酸,微麻)語法:def注意:函數(shù)名命名規(guī)范同變量的命名規(guī)范一致函數(shù)名稱pickledFrog

參數(shù)return返回值小結(jié)函數(shù)可以被重復調(diào)用內(nèi)置函數(shù)可以直接調(diào)用自定義函數(shù)使用def

進行函數(shù)定義注意代碼塊的縮進return語句的作用:結(jié)束函數(shù)調(diào)用、返回值函數(shù)的傳參方式:位置參數(shù)、關(guān)鍵字參數(shù)、默認參數(shù)Python進階語法模塊—讓已編寫的代碼可以直接使用03什么是模塊python中的每個python文件是一個模塊。每個python文件中,封裝類似功能的變量、函數(shù)、類型等等,可以被其他的python模塊通過import關(guān)鍵字引入以實現(xiàn)重復使用。模塊引入語句第一種方式: import+模塊名稱(如引用多個模塊,請用逗號(英文半角),

隔開)

示例:模塊引入語句第二種方式: from模塊名

import

方法名(或者*)示例一:示例二:別名使用方式:import

模塊名as

別名常見內(nèi)置模塊常見內(nèi)置模塊-random使用方式:①import

random

②random.函數(shù)名()常見方法:random()randint(起始值,結(jié)束值)randrange(起始值,結(jié)束值)常見內(nèi)置模塊-datetime使用方式:①import

datetime

②datetime.函數(shù)名()常見方法:datetime.datetime.now()datetime.date.today()財務常用第三方模塊小結(jié)模塊引入的2種方式:1)import

模塊名2)from

模塊名import

方法名或者*常用內(nèi)置模塊random和datetime常用第三方模塊Numpy、Matplotlib、PandasPandas基礎Pandas數(shù)據(jù)結(jié)構(gòu)04panel+data+analysisimportpandasaspdPandas是Python第三方庫,提供高性能易用數(shù)據(jù)類型和分析工具,常用于解決數(shù)據(jù)分析任務。代碼引入規(guī)則模塊名自定義簡稱pandas介紹pandas介紹Pandas包含兩種數(shù)據(jù)類型:DataFrame和Series。Series相當于excel中任意一列數(shù)據(jù)DataFrame相當于一張完整的Excel表格DataFrame數(shù)據(jù)結(jié)構(gòu)行索引數(shù)據(jù)數(shù)據(jù)結(jié)構(gòu)列索引DataFrame的定義定義規(guī)則:pd.DataFrame(數(shù)據(jù),columns=[列表],index=[列表])數(shù)據(jù):多行數(shù)據(jù)組成的列表列索引:列表,缺省默認0開始行索引:列表缺省默認0開始DataFrame的屬性屬性說明使用方法運行結(jié)果index獲取行索引(行編號)df.index列表[]columns獲取列索引(列的title名稱)df.columns列表[]values獲取數(shù)據(jù)內(nèi)容df.values列表[列表,列表,列表……]Series數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)索引數(shù)據(jù)Series的定義定義規(guī)則:pd.Series(數(shù)據(jù)列,索引列)數(shù)據(jù)列:可以由列表、字典等作為參數(shù)來創(chuàng)建索引列:可用列表自定義,必須與數(shù)據(jù)列的個數(shù)匹配。缺省默認從0開始小結(jié)知識點回顧:

●Series數(shù)據(jù)結(jié)構(gòu),包括索引列和數(shù)據(jù),相當于excel的一列數(shù)據(jù)。●DataFrame數(shù)據(jù)結(jié)構(gòu),包含行索引,列索引和數(shù)據(jù),相當于一頁excel的內(nèi)容?!馜ataFrame有三種屬性:index、columns、values分別可以獲取行號、列名、數(shù)據(jù)內(nèi)容。Pandas基礎Pandas文件操作04Pandas讀取Excel函數(shù)名稱及必要參數(shù):read_excel(io,sheet_name=0,index_col=None,converters=None)參數(shù)解釋實例io文件路徑'D:/python/學生信息.xlsx'或r'D:\python\學生信息.xlsx'sheet_name=0導入的sheet頁1.sheetname=0,默認導入第一頁,sheet序號從0開始2.sheetname='表名',也可以直接輸入表名3.sheetname='Sheet2',代表第2個sheet,S要大寫index_col=None索引號1.默認數(shù)據(jù)不帶行索引號,pandas自動分配從0開始的索引號2.index_col=0,以第一列作為行索引converters強制規(guī)定列數(shù)據(jù)類型converters={'列名':str,

'列名':

float}Pandas寫入Excel函數(shù)名稱及必要參數(shù):to_excel(excel_writer,sheet_name='Sheet1',index=None)參數(shù)解釋實例excel_writer文件路徑'D:/python/學生信息.xlsx'或r'D:\python\學生信息.xlsx'sheet_name='Sheet1'要寫入的excel的sheet頁名稱1.默認sheet名是'Sheet1'2.sheet_name='我想要的sheet名稱'index=True是否輸出索引indexindex=True,默認輸出index=None/False,不輸出小結(jié)Pandas讀取Excel用read_excel文件路徑要用“/”,若用“\”路徑前要加“r”sheet_name有三種指定方式Pandas寫入Excel用to_excelsheet_name有兩種指定方式多次寫入同一個文件都是覆蓋Pandas基礎數(shù)據(jù)讀取與計算04直接索引df[]直接索引,有以下幾種方式:獲取列選取一列

df['列名']選取多列

df[['列名1','列名2']]獲取行按位置選取連續(xù)的行

df[n:m]條件索引選取某列滿足一定條件的行:

df[(df['列1']==條件)]

條件索引,可以通過條件在被選擇列中篩選出結(jié)果為True的記錄,常見的形式有:選取多列滿足一定條件的行:

df[(df['列1']==條件1)&(df['列2']>=條件2)]注意:可以使用

&(并且)、|(或者)

操作符索引器原始索引&自定義索引在Pandas兩種數(shù)據(jù)結(jié)構(gòu)(Series和DataFrame)中,原始索引和自定義索引并存。自定義行名自定義列名1自定義列名2a張三25b李四28c王五2701012Pandas有2種索引應用于DataFrame,可以幫助你快速定位到你想提取的行或列l(wèi)oc索引器loc[index,column]

loc索引器內(nèi)只能使用自定義索引,如果數(shù)據(jù)中沒有自定義索引名,則索引名等于原始索引。根據(jù)index和column進行選取,常見形式有以下幾種:選取一行

df.loc['行']小結(jié)直接索引可獲取一列,多列,連續(xù)行的數(shù)據(jù)布爾索引可獲取列滿足條件的數(shù)據(jù),多條件要用括號括起來loc索引器可獲取一行,多行多列組合,列滿足條件,連續(xù)行列的數(shù)據(jù)范圍:df[n:m]前閉后開,df.loc[n:m]全閉合Pandas基礎數(shù)據(jù)連接與合并04數(shù)據(jù)合并-concat語法格式pd.concat(objs,axis=0,join='outer',join_axes=None,ignore_index=False,sort=True)參數(shù)解釋objs連接對象,例如[df1,df2…]axis軸向,0代表縱向連接,1代表橫向連接,默認是0join連接方式,共有’inner’,’outer’,默認是outerignore_index重建索引,默認False不重建,ignore_index=True,重建索引,重建后會把自定義索引也刪除sort默認為True,將合并的數(shù)據(jù)進行排序,設置為False可以提高性能數(shù)據(jù)連接-merge語法格式pd.merge(left,right,how='inner',on=None,left_on=None,right_on=None,sort=True)

參數(shù)功能left和right要連接的兩個不同的DataFrameHow連接方式,有l(wèi)eft、right、outer、inner,默認為inner內(nèi)連接On指的是用于連接的列索引名稱,必須同時存在于左右兩個DataFrame中,如果沒有指定且其他參數(shù)也沒有指定,則以兩個DataFrame列名交集作為連接鍵left_on左側(cè)DataFrame中用于連接鍵的列名,這個參數(shù)左右列名不同但代表的含義相同時非常的有用right_on右側(cè)DataFrame中用于連接鍵的列名Sort將合并的數(shù)據(jù)進行排序,默認為True,設置為False可以提高性能小結(jié)知識點回顧:

●concat可以實現(xiàn)橫向/縱向拼接merge只能橫向連接?!馽oncat可以操作多張表,merge只能操作兩張表。●concat只能單純的表拼接,merge可以過濾進行拼接。Pandas基礎數(shù)據(jù)透視04語法格式

參數(shù)解釋實例index=None數(shù)據(jù)透視表的行,必有index=['月']columns=None數(shù)據(jù)透視表的列columns=['年']values=None數(shù)據(jù)透視表的值,默認所有數(shù)字列values=['營業(yè)收入','凈利潤']aggfunc='mean'值計算方式默認是'mean'平均值,'sum',lenfill_value=NoneNaN用什么填充默認不填充,可以用0填充NaNfill_value=0margins=False是否匯總margins=True時匯總margins_name='All'匯總欄命名margins_name='Total'df.pivot_table(index=None,columns=None,values=None,aggfunc='mean', fill_value=None,margins=False,margins_name='All)

小結(jié)知識點回顧:

●pivot_table函數(shù)可實現(xiàn)數(shù)據(jù)透視分析?!?/p>

pivot_table函數(shù)使用必須要指定透視的行,即index?!裢敢暼粜枰獏R總必須傳參數(shù)margins=True。數(shù)據(jù)采集與清洗數(shù)據(jù)接口05案例講解案例:使用數(shù)據(jù)接口,采集上市公司盈利能力數(shù)據(jù)步驟一:了解接口規(guī)則步驟二:運行示范代碼步驟三:改寫代碼數(shù)據(jù)接口-知識點總結(jié)1、什么是數(shù)據(jù)接口?2、數(shù)據(jù)接口對比數(shù)據(jù)庫在數(shù)據(jù)采集上的優(yōu)勢(提供方整理過數(shù)據(jù),比較規(guī)范與完整)3、數(shù)據(jù)接口的使用方法1)查看接口的網(wǎng)站或文檔2)試運行示范代碼3)根據(jù)自己的需求改寫示范代碼4、改寫代碼的重點:數(shù)據(jù)接口的參數(shù)(☆☆☆重點)數(shù)據(jù)采集與清洗網(wǎng)頁爬蟲05爬蟲的概念如果你既沒有數(shù)據(jù)庫權(quán)限,又拿不到網(wǎng)絡數(shù)據(jù)接口,數(shù)據(jù)爬蟲可能是你最后的手段。優(yōu)勢:“所見即所得”,不需要數(shù)據(jù)擁有者提供權(quán)限(數(shù)據(jù)庫或接口)劣勢:數(shù)據(jù)有限(僅網(wǎng)頁上展示的)、網(wǎng)站反爬機制越來越完善案例講解案例:使用網(wǎng)頁爬蟲,從新浪財經(jīng)網(wǎng)站上采集上市公司利潤表數(shù)據(jù)步驟一:查看數(shù)據(jù)所在的網(wǎng)頁步驟二:編寫代碼爬取網(wǎng)頁內(nèi)容步驟三:根據(jù)爬取網(wǎng)頁內(nèi)容篩選出我們要的結(jié)果網(wǎng)頁爬蟲-知識點總結(jié)1、什么是網(wǎng)頁爬蟲?(沒有數(shù)據(jù)庫權(quán)限與數(shù)據(jù)接口時最后的手段)2、爬蟲的應用場景廣泛3、爬蟲不難,爬取網(wǎng)頁最少僅需要3行代碼4、爬蟲的難點與重點在于對網(wǎng)頁或網(wǎng)址的分析數(shù)據(jù)采集與清洗缺失值處理05數(shù)據(jù)清洗的意義采集到的數(shù)據(jù),可能存在各種各樣的情況:1)很多空白2)很多重復3)很“奇怪”——比如“身份證號”列上出現(xiàn)7位數(shù)數(shù)據(jù)可能存在:缺失值、重復值、異常值,將對后續(xù)的數(shù)據(jù)分析、預測產(chǎn)生影響知識點小結(jié)數(shù)據(jù)可能存在:缺失、重復、異常數(shù)據(jù)清洗之前,要對數(shù)據(jù)(表格)有個初步認識,大致的印象數(shù)據(jù)太大,Excel打不開,就用Python:1)head查看數(shù)據(jù)頭幾行,了解數(shù)據(jù)的列意義(維度)2)count查看數(shù)據(jù)有幾行,了解數(shù)據(jù)的量缺失值的處理方法1、查找

——找到表格中每處空白單元格2、填充

——把空白單元格填上3、刪除

——刪掉空白單元格所在的行、或所在的列數(shù)據(jù)采集與清洗重復值處理05重復值的概念顧名思義,重復值一般泛指數(shù)據(jù)中重復的數(shù)據(jù)行如何產(chǎn)生的?業(yè)務系統(tǒng)發(fā)生異常,重復生成數(shù)據(jù)數(shù)據(jù)采集出現(xiàn)意外情況,比如從紙質(zhì)表格錄入數(shù)據(jù)到Excel,忘記自己錄到哪一行,個別記錄行出現(xiàn)多錄入一次的情況知識點小結(jié)缺失值的概念:空白單元格處理方式:刪除缺失值所在的行、所在的列重復值的概念:重復的行處理方式:刪除重復的行無論刪除缺失值或重復值,都需要考慮業(yè)務實際情況數(shù)據(jù)采集與清洗異常值處理05異常值檢測1、基于正態(tài)分布的檢測方法——3σ準則方法:處于3個標準差之外的數(shù)值為異常值2、基于中位數(shù)的四分位檢測——箱型圖3、基于機器學習的檢測方法如:聚類分析(散點圖)異常值檢測——箱型圖我們只需要直接應用看生成出來的圖是否有超出上下界的點即能檢測出異常值(也稱離群值)異常值的處理方法1、將異常值刪除,比如一個人的年齡是異常值,那么就把這個人從數(shù)據(jù)中刪除df_clear=df.drop(df[df[‘列名’]判斷大于或小于某值].index)2、將異常值當作缺失值進行替換,用0或者平均值進行替換知識點小結(jié)異常值:不符合正態(tài)分布、不符合業(yè)務邏輯的數(shù)據(jù)異常值的影響:1)影響我們正常的分析結(jié)果2)有時是客觀事實的體現(xiàn),具有預警作用異常值的檢測:利用中位數(shù)取代均值;以中位數(shù)為基礎的箱型圖數(shù)據(jù)可視化Matplotlib初級應用06什么是數(shù)據(jù)可視化?

數(shù)據(jù)可視化,是指將大型數(shù)據(jù)集中的數(shù)據(jù)以圖形圖像形式表示,并利用數(shù)據(jù)分析和開發(fā)工具發(fā)現(xiàn)其中未知信息的處理過程。

Matplotlib是一個Python的第三方2D繪圖庫。通過Matplotlib,我們僅需要幾行代碼,便可生成繪圖。一般可繪制折線圖、散點圖、柱狀圖、餅圖、直方圖等等。什么是Matplotlib?了解繪制步驟繪圖步驟:1.創(chuàng)建一個圖紙(figure)2.在圖紙上創(chuàng)建一個或多個繪圖(plotting)區(qū)域(坐標系/軸3.在plotting區(qū)域上描繪點、線等按步驟繪制圖像#繪制一個4*3的圖紙plt.figure(figsize=(4,3))#設定數(shù)值x=[-1,0,1,2]y=[-1,0,1,2]#以折線圖展示plt.plot(x,y)#坐標軸顯示范圍plt.xlim((-1,2))plt.ylim((-1,2))#坐標軸名稱plt.xlabel('X')plt.ylabel('Y')數(shù)據(jù)可視化Matplotlib高級應用06導入excel數(shù)據(jù)#讀取xls文件df=pd.read_excel('銷售信息.xls')#展示文件前5行df.head()根據(jù)提示繪制圖像#繪制直方圖基本樣式#(內(nèi)容,邊框顏色,圖例名稱)plt.hist(df['age'],edgecolor='k',label='人數(shù)')#顯示圖像名稱plt.title('年齡分布直方圖')#顯示圖例plt.legend()將圖像一同顯示#繪制畫布plt.figure(figsize=(16,12))#繪制第一個圖像ax1=plt.subplot(221)ax1=plt.hist(df['age'],edgecolor='k',label='人數(shù)')ax1=plt.title('年齡分布直方圖')ax1=plt.legend()數(shù)據(jù)可視化Pyecharts初級應用06Pyecharts簡介Echarts

是一個由百度開源的數(shù)據(jù)可視化框架,憑借著良好的交互性,精巧的圖表設計,得到了眾多開發(fā)者的認可。而

Python

是門富有表達力的語言,很適合用于數(shù)據(jù)處理。當數(shù)據(jù)分析遇上數(shù)據(jù)可視化時,pyecharts

誕生了。繪制折線圖#所需繪制圖形的樣式line=Line()#創(chuàng)建X軸并導入數(shù)據(jù)line.add_xaxis(x_data)#創(chuàng)建Y軸并導入數(shù)據(jù)line.add_yaxis('線下銷售量',y1_data)#將圖形在notebook中展示line.render_notebook()繪制散點圖#所需繪制圖形的樣式scatter=Scatter()#創(chuàng)建X軸并導入數(shù)據(jù)scatter.add_xaxis(x_data)#創(chuàng)建Y軸并導入數(shù)據(jù)scatter.add_yaxis('線上銷售量',y_data)#將圖形在notebook中展示scatter.render_notebook()數(shù)據(jù)可視化Pyecharts高級應用06給圖像添加標題#創(chuàng)建標題bar.set_global_opts(title_opts=opts.TitleOpts(title='Bar-基本示例'))#將圖形在notebook中展示bar.render_notebook()將圖像一同顯示Python財務會計應用工資計算07應用財會知識職工薪酬職工工資、獎金、津貼和補貼職工福利費社會保險費工會經(jīng)費和職工教育經(jīng)費非貨幣性福利因解除與職工的勞動關(guān)系給予的補償住房公積金其他與獲得職工提供的服務相關(guān)的支出應用案例引入pandas模塊導入數(shù)據(jù)計算應發(fā)工資計算社保及公積金計算應納稅所得額創(chuàng)建自定義函數(shù)計算應納稅額計算實發(fā)工資Python財務會計應用職工薪酬分析07應用財會知識職工薪酬稅前扣除標準職工福利費不超過工資薪金總額14%的部分準予扣除職工教育經(jīng)費不超過工資薪金總額8%的部分準予扣除,超過部分結(jié)轉(zhuǎn)以后年度扣除工會經(jīng)費一般按工資總額的2%計提,不超過工資薪金總額2%的部分準予扣除應用案例工費經(jīng)費計算按部門分析職工薪酬按職工薪酬項目

分析職工薪酬P(guān)ython財務會計應用收入與發(fā)票核對07實現(xiàn)步驟條件與問題思路條件:收入記賬憑證、開票數(shù)據(jù)問題:收入與發(fā)票進行校對,查找差異查找核算系統(tǒng)的收入數(shù)據(jù)與開票系統(tǒng)的開票數(shù)據(jù)之間的差異時,我們可以先分別對兩個系統(tǒng)的數(shù)據(jù)按客戶進行匯總,再從客戶維度比較每一個客戶兩個系統(tǒng)之間數(shù)據(jù)的差異。應用案例引入模塊導入數(shù)據(jù)選擇開票收入憑證選擇未作廢發(fā)票數(shù)據(jù)通過客戶維度比較數(shù)據(jù)差異差異額不為0的客戶輸出Python財務會計應用固定資產(chǎn)折舊07應用財會知識固定資產(chǎn)折舊折舊方法年限平均法、工作量法、雙倍余額遞減法、年數(shù)總和法折舊范圍應計提折舊的固定資產(chǎn)正常使用的固定資產(chǎn)因大修理而停用的固定資產(chǎn)未使用、不需用的固定資產(chǎn)不計提折舊的固定資產(chǎn)已提足折舊仍繼續(xù)使用的固定資產(chǎn)處于更新改造過程停止使用的固定資產(chǎn)應用案例引入模塊導入數(shù)據(jù)計算已折舊月數(shù)計算剩余折舊月數(shù)計算當月折舊及轉(zhuǎn)出金額計算固定資產(chǎn)賬面價值Python管理會計應用貨幣時間價值08應用案例飛魚公司打算投資一芯片項目,根據(jù)投資協(xié)議,各個階段投資情況如下:2021-01-01:投資20000萬元2021-05-01:投資50000萬元2021-08-12:投資30000萬元那么,若預計投資回報率為8%,到2022年01月01日時,飛魚公司該項目投資終值是多少?應用案例引入pandas模塊變量定義基礎數(shù)據(jù)構(gòu)造日期格式化計算間隔天數(shù)計算折線系數(shù)創(chuàng)建TVM函數(shù)計算終值Python管理會計應用項目投資決策08應用案例卡卡公司計劃引入新生產(chǎn)線,項目總投資2000萬元,建設期2年,第1年年初投資1200萬元,第二年年初投資800萬元。項目投產(chǎn)后,預計每年年末銷售收入、付現(xiàn)成本及折舊與攤銷如表3-1所示??ü具m用的企業(yè)所得稅稅率為15%,項目預期投資回報率為8%。請評估卡卡公司該投資計劃是否可行。應用案例引入pandas模塊導入數(shù)據(jù)計算營業(yè)利潤計算所得稅費用計算稅后營業(yè)利潤計算現(xiàn)金凈流量計算折現(xiàn)系數(shù)計算凈現(xiàn)值Python管理會計應用本量利分析08應用案例運動鞋市場售價大約為100元/雙,預估每雙運動鞋原材料、人工成本等變動成本為50元,預估房租、機器設備等固定成本為100000元/月,推算銷售量為3000雙/月。請問:運動鞋的單位邊際貢獻、月銷售額、變動成本、月邊際貢獻、月營業(yè)利潤分別是多少?應用案例引入pandas模塊定義本量利函數(shù)賦值計算Python管理會計應用標準成本差異分析08應用管會知識標準成本構(gòu)成直接材料標準成本單位產(chǎn)品的標準用量×材料的標準單價直接人工標準成本單位產(chǎn)品的標準工時×小時標準工資率制造費用標準成本單位產(chǎn)品的標準工時等×制造費用標準分配率標準成本差異價格差異實際用量×(實際價格-標準價格)用量差異(實際用量-標準用量)×標準價格應用管會知識直接材料成本差異

直接材料價格差異=實際耗用量×(實際單價-標準單價)

直接材料數(shù)量差異=(實際耗用量-標準耗用量)×標準單價

直接人工成本差異

直接人工工資率差異=實際工時×(實際工資率-標準工資率)

直接人工效率差異=(實際工時-標準工時)×標準工資率

變動制造費用差異

變動制造費用耗費差異=實際消耗量×(實際分配率-標準分配率)

變動制造費用效率差異=(實際消耗量-標準消耗量)×標準分配率應用案例案例:北京加旺制衣廠有限公司3月的預算損益與實際損益對比、單位產(chǎn)品標準成本數(shù)據(jù)與實際成本數(shù)據(jù)表如下圖。請進行標準成本差異分析(直接材料、直接人工、變動制造費用差異分析)。項目預算數(shù)實際數(shù)差異銷售量(件)500500—單售額90000095000050000變動成本53100058830057300邊際貢獻369000361700-7300變動制造費用2345002434008900營業(yè)利潤134500118300-16200應用案例引入pan

溫馨提示

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

評論

0/150

提交評論