什么是灰色關聯分析
灰色關聯分析是指對一個系統發展變化態勢的定量描述和比較的方法,其基本思想是通過確定參考數據列和若干個比較數據列的幾何形狀相似程度來判斷其聯系是否緊密,它反映了曲線間的關聯程度。
通??梢赃\用此方法來分析各個因素對于結果的影響程度,也可以運用此方法解決隨時間變化的綜合評價類問題,其核心是按照一定規則確立隨時間變化的母序列,把各個評估對象隨時間的變化作為子序列,求各個子序列與母序列的相關程度,依照相關性大小得出結論。
灰色關聯分析的步驟
灰色關聯分析的具體計算步驟如下:
第一步:確定分析數列。
確定反映系統行為特征的參考數列和影響系統行為的比較數列。反映系統行為特征的數據序列,稱為參考數列。影響系統行為的因素組成的數據序列,稱比較數列。
(1)參考數列(又稱母序列)為
(2)比較數列(又稱子序列)為
第二步,變量的無量綱化
由于系統中各因素列中的數據可能因量綱不同,不便于比較或在比較時難以得到正確的結論。因此在進行灰色關聯度分析時,一般都要進行數據的無量綱化處理。主要有一下兩種方法
(1)初值化處理:
(2)均值化處理:
其中k kk 對應時間段,i ii 對應比較數列中的一行(即一個特征)
第三步,計算關聯系數
ρ∈(0,∞),稱為分辨系數。ρ越小,分辨力越大,一般ρ的取值區間為(0,1) (0,1)(0,1),具體取值可視情況而定。當ρ≤0.5463時,分辨力最好,通常取ρ=0.5。
第四步,計算關聯度
因為關聯系數是比較數列與參考數列在各個時刻(即曲線中的各點)的關聯程度值,所以它的數不止一個,而信息過于分散不便于進行整體性比較。因此有必要將各個時刻(即曲線中的各點)的關聯系數集中為一個值,即求其平均值,作為比較數列與參考數列間關聯程度的數量表示,關聯度ri riri公式如下:
第五步,關聯度排序
關聯度按大小排序,如果r1
在算出Xi(k)序列與Y(k)序列的關聯系數后,計算各類關聯系數的平均值,平均值ri就稱為Y(k)與Xi(k)的關聯度。
灰色關聯分析的實例
下表為某地區國內生產總值的統計數據(以百萬元計),問該地區從2000年到2005年之間哪一種產業對GDP總量影響最大。
步驟1:確立母序列
在此需要分別將三種產業與國內生產總值比較計算其關聯程度,故母序列為國內生產總值。若是解決綜合評價問題時則母序列可能需要自己生成,通常選定每個指標或時間段中所有子序列中的最佳值組成的新序列為母序列。
步驟2:無量綱化處理
在此采用均值化法,即將各個序列每年的統計值與整條序列的均值作比值,可以得到如下結果:
步驟3:計算每個子序列中各項參數與母序列對應參數的關聯系數
其中ξi(k) 表示第i個子序列的第k個參數與母序列(即0序列)的第k個參數的關聯系數,$\rho\ 為分辨系數取值范圍在 為分辨系數取值范圍在為分辨系數取值范圍在[0,1]$,其取值越小求得的關聯系數之間的差異性越顯著,在此取為0.5進行計算可得到如下結果:
步驟4:計算關聯度
用公式,
可以得到r1=0.5088,r2=0.6248,r3=0.7577通過比較三個子序列與母序列的關聯度可以得出結論:該地區在2000年到2005年期間的國內生產總值受到第三產業的影響最大。
灰色關聯分析matlab的實現
clc;
close;
clear all;
x=xlsread('data.xlsx');
x=x(:,2:end)';
column_num=size(x,2);
index_num=size(x,1);
% 1、數據均值化處理
x_mean=mean(x,2);
for i = 1:index_num
x(i,:) = x(i,:)/x_mean(i,1);
end
% 2、提取參考隊列和比較隊列
ck=x(1,:)
cp=x(2:end,:)
cp_index_num=size(cp,1);
%比較隊列與參考隊列相減
for j = 1:cp_index_num
t(j,:)=cp(j,:)-ck;
end
%求最大差和最小差
mmax=max(max(abs(t)))
mmin=min(min(abs(t)))
rho=0.5;
%3、求關聯系數
ksi=((mmin+rho*mmax)./(abs(t)+rho*mmax))
%4、求關聯度
ksi_column_num=size(ksi,2);
r=sum(ksi,2)/ksi_column_num;
%5、關聯度排序,得到結果r3>r2>r1
[rs,rind]=sort(r,'descend');
運行結果:
灰色關聯分析python的實現
import pandas as pd
x=pd.read_excel('data.xlsx')
x=x.iloc[:,1:].T
# 1、數據均值化處理
x_mean=x.mean(axis=1)
for i in range(x.index.size):
x.iloc[i,:] = x.iloc[i,:]/x_mean[i]
# 2、提取參考隊列和比較隊列
ck=x.iloc[0,:]
cp=x.iloc[1:,:]
# 比較隊列與參考隊列相減
t=pd.DataFrame()
for j in range(cp.index.size):
temp=pd.Series(cp.iloc[j,:]-ck)
t=t.append(temp,ignore_index=True)
#求最大差和最小差
mmax=t.abs().max().max()
mmin=t.abs().min().min()
rho=0.5
#3、求關聯系數
ksi=((mmin+rho*mmax)/(abs(t)+rho*mmax))
#4、求關聯度
r=ksi.sum(axis=1)/ksi.columns.size
#5、關聯度排序,得到結果r3>r2>r1
result=r.sort_values(ascending=False)
Linux新建用戶組g1,并設置其gid為800linux新建用戶組
如何創建Linux的用戶組?
1、首先我們在Linux系統命令行中輸入命令,用它創建一個用戶組,如下圖所示。
2、創建好了以后運用cat命令,打開etc下面的group文件,我們創建的用戶組都會在里面,如下圖所示。
3、打開group文件以后,我們看到了剛才創建的用戶組,這是鑒別用戶組是否創建成功的根據。
4、還可以通過在命令行中輸入命令后,多敲幾次tab鍵,終端會自動列舉出當前所有的組,如下圖所示。
5、另外,如果你創建一個用戶的時候,如下圖所示,運用useradd命令創建一個用戶,默認是已經創建了用戶組的,用戶組和用戶名稱一樣。
6、最后當你在創建文件的時候,你用哪個用戶創建的,文件的所屬組就會自動歸屬這個用戶的所屬組,如下圖所示。
如何在Linux下添加/刪除/修改,用戶及用戶組?
Linux刪除用戶組和用戶時常用的一些命令和參數。
1、從組中刪除用戶
編輯/etc/group找到GROUP1那一行,刪除A
或者用命令
gpasswd-dAGROUP
2、建用戶:
//新建phpq用戶
//給phpq用戶設置密碼
3、建工作組
//新建test工作組
4、新建用戶同時增加工作組
useradd-//新建phpq用戶并增加到test工作組
注::-g所屬組-d家目錄-s所用的SHELL
5、給已有的用戶增加工作組
usermod-
或者:gpasswd-
6、臨時關閉:在/etc/shadow文件中屬于該用戶的行的第二個字段(密碼)前面加上*就可以了。想恢復該用戶,去掉*即可。
或者使用如下命令關閉用戶賬號:
重新釋放:
6、永久性刪除用戶賬號
(強制刪除該用戶的主目錄和主目錄下的所有文件和子目錄)
7、顯示用戶信息
iduser
cat/etc/passwd
linux用戶組,和,用戶的區別?
組呢,就像一個社團,用戶呢就像成員,一般linux下創建用戶默認是自動給該用戶創建一個組的,除非是指定組,比如創建用戶名:那么就同時自動后臺執行,所以fly這個用戶屬于fly組,如果將多個用戶劃入一個組,那么特別是對于ftp、samba等服務是有很大的好處的,這樣只要對組設定權限就行了,也減少了很多后臺管理上的麻煩。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。