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

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

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

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 三级黄色片在线观看 | 小草观看免费高清视频 | 久久一本岛在免费线观看2020 | 日本免费高清在线 | 青柠影视在线播放观看高清 | 爱福利视频一区二区 | 午夜人妻理论片天堂影院 | 国产视频久久久 | 热久久天天拍天天拍热久久2018 | 亚洲精品国产精品精 | 日韩在线视频二区 | 99九九国产精品免费视频 | 美女扒开屁股让我桶免费 | 99人中文字幕亚洲区 | 性xxx欧美| 99久久精品免费看国产四区 | 国产成人精品1024在线 | 9总探花新品牛仔背带裤 | 1024亚洲精品国产 | 精品国产麻豆AV无码 | 国产成人精品免费视频大全五级 | aⅴ免费视频 | 91噜噜噜噜色| 色狠狠成人综合网 | chinese军人@gay| 精品久久久久久无码人妻国产馆 | 国产a不卡片精品免费观看 国产aaa伦理片 | xxx88视频在线观看 | 欧美ay | 色多多影院 | 香蕉在线精品亚洲第一区 | 国产精品亚洲综合久久 | 日韩毛片大全免费高清 | 男人视频网站 | 放荡的女老板bd中文字幕 | bl双性受乖调教改造身体 | 皇上撞着太子妃的秘密小说 | 窝窝影院午夜色在线视频 | ai换脸杨颖被啪在线观看 | 亚洲AV蜜桃永久无码精品无码网 | 女bbwxxxx非洲黑人 |