關於實例分析python的信息

本文目錄一覽:

python簡單的函數定義和用法實例

python簡單的函數定義和用法實例

這篇文章主要介紹了python簡單的函數定義和用法,實例分析了Python自定義函數及其使用方法,具有一定參考借鑒價值,需要的朋友可以參考下

具體分析如下:

這裡定義了一個溫度轉換的函數及其用法。

def convertTemp(temp, scale):

if scale == “c”:

return (temp – 32.0) * (5.0/9.0)

elif scale == “f”:

return temp * 9.0/5.0 + 32

temp = int(input(“Enter a temperature: “))

scale = input(“Enter the scale to convert to: “)

converted = convertTemp(temp, scale)

print(“The converted temp is: ” + str(converted))

希望本文所述對大家的Python程序設計有所幫助。

Python數據分析案例-藥店銷售數據分析

最近學習了Python數據分析的一些基礎知識,就找了一個藥品數據分析的小項目來練一下手。

數據分析的目的:

本篇文章中,假設以朝陽醫院2018年銷售數據為例,目的是了解朝陽醫院在2018年里的銷售情況,通過對朝陽區醫院的藥品銷售數據的分析,了解朝陽醫院的患者的月均消費次數,月均消費金額、客單價以及消費趨勢、需求量前幾位的藥品等。

數據分析基本過程包括:獲取數據、數據清洗、構建模型、數據可視化以及消費趨勢分析。

數據準備

數據是存在Excel中的,可以使用pandas的Excel文件讀取函數將數據讀取到內存中,這裡需要注意的是文件名和Excel中的sheet頁的名字。讀取完數據後可以對數據進行預覽和查看一些基本信息。

獲取數據:朝陽醫院2018年銷售數據.xlsx(非真實數據) 提取碼: 6xm2

導入原始數據

數據準備

數據是存在Excel中的,可以使用pandas的Excel文件讀取函數將數據讀取到內存中,這裡需要注意的是文件名和Excel中的sheet頁的名字。讀取完數據後可以對數據進行預覽和查看一些基本信息。

獲取數據:朝陽醫院2018年銷售數據.xlsx(非真實數據) 提取碼: 6xm2

導入原始數據

數據清洗

數據清洗過程包括:選擇子集、列名重命名、缺失數據處理、數據類型轉換、數據排序及異常值處理

(1)選擇子集

在我們獲取到的數據中,可能數據量非常龐大,並不是每一列都有價值都需要分析,這時候就需要從整個數據中選取合適的子集進行分析,這樣能從數據中獲取最大價值。在本次案例中不需要選取子集,暫時可以忽略這一步。

(2)列重命名

在數據分析過程中,有些列名和數據容易混淆或產生歧義,不利於數據分析,這時候需要把列名換成容易理解的名稱,可以採用rename函數實現:

(3)缺失值處理

獲取的數據中很有可能存在缺失值,通過查看基本信息可以推測「購葯時間」和「社保卡號」這兩列存在缺失值,如果不處理這些缺失值會干擾後面的數據分析結果。

缺失數據常用的處理方式為刪除含有缺失數據的記錄或者利用演算法去補全缺失數據。

在本次案例中為求方便,直接使用dropna函數刪除缺失數據,具體如下:

(4)數據類型轉換

在導入數據時為了防止導入不進來,會強制所有數據都是object類型,但實際數據分析過程中「銷售數量」,「應收金額」,「實收金額」,這些列需要浮點型(float)數據,「銷售時間」需要改成時間格式,因此需要對數據類型進行轉換。

可以使用astype()函數轉為浮點型數據:

在「銷售時間」這一列數據中存在星期這樣的數據,但在數據分析過程中不需要用到,因此要把銷售時間列中日期和星期使用split函數進行分割,分割後的時間,返回的是Series數據類型:

此時時間是沒有按順序排列的,所以還是需要排序一下,排序之後索引會被打亂,所以也需要重置一下索引。

其中by:表示按哪一列進行排序,ascending=True表示升序排列,ascending=False表示降序排列

先查看數據的描述統計信息

通過描述統計信息可以看到,「銷售數量」、「應收金額」、「實收金額」這三列數據的最小值出現了負數,這明顯不符合常理,數據中存在異常值的干擾,因此要對數據進一步處理,以排除異常值的影響:

數據清洗完成後,需要利用數據構建模型(就是計算相應的業務指標),並用可視化的方式呈現結果。

月均消費次數 = 總消費次數 / 月份數(同一天內,同一個人所有消費算作一次消費)

月均消費金額 = 總消費金額 / 月份數

客單價 = 總消費金額 / 總消費次數

從結果可以看出,每天消費總額差異較大,除了個別天出現比較大筆的消費,大部分人消費情況維持在1000-2000元以內。

接下來,我銷售時間先聚合再按月分組進行分析:

結果顯示,7月消費金額最少,這是因為7月份的數據不完整,所以不具參考價值。

1月、4月、5月和6月的月消費金額差異不大.

2月和3月的消費金額迅速降低,這可能是2月和3月處於春節期間,大部分人都回家過年的原因。

d. 分析藥品銷售情況

對「商品名稱」和「銷售數量」這兩列數據進行聚合為Series形式,方便後面統計,並按降序排序:

截取銷售數量最多的前十種藥品,並用條形圖展示結果:

結論:對於銷售量排在前幾位的藥品,醫院應該時刻關注,保證藥品不會短缺而影響患者。得到銷售數量最多的前十種藥品的信息,這些信息也會有助於加強醫院對藥房的管理。

每天的消費金額分布情況:一橫軸為時間,縱軸為實收金額畫散點圖。

結論: 從散點圖可以看出,每天消費金額在500以下的占絕大多數,個別天存在消費金額很大的情況。

/article

Python類的用法實例淺析

Python類的用法實例淺析

這篇文章主要介紹了Python類的用法,以實例形式簡單分析了Python中類的定義、構造函數及使用技巧,需要的朋友可以參考下

本文實例講述了Python類的用法。分享給大家供大家參考。具體如下:

先看一段代碼:

#!/usr/bin/env python

class Test:

def __init__(self,msg=”hello”):

self.wel=msg

print “init”

def go(self,name,do):

print self.wel+”go! “+name+” “+do

d=Test(“hi,”)

d.go(“naughty”,”fight”)

上面的代碼演示了:

1、構造函數以及帶參數(參數有默認值)構造函數

2、構造類實例

3、使用類實例調用類方法

希望本文所述對大家的Python程序設計有所幫助。

python避免死鎖方法實例分析

python避免死鎖方法實例分析

本文實例講述了python避免死鎖方法。分享給大家供大家參考。具體分析如下:

當兩個或者更多的線程在等待資源的時候就會產生死鎖,兩個線程相互等待。

在本文實例中 thread1 等待thread2釋放block , thread2等待thtead1釋放ablock,

避免死鎖的原則:

1. 一定要以一個固定的順序來取得鎖,這個列子中,意味著首先要取得alock, 然後再去block

2. 一定要按照與取得鎖相反的順序釋放鎖,這裡,應該先釋放block,然後是alock

import threading ,time

a = 5

alock = threading.Lock()

b = 5

block = threading.Lock()

def thread1calc():

print “thread1 acquiring lock a”

alock.acquire()

time.sleep(5)

print “thread1 acquiring lock b”

block.acquire()

a+=5

b+=5

print “thread1 releasing both locks”

block.release()

alock.release()

def thread2calc():

print “thread2 acquiring lock b”

block.acquire()

time.sleep(5)

print “thread2 acquiring lock a”

alock.acquire()

time.sleep(5)

a+=10

b+=10

print “thread2 releasing both locks”

block.release()

alock.release()

t = threading.Thread(target = thread1calc)

t.setDaemon(1)

t.start()

t = threading.Thread(target = thread2calc)

t.setDaemon(2)

t.start()

while 1:

time.sleep(300)

輸出:

thread1 acquiring lock a

thread2 acquiring lock b

thread1 acquiring lock b

thread2 acquiring lock a

希望本文所述對大家的Python程序設計有所幫助。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/279452.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-20 15:04
下一篇 2024-12-20 15:04

相關推薦

  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智慧、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • Python清華鏡像下載

    Python清華鏡像是一個高質量的Python開發資源鏡像站,提供了Python及其相關的開發工具、框架和文檔的下載服務。本文將從以下幾個方面對Python清華鏡像下載進行詳細的闡…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • 蝴蝶優化演算法Python版

    蝴蝶優化演算法是一種基於仿生學的優化演算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化演算法Python版…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29

發表回復

登錄後才能評論