日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

excel loc() python_总结:像Excel一样使用python进行数据分析

發(fā)布時(shí)間:2023/12/19 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 excel loc() python_总结:像Excel一样使用python进行数据分析 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Excel是數(shù)據(jù)分析中最常用的工具,本篇文章通過python與excel的功能對(duì)比介紹如何使用python通過函數(shù)式編程完成excel中的數(shù)據(jù)處理及分析工作。在Python中pandas庫(kù)用于數(shù)據(jù)處理,通過這些函數(shù)介紹如何通過python完成數(shù)據(jù)分析中導(dǎo)入數(shù)據(jù),理解數(shù)據(jù),清洗數(shù)據(jù),模型構(gòu)建和一部分KPI指標(biāo)如何實(shí)現(xiàn)。

使用的數(shù)據(jù)是 朝陽(yáng)醫(yī)院2018年銷售數(shù)據(jù)

導(dǎo)入數(shù)據(jù)以及理解數(shù)據(jù)部分

導(dǎo)入excel

import pandas as pd

xls=pd.ExcelFile('G:xlsx文件朝陽(yáng)醫(yī)院2018年銷售數(shù)據(jù).xlsx')

salesdf=xls.parse('Sheet1')

Salesdf.head()

數(shù)據(jù)維度(行列)

shape可以查看該表中的行數(shù)和列數(shù)

查看數(shù)據(jù)格式

Dtypes是一個(gè)查看數(shù)據(jù)格式的函數(shù),可以一次性查看數(shù)據(jù)表中所有數(shù)據(jù)的格式,也可以指定一列來單獨(dú)查看。

指定一列查看:

查看統(tǒng)計(jì)信息

使用Describe函數(shù)可以查看統(tǒng)計(jì)信息計(jì)數(shù),平均值,標(biāo)準(zhǔn)差,最小值,四分位數(shù),中位數(shù),最大值。

查看列名稱

使用columns函數(shù)查看列名稱


數(shù)據(jù)清洗部分

刪除缺失值

Python中處理空值的方法比較靈活,可以使用 Dropna函數(shù)用來刪除數(shù)據(jù)表中包含空值的數(shù)據(jù),也可以使用fillna函數(shù)對(duì)空值進(jìn)行填充。

使用fillna函數(shù)把空值用0填充

更改列名稱

Rename是更改列名稱的函數(shù),我們將來數(shù)據(jù)表中的應(yīng)收金額列更改為應(yīng)收金額(元)

salesdf=salesdf.rename(columns={'應(yīng)收金額':'應(yīng)收金額(元)'})

刪除重復(fù)值

使用drop_duplicates()刪除重復(fù)值

分列

sales_split=pd.DataFrame((x.split(' ') for x in salesdf['購(gòu)藥時(shí)間']),

index=salesdf.index,

columns=['日期','周幾'])

需要注意的是缺失值會(huì)被當(dāng)作浮點(diǎn)型 而split函數(shù)需要字符串類型,要先刪除缺失值

將完成分列后的數(shù)據(jù)表與原數(shù)據(jù)表進(jìn)行匹配

salesdf=pd.merge(salesdf,sales_split,right_index=True, left_index=True)

刪除列

使用drop刪除列,有以下等價(jià)的語(yǔ)法

DF= DF.drop('column_name', 1);

DF.drop('column_name',axis=1, inplace=True)

使用drop刪除了購(gòu)藥時(shí)間這一列。

修改日期格式

使用to_datetime函數(shù)進(jìn)行修改

salesdf.loc[:,'日期']=pd.to_datetime(salesdf.loc[:,'日期'],format='%Y-%m-%d',errors='coerce')

排序

使用sort_values進(jìn)行排序

By:按哪一列排序

ascending=True降序

ascending=Falses升序

salesdf=salesdf.sort_values(by='日期',ascending=True)

重命名行名

使用reset_index重命名行名

刪除異常值

由于銷量,應(yīng)收金額和實(shí)收金額不為負(fù),所以應(yīng)該清除異常值

使用查詢條件刪除了異常值


數(shù)據(jù)建模部分

數(shù)據(jù)篩選

#使用“與”條件進(jìn)行篩選

salesdf.loc[(salesdf['列名']=='數(shù)值')&(salesdf['列名']=='數(shù)值'),['列名1','列名2','列名3','列名4']]

#使用“或”條件進(jìn)行篩選

salesdf.loc[(salesdf['列名']=='數(shù)值')|(salesdf['列名']=='數(shù)值'),['列名1','列名2','列名3','列名4']]

在前面的代碼后增加price字段以及sum函數(shù),按篩選后的結(jié)果將price字段值進(jìn)行求和,相當(dāng)于excel中sumifs的功能。

還有一種篩選的方式是用query函數(shù)。下面是具體的代碼和篩選結(jié)果。

數(shù)據(jù)匯總

Excel的數(shù)據(jù)目錄下提供了“分類匯總”功能,可以按指定的字段和匯總方式對(duì)數(shù)據(jù)表進(jìn)行匯總。Python中通過Groupby函數(shù)完成相應(yīng)的操作,并可以支持多級(jí)分類匯總。

Groupby是進(jìn)行分類匯總的函數(shù),使用方法很簡(jiǎn)單,制定要分組的列名稱就可以,也可以同時(shí)制定多個(gè)列名稱,groupby按列名稱出現(xiàn)的順序進(jìn)行分組。同時(shí)要制定分組后的匯總方式,常見的是計(jì)數(shù)和求和兩種。

可以通過關(guān)聯(lián)的列進(jìn)行查詢,通過groupby函數(shù)計(jì)算出了商品的銷售次數(shù)。

計(jì)算幾個(gè)KPI指標(biāo):

1.月均消費(fèi)次數(shù)

刪除重復(fù)數(shù)據(jù)計(jì)算消費(fèi)總次數(shù)

設(shè)定好起始日期和結(jié)束日期

計(jì)算天數(shù),月份數(shù)。然后用所有消費(fèi)次數(shù)除以月份數(shù)可以得到月均消費(fèi)次數(shù)。

2.客單價(jià)

使用總消費(fèi)金額除以消費(fèi)次數(shù)得到客單價(jià)

3.月均消費(fèi)金額

使用總消費(fèi)金額除以消費(fèi)次數(shù)得到月均消費(fèi)金額

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的excel loc() python_总结:像Excel一样使用python进行数据分析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。