国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Python在數(shù)學(xué)建模中的應(yīng)用初探

2024-01-29 12:30:48王海龍劉飄飄王易平
關(guān)鍵詞:數(shù)據(jù)量出租車建模

王海龍 劉飄飄 王易平

(1邯鄲職業(yè)技術(shù)學(xué)院,河北 邯鄲 056005;2吉利學(xué)院,成都 641423)

作為開源免費(fèi)語言,Python語言簡(jiǎn)潔易讀、擴(kuò)展性強(qiáng),在科學(xué)計(jì)算、數(shù)據(jù)處理等方面功能強(qiáng)大,可以幫助我們解決各類數(shù)學(xué)問題,在數(shù)學(xué)建模中具有廣泛的應(yīng)用,逐漸成為數(shù)學(xué)建模中的常用編程語言。Python提供了數(shù)學(xué)建模所需的豐富的工具和庫,比如NumPy、SciPy、Matplotlib、Pandas、Pulp 等,下面通過一些實(shí)際問題來探討它們?cè)跀?shù)學(xué)建模中的具體應(yīng)用。

一、Python在解決線性規(guī)劃問題中的應(yīng)用

線性規(guī)劃主要是利用數(shù)學(xué)方法使資源的運(yùn)用最優(yōu)化,是數(shù)學(xué)建模問題中的常見類型。首先看一個(gè)典型題目:有一項(xiàng)工作需譯成英、日、德、俄四種文字,現(xiàn)有甲、乙、丙、丁四人,他們翻譯成不同語種的所需時(shí)間見表1,問如何安排人員最省時(shí)間?

表1 四人翻譯不同語種的所需時(shí)間(單位:h)

由于每個(gè)人僅參與一項(xiàng)翻譯工作,每個(gè)語種翻譯工作僅有1人完成,因此約束條件為:

這個(gè)問題可以運(yùn)用Python語言的Pulp模塊來求解。Pulp模塊不是Python的默認(rèn)安裝模塊,需要使用pip安裝。具體解題步驟如下:

1.定義問題為L(zhǎng)P,求最小值(LpMinimize):

2.定義變量x,參數(shù)cat="Binary"定義變量類型為0-1型:

3.定義目標(biāo)函數(shù),格式為“問題名+=目標(biāo)函數(shù)式”:

4.添加約束條件,格式為“問題名+=約束條件表達(dá)式”:

5.求解,solve()為求解函數(shù):

6.輸出,LP.objective是目標(biāo)函數(shù)值的最優(yōu)解,LP.variables為每個(gè)變量的最優(yōu)解:

在以上解題中,使用了Python 語言的pulp 模塊,輸出時(shí)還使用了pandas 和numpy 模塊,因此需要在程序中先使用import來導(dǎo)入這三個(gè)模塊。

NumPy 支持大量的維度數(shù)組與矩陣運(yùn)算,Pandas 的函數(shù)和方法可以快速處理數(shù)據(jù),這兩個(gè)模塊都可以在數(shù)學(xué)建模中發(fā)揮重要作用。上面題目如果數(shù)據(jù)量增加,可以通過pandas的read_excel函數(shù)來讀取,并可將計(jì)算結(jié)果再輸出到excel表格中。

二、Python在數(shù)據(jù)處理和分析中的應(yīng)用

數(shù)學(xué)建模就是要用數(shù)學(xué)的辦法來優(yōu)化和解決實(shí)際問題,題目通常源于生產(chǎn)生活,原始數(shù)據(jù)樣本采集自各個(gè)領(lǐng)域,一般數(shù)據(jù)量較大,且數(shù)據(jù)可能存在缺失、異常等情況,因此數(shù)據(jù)的處理和分析對(duì)數(shù)學(xué)建模非常重要。Python擁有的強(qiáng)大數(shù)據(jù)處理和分析能力,在數(shù)據(jù)讀取與預(yù)處理、數(shù)據(jù)分析、數(shù)據(jù)可視化等方面都可以發(fā)揮重要作用。

2021 年全國(guó)大學(xué)生數(shù)學(xué)建模競(jìng)賽E 題:中藥材的鑒別,題目附件1 給出的數(shù)據(jù)量為425(藥材的編號(hào))×3348(光譜的波數(shù)),如何分析和處理這上百萬的數(shù)據(jù)是解決問題的基礎(chǔ)。讀取數(shù)據(jù):由于Python讀取csv文件速度較快,可以先將所給數(shù)據(jù)另存為csv格式,再使用pandas的read_csv函數(shù)導(dǎo)入。數(shù)據(jù)處理:導(dǎo)入的數(shù)據(jù)結(jié)構(gòu)為DataFrame,可以使用眾多函數(shù)處理數(shù)據(jù),使用columns、index、values函數(shù)輸出列索引、行索引、值,使用describe函數(shù)查看數(shù)據(jù)的統(tǒng)計(jì)性信息,還可以通過loc、iloc函數(shù)獲取行或列的數(shù)據(jù),Concat函數(shù)可用于拼接數(shù)據(jù)等等。繪制圖像:Matplotlib庫的pyplot函數(shù)可方便地繪制圖像。使用Python將附件1給出的數(shù)據(jù)繪制圖像如圖1所示:

圖1 各波段下藥材吸光度圖

2022 年全國(guó)大學(xué)生數(shù)學(xué)建模競(jìng)賽E 題:小批量物料的生產(chǎn)安排,題目需首先計(jì)算各種物料需求出現(xiàn)的頻次、需求數(shù)量、平均價(jià)格等??梢允褂肞andas 的分組函數(shù)groupby 和聚合函數(shù)agg 很快求出:首先使用pandas的read_csv 函數(shù)讀取附件的csv文件,將數(shù)據(jù)存儲(chǔ)為DataFrame 對(duì)象;然后使用groupby 函數(shù)對(duì)數(shù)據(jù)按“物料編碼”列分組,并使用聚合函數(shù)agg 對(duì)“物料編碼”列計(jì)數(shù),對(duì)“需求量”列求和,對(duì)“銷售單價(jià)”列求平均值;最后使用pandas的to_csv()函數(shù)將結(jié)果導(dǎo)出。導(dǎo)出數(shù)據(jù)表如圖2所示(部分截圖):

圖2 物料的頻次、需求數(shù)量、平均價(jià)格表

三、Python在采集網(wǎng)絡(luò)信息中的應(yīng)用

數(shù)學(xué)建模有些題目需要參賽者自己采集網(wǎng)絡(luò)數(shù)據(jù)。2015 年全國(guó)大學(xué)生數(shù)學(xué)建模競(jìng)賽B 題:“互聯(lián)網(wǎng)+”時(shí)代的出租車資源配置,就要求參賽者自己搜集相關(guān)數(shù)據(jù),需要查找典型城市的出租車情況(數(shù)量、分布等)以及運(yùn)營(yíng)情況(高峰期、空載率等),從而得出出租車資源的供求關(guān)系。2019年全國(guó)大學(xué)生數(shù)學(xué)建模競(jìng)賽C題:機(jī)場(chǎng)的出租車問題,就需要參賽者自己收集國(guó)內(nèi)某一機(jī)場(chǎng)數(shù)據(jù)(如機(jī)場(chǎng)航班架次等)及其所在城市出租車的相關(guān)數(shù)據(jù)(如出租車數(shù)量等),從而研究機(jī)場(chǎng)乘客數(shù)量與出租車流量的關(guān)系。

Python語言功能強(qiáng)大,可以方便地獲取大量網(wǎng)絡(luò)數(shù)據(jù)。Python的requests庫可爬取網(wǎng)頁數(shù)據(jù),Beautiful-Soup庫可解析網(wǎng)頁,正則表達(dá)式re 庫可檢索網(wǎng)頁,獲得需要的信息。比如在當(dāng)當(dāng)網(wǎng)搜索數(shù)學(xué)建模類圖書,檢索得到100個(gè)頁面,每個(gè)頁面有50本圖書的信息,利用Python編寫爬蟲程序,可以很快爬取這些圖書的名稱和價(jià)格等信息,并導(dǎo)出到excel表格中進(jìn)行查看處理。導(dǎo)出數(shù)據(jù)表如圖3所示(部分截圖):

圖3 爬取的當(dāng)當(dāng)網(wǎng)數(shù)學(xué)建模類圖書表

除此之外還可以通過開源大數(shù)據(jù)平臺(tái)來獲取數(shù)據(jù),比如利用Python的財(cái)經(jīng)數(shù)據(jù)接口包TuShare來采集股票等金融數(shù)據(jù),然后進(jìn)行數(shù)據(jù)分析和可視化等操作。

猜你喜歡
數(shù)據(jù)量出租車建模
基于大數(shù)據(jù)量的初至層析成像算法優(yōu)化
計(jì)算Lyapunov指數(shù)的模糊C均值聚類小數(shù)據(jù)量法
聯(lián)想等效,拓展建?!浴皫щ娦∏蛟诘刃?chǎng)中做圓周運(yùn)動(dòng)”為例
乘坐出租車
高刷新率不容易顯示器需求與接口標(biāo)準(zhǔn)帶寬
寬帶信號(hào)采集與大數(shù)據(jù)量傳輸系統(tǒng)設(shè)計(jì)與研究
電子制作(2019年13期)2020-01-14 03:15:18
基于PSS/E的風(fēng)電場(chǎng)建模與動(dòng)態(tài)分析
電子制作(2018年17期)2018-09-28 01:56:44
不對(duì)稱半橋變換器的建模與仿真
憑什么
開往春天的深夜出租車
山東青年(2016年1期)2016-02-28 14:25:29
勐海县| 界首市| 通江县| 巧家县| 建宁县| 思茅市| 偏关县| 福清市| 南城县| 贵德县| 锦州市| 鹤岗市| 正镶白旗| 黄冈市| 凤冈县| 宜章县| 普兰县| 沙坪坝区| 定安县| 临武县| 永丰县| 泰州市| 南开区| 陕西省| 闽清县| 无极县| 巫溪县| 尚志市| 千阳县| 宿松县| 兴义市| 永嘉县| 黔江区| 瓮安县| 武山县| 连云港市| 北碚区| 定安县| 于都县| 清原| 蓝田县|