一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Python Numpy實現計算矩陣的均值和標準差詳解

Python Numpy實現計算矩陣的均值和標準差詳解

2022-03-05 14:20葉庭云 Python

NumPy(Numerical Python)是Python的一種開源的數值計算擴展。這種工具可用來存儲和處理大型矩陣,比Python自身的嵌套列表結構要高效的多。本文主要介紹用NumPy實現計算矩陣的均值和標準差,感興趣的小伙伴可以了解一下

一、前言

CRITIC權重法是一種比熵權法和標準離差法更好的客觀賦權法:

  • 它是基于評價指標的對比強度和指標之間的沖突性來綜合衡量指標的客觀權重??紤]指標變異性大小的同時兼顧指標之間的相關性,并非數字越大就說明越重要,完全利用數據自身的客觀屬性進行科學評價。
  • 對比強度是指同一個指標各個評價方案之間取值差距的大小,以標準差的形式來表現。標準差越大,說明波動越大,即各方案之間的取值差距越大,權重會越高;

指標之間的沖突性,用相關系數進行表示,若兩個指標之間具有較強的正相關,說明其沖突性越小,權重會越低。

對于 CRITIC 權重法而言,在標準差一定時,指標間沖突性越小,權重也越??;沖突性越大,權重也越大;另外,當兩個指標間的正相關程度越大時,(相關系數越接近1),沖突性越小,這表明這兩個指標在評價方案的優劣上反映的信息有較大的相似性。

在用 Python 復現 CRITIC 權重法時,需要計算變異系數,以標準差的形式來表現,如下所示:

Python Numpy實現計算矩陣的均值和標準差詳解

Sj表示第 j 個指標的標準差,在 CRITIC 權重法中使用標準差來表示各指標的內取值的差異波動情況,標準差越大表示該指標的數值差異越大,越能放映出更多的信息,該指標本身的評價強度也就越強,應該給該指標分配更多的權重。

研究收集到湖南省某醫院 2011 年 5 個科室的數據,共有 6 個指標,當前希望通過已有數據分析各個指標的權重情況如何,便于醫院對各個指標設立權重進行后續的綜合評價,用于各個科室的綜合比較等。數據如下:

Python Numpy實現計算矩陣的均值和標準差詳解

 

二、詳解計算均值和標準差

初始化一個簡單的矩陣:

a = np.array([
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9]
  ])
a

分別計算整體的均值、每一列的均值和每一行的均值:

print("整體的均值:", np.mean(a))              # 整體的均值
print("每一列的均值:", np.mean(a, axis=0))    # 每一列的均值
print("每一行的均值:", np.mean(a, axis=1))    # 每一行的均值

分別計算整體的標準差、每一列的標準差和每一行的標準差:

print("整體的方差:", np.std(a))              # 整體的標準差
print("每一列的方差:", np.std(a, axis=0))    # 每一列的標準差
print("每一列的方差:", np.std(a, axis=1))    # 每一行的標準差

結果如下:

Python Numpy實現計算矩陣的均值和標準差詳解

 

三、實踐:CRITIC權重法計算變異系數

導入需要的依賴庫:

import numpy as np
import pandas as pd

提取數據:

df = pd.read_excel("./datas/result03.xlsx")
df

datas = df.iloc[:, 1:]
datas

如下所示:

Python Numpy實現計算矩陣的均值和標準差詳解

數據正向和逆向化處理:

X = datas.values
xmin = X.min(axis=0)
xmax = X.max(axis=0)
xmaxmin = xmax - xmin
n, m = X.shape
print(m, n)
for i in range(n):
  for j in range(m):
      if j == 5:
          X[i, j] = (xmax[j] - X[i, j]) / xmaxmin[j]   # 越小越好
      else:
          X[i, j] = (X[i, j] - xmin[j]) / xmaxmin[j]   # 越大越好

X = np.round(X, 5)
print(X)

如下所示:

Python Numpy實現計算矩陣的均值和標準差詳解

按列計算每個指標數據的標準差:

Python Numpy實現計算矩陣的均值和標準差詳解

發現結果與文檔不一致:

Python Numpy實現計算矩陣的均值和標準差詳解

原因:numpy默認是除以樣本數,求的是母體標準差;而除以樣本-1,得到的才是樣本標準差,這時設置參數 ddof=1 即可!

Python Numpy實現計算矩陣的均值和標準差詳解

如上圖所示,這下與文檔里的結果一致了!

以上就是Python Numpy實現計算矩陣的均值和標準差詳解的詳細內容,更多關于Python計算矩陣均值標準差的資料請關注服務器之家其它相關文章!

原文鏈接:https://blog.csdn.net/fyfugoyfa/article/details/121353033

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲风情无码免费视频 | 精品国产91高清在线观看 | 青草视频在线观看免费网站 | www视频免费看 | 湿好紧太硬了我太爽了 | 韩国日本在线观看 | chaopeng在线视频进入 | 91aaa免费免费国产在线观看 | 亚洲精品福利你懂 | 肉色欧美久久久久久久蜜桃 | 亚洲欧美日韩一区成人 | 无码射肉在线播放视频 | 俺来操 | 日韩一级欧美一级一级国产 | 狠狠操社区 | 亚洲国产欧美另类va在线观看 | 草莓在深夜释放自己软件 | 2019国内精品久久久久久 | 亚洲精品色婷婷在线影院麻豆 | 日本无卡码一区二区三区 | 男人天堂网www | 99热影院| 女同久久另类99精品国产 | 国产成人无精品久久久 | 办公室强行丝袜秘书啪啪 | 99视频一区 | 艾秋麻豆果冻传媒老狼仙踪林 | 9191视频| 日韩欧美国产综合精品 | 亚洲第一在线播放 | 草草视频免费在线观看 | 激情综合| 美女张开腿让我了一夜 | 国产 日韩 欧美视频二区 | julia ann一hd| 亚洲免费国产 | 美女被吸乳老师羞羞漫画 | 性bbbbwwbbbb| 色老板美国在线观看 | 国产成人小视频在线观看 | 6080伦理久久精品亚洲 |