12.9建模复盘——EXCEL批量处理数据、查找数据、熵权法、可视化

以下是一些可以查询英国国家数据的网站:

  1. 英国政府网站(www.gov.uk):提供各个政府部门的数据和统计信息,包括经济、人口、教育、健康、环境等领域。

  2. 英国国家统计局(www.ons.gov.uk):英国的官方统计机构,提供广泛的统计数据和报告,涵盖经济、劳动力、人口、社会等各个领域。

  3. 英国国家档案馆(www.nationalarchives.gov.uk):保存和提供英国历史档案和记录的机构,可以查询历史数据和文件。

  4. 英国经济与社会研究理事会(www.esrc.ac.uk):该机构提供经济、社会和人文科学领域的研究报告和数据。

  5. 英国卫生与社会保健信息中心(www.hscic.gov.uk):提供英国卫生和社会保健领域的数据和报告。

  6. 英国金融行为监管局(www.fca.org.uk):提供金融服务行业的监管数据和报告。

以上是一些常用的查询英国国家数据的网站,您可以根据自己的需求选择相应的网站进行查询。

复制代码
import pandas as pd
import math
import numpy as np
# Import data from Excel
data = pd.read_excel('C:/Users/26861/Desktop/eg2.xlsx')

# 提取指标列
indicators = data.iloc[:, 1:]

# 计算指标的熵值
indicator_entropy = -np.sum(indicators * np.log2(indicators), axis=0)

# 计算指标的权重
weights = (1 - indicator_entropy) / np.sum(1 - indicator_entropy)

# 输出权重
for i, weight in enumerate(weights):
    print(f"指标{i+1}的权重为:{weight}")

import pandas as pd
import matplotlib.pyplot as plt
# 设置字体为微软雅黑
plt.rcParams['font.family'] = 'Microsoft YaHei'
# 从Excel导入数据
data = pd.read_excel('C:/Users/26861/Desktop/eg2.xlsx')

# 根据公式计算指标值
data['score'] = 0.202*data['GDP增长标准化'] + 0.063*data['GDP标准化']+ 0.1*data['恐怖主义指数标准化'] + 0.086*data['政府预算标准化']+ 0.147*data['就业率标准化'] + 0.147*data['失业率标准化']+ 0.088*data['CPI标准化'] + 0.167*data['贸易差额标准化']

# 可视化展示
plt.figure(figsize=(8, 4))
plt.plot(data['score'])
plt.xlabel('Years')
plt.ylabel('Relative national strength')
plt.title('Changes in the relative national power of the United Kingdom over the years')
plt.xticks(rotation=45)
# 设置x轴刻度
start_year = 2013
end_year = start_year + len(data) - 1
years = range(start_year, end_year + 1)
plt.xticks(range(len(data)), years, rotation=45)

plt.yticks([])  # 隐藏y刻度
# 解决中文显示问题
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
plt.rcParams['axes.unicode_minus'] = False
plt.show()

1.利用EXCEL快速处理数据

2.查找数据后进行建模积累了初步的经验

3.熵权法,评价方法

复制代码
import pandas as pd
import numpy as np

# 从Excel导入数据
data = pd.read_excel('data.xlsx')

# 提取指标列
indicators = data.iloc[:, 1:]

# 计算指标的归一化值
normalized_indicators = indicators.apply(lambda x: (x - min(x)) / (max(x) - min(x)))

# 计算指标的熵值
entropy_values = normalized_indicators.apply(lambda x: -np.sum(x * np.log2(x)))

# 计算权重
weights = (1 - entropy_values / np.sum(entropy_values))

# 输出权重
for i, weight in enumerate(weights):
    print(f"指标{i+1}的权重为:{weight}")

4.数据网站,定义、选取指标经验

5.可视化

可以修改、隐蔽两坐标轴刻度

复制代码
import pandas as pd
import matplotlib.pyplot as plt

# 设置字体为微软雅黑
plt.rcParams['font.family'] = 'Microsoft YaHei'
# 从Excel导入数据
data = pd.read_excel('C:/Users/26861/Desktop/eg2.xlsx')

# 根据公式计算指标值
data['score'] = 0.202 * data['GDP增长标准化'] + 0.063 * data['GDP标准化'] + 0.1 * data['恐怖主义指数标准化'] + 0.086 * data['政府预算标准化'] + 0.147 * data['就业率标准化'] + 0.147 * data['失业率标准化'] + 0.088 * data['CPI标准化'] + 0.167 * data['贸易差额标准化']

# 可视化展示
plt.figure(figsize=(8, 4))
plt.plot(data['score'])
plt.xlabel('指标')
plt.ylabel('权值')
plt.title('各指标权值')

# 设置x轴刻度
start_year = 2013
end_year = start_year + len(data) - 1
years = range(start_year, end_year + 1)
plt.xticks(range(len(data)), years, rotation=45)

plt.yticks([])  # 隐藏y刻度

# 解决中文显示问题
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
plt.rcParams['axes.unicode_minus'] = False
plt.show()

运行修改后的代码后,将会显示一个折线图,x轴刻度从2013年开始,并以年份为单位进行间隔。

对y轴隐蔽刻度

相关推荐
卓豪终端管理7 分钟前
如何安全地管理固定功能设备?
java·大数据·开发语言·网络·人工智能·安全
Sherlock Ma13 分钟前
基于LightRAG进行本地RAG部署(包括单卡多卡本地模型部署、调用阿里云或DeepSeekAPI的部署方法、RAG使用方法)
人工智能·阿里云·大模型·aigc·检索增强·rag·deepseek
User_芊芊君子17 分钟前
从0到1:让AI赋能计算机的全流程实践指南
人工智能
人工智能交叉前沿技术,27 分钟前
机器学习在催化剂设计中的应用理论加实操
人工智能·机器学习
声网28 分钟前
Edge 浏览器推出 Copilot Vision:免费实时解析屏幕内容;Aqua Voice:极速 AI 语音输入工具丨日报
人工智能
努力犯错玩AI32 分钟前
16.4B参数仅激活2.8B!Kimi-VL-A3B开源:长文本、多模态、低成本的AI全能选手
人工智能·后端·开源
Watermelo61738 分钟前
《Science》观点解读:AI无法创造真正的智能体(AI Agent)
人工智能·深度学习·神经网络·机器学习·语言模型·自然语言处理·数据挖掘
suke40 分钟前
企业级部署实操: SGLang 多节点集群部署 Qwen 系列大模型
人工智能·ai编程
灏瀚星空1 小时前
AI 模型高效化:推理加速与训练优化的技术原理与理论解析
开发语言·人工智能·深度学习·程序人生·机器人·智慧城市·量子计算
mex_wayne1 小时前
基础学习:(6)nanoGPT
人工智能·学习·transformer