您的位置:首页 > 房产 > 建筑 > php怎么编写网页_跨境网站有哪些_实时热点新闻_建设网官方网站

php怎么编写网页_跨境网站有哪些_实时热点新闻_建设网官方网站

2025/1/11 0:50:41 来源:https://blog.csdn.net/qq_54481628/article/details/144808476  浏览:    关键词:php怎么编写网页_跨境网站有哪些_实时热点新闻_建设网官方网站
php怎么编写网页_跨境网站有哪些_实时热点新闻_建设网官方网站
计算题

今从1995年世界各国人文发展指数的排序中,选取高发展水平、中等发展水平的国家各五个作为两组样品,另选四个国家作为待判样品作距离判别分析。

数据选自《世界经济统计研究》1996年第1期

类别

序号

国家名称

出生时的

予期寿命(岁)

x1

成人识字率(%)

1992

x2

调正后人均GDP

1992

x3

第一类

(高发展水平国家)

1

2

3

4

5

美国

日本

瑞士

阿根廷

阿联酋

76

79.5

78

72.1

73.8

99

99

99

95.9

77.7

5374

5359

5372

5242

5370

第二类

(中等发展水平国家)

6

7

8

9

10

保加利亚

古巴

巴拉圭

格鲁吉亚

南非

71.2

75.3

70

72.8

62.9

93

94.9

91.2

99

80.6

4250

3412

3390

2300

3799

待判样品

11

12

13

14

中国

罗马尼亚

希腊

哥伦比亚

68.5

69.9

77.6

69.3

79.3

96.9

93.8

90.3

1950

2840

5233

5158

程序如下:

import pandas as pd
import numpy as np
from numpy import *
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']  #设置显示汉字
plt.rcParams['axes.unicode_minus'] = False
np.set_printoptions(precision=4)  #精度设置维保留4位有效小数
###############################################################
def get_coefficient(sample_list):k=len(sample_list)sample=sample_list[0]d=sample.shape[1]   #维数(属性个数)x_means=mat(np.zeros([d,k])) # 均值s_p=mat(np.zeros([d,d]))    I=mat(np.zeros([d,k]))C=mat(np.zeros([k,1]))n=0#对每类数据进行处理i=0for sample in sample_list:n_i=sample.shape[0]-1n=n+n_is_i=np.cov(sample,rowvar=False)  #协方差矩阵s_p=s_p+n_i*s_ix_means[:,i]=np.mean(sample,axis=0).reshape(-1,1)  i=i+1s_p=s_p/nprint("协方差矩阵:",s_p) #协方差s_p_iv=s_p.I  # 矩阵求逆#计算Ifor i in range(k):    I[:,i]=s_p_iv*x_means[:,i]c=-0.5*x_means[:,i].reshape(1,-1)*s_p_iv*x_means[:,i]C[i,0]=creturn I, C
#######################可修改部分###############################
k=2 #总体个数
d=3 #属性个数
samples_I=mat(np.array([[76,99,5374],[79.5,99,5359],[78,99,5372],[72.1,95.9,5272],[73.9,77.7,5370]]))
samples_II=mat(np.array([[71.2,93,4250],[75.3,94.9,3412],[70,91.2,3390],[72.8,99,2300],[62.9,80.6,3799]]))#将训练数据添加到列表中
sample_list=[]
sample_list.append(samples_I)
sample_list.append(samples_II)   #计算得到的系数
I,C=get_coefficient(sample_list) 
print("I=",I)
print("C=",C)
#输入要判定的数据样本
input_sample=mat(np.array([68.5,79.3,1950])) 
#input_sample=mat(np.array([77.6,93.8,5233])) #计算判定值
V=I.T*input_sample.T+C#输出
print("计算得到各类别判定值为:")
for i in range(k):print("第{}类:{}".format(i+1,round(V[i,0],4)))
x=input_sample.tolist()[0]
x=tuple(x)
print("所以,输入数据{}属于第{}类。".format(x,argmax(V)+1))

程序运行结果:

协方差矩阵: [[ 1.5329e+01  2.1508e+01 -5.6979e+02]

 [ 2.1508e+01  6.6613e+01 -1.4394e+03]

 [-5.6979e+02 -1.4394e+03  2.6188e+05]]

I= [[5.8621 5.1918]

 [0.2692 0.2588]

 [0.0347 0.0258]]

C= [[-327.8449]

 [-239.0039]]

计算得到各类别判定值为:

第1类:162.6467

第2类:187.4976

所以,输入数据(68.5, 79.3, 1950.0)属于第2类。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com