首先对对数据有一个初步的了解:
**数据:asina_football_data.csv
数据描述:
 id :国家对应id
 国家:国家名称
 2019年国际排名:2019 年国际足联的世界排名。
 2018年世界杯:2018 年世界杯中,很多球队没有进入到决赛圈,所以只有进入到决赛圈的球队才有实际的排名。如果是亚洲区预选赛 12 强的球队,排名会设置为 40。如果没有进入亚洲区预选赛 12 强,球队排名会设置为 50。
 2015年亚洲杯:真是排名。
**
其次是编写代码有一套的编写思路:
一下五步:

训练模型基本流程及对应要求:
1、获取数据:使用pandas读取数据
2、数据分析:可视化分析
3、数据处理:归一化数据
4、模型训练:利用sklearn中的K-Means算法实现聚类,K=3
5、模型可视化:利用matplotlib包中的方法画出三维图,并按照预测类别的不同,使用不同的颜色表示。

编译运行后的代码呈现的结果:

构造模型图:输入X,Y,Z轴进行数据对应

前题:安装好需要的第三方库import pandas as pd
//导入工具包
data = pd.read_csv(r"D:/pyCharm/asina_football_data.csv")
//写入文件所在的路径,
print(data.head())
//初步打印出数据读取的结果train_x = data[['2019年国际排名', '2018年世界杯', '2015年亚洲杯']]
//提取需要进行分析的数据
df = pd.DataFrame(train_x)from sklearn import preprocessing
//导入工具包
min_max_scaler=preprocessing.MinMaxScaler()
train_x=min_max_scaler.fit_transform(train_x)
//训练模型
from sklearn.cluster import KMeans
kmeans = KMeans(n_clusters=3)
kmeans.fit(train_x)
predict_y = kmeans.predict(train_x)
//使用KMeans算法
result = pd.concat((data,pd.DataFrame(predict_y)),axis=1)
result.rename({0:u'梯队编号'},axis=1,inplace=True)
#print(result.head())
print("----------------------------------------------------")
tx = result[['国家','梯队编号']]
print(tx.head())//模型评估后进行绘图
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
//对字体进行处理
from matplotlib import font_manager
font = font_manager.FontProperties(fname='D:/python/腾祥嘉丽纤圆简.ttf')
//构建X,Y,Z轴,分别对应没一组数据
xs = list(set(data.iloc[:,0]))
ys = list(set(data.iloc[:,1]))
zs = list(set(data.iloc[:,2]))
print(xs,ys,zs)
fig = plt.figure()
ax=Axes3D(fig)name = list(set(data.iloc[:,1]))
for label,x,y,z in zip(name,xs,ys,zs):ax.text(x, y, z, label)
cValue = ['r','y','g','b','r','y','g','b','r']
#ax.scatter(xs,ys,zs,c=cValue)
//对每一条轴命名
ax.set_xlabel('2019年国际排名')
ax.set_ylabel('2018年世界杯')
ax.set_zlabel('2015年亚洲杯')
plt.show()

使用K-Means算法划分亚洲国家的三个足球梯队相关推荐

  1. python模拟足球_使用K-Means算法划分亚洲国家的三个足球梯队

    数据:asina_football_data.csv 数据描述: id :国家对应id 国家:国家名称 2019年国际排名:2019 年国际足联的世界排名. 2018年世界杯:2018 年世界杯中,很 ...

  2. 划分亚洲国家的三个足球梯队

    数据描述: id :国家对应id 国家:国家名称 2019年国际排名:2019 年国际足联的世界排名. 2018年世界杯:2018 年世界杯中,很多球队没有进入到决赛圈,所以只有进入到决赛圈的球队才有 ...

  3. kmeans改进 matlab,基于距离函数的改进k―means 算法

    摘要:聚类算法在自然科学和和社会科学中都有很普遍的应用,而K-means算法是聚类算法中经典的划分方法之一.但如果数据集内相邻的簇之间离散度相差较大,或者是属性分布区间相差较大,则算法的聚类效果十分有 ...

  4. k means算法C语言伪代码,K均值算法(K-Means)

    1. K-Means算法步骤 算法步骤 收敛性定义,畸变函数(distortion function): 伪代码: 1) 创建k个点作为K个簇的起始质心(经常随机选择) 2) 当任意一个点的蔟分配结果 ...

  5. k均值聚类算法(K Means)及其实战案例

    算法说明 K均值聚类算法其实就是根据距离来看属性,近朱者赤近墨者黑.其中K表示要聚类的数量,就是说样本要被划分成几个类别.而均值则是因为需要求得每个类别的中心点,比如一维样本的中心点一般就是求这些样本 ...

  6. K means 图片压缩

    k-means的基本原理较为清晰,这里不多赘述,本次博客主要通过基础的k means算法进行图像的压缩处理. 原理分析 在彩色图像中,每个像素的大小为3字节(RGB),可以表示的颜色总数为256 * ...

  7. KMEANS均值聚类和层次聚类:亚洲国家地区生活幸福质量异同可视化分析和选择最佳聚类数...

    阅读全文:http://tecdat.cn/?p=24198 <世界幸福报告>是可持续发展解决方案网络的年度报告,该报告使用盖洛普世界民意调查的调查结果研究了150多个国家/地区的生活质量 ...

  8. 文献记录(part89)--I-k-means-+:An iterative clustering algorithm based on an enhanced k -means

    学习笔记,仅供参考,有错必究 关键词:k均值:解决方案改进:准确的k均值:迭代改进 I-k-means-+:An iterative clustering algorithm based on an ...

  9. 亚洲国家互联网渗透率_发展中亚洲国家如何回应covid 19

    亚洲国家互联网渗透率 The COVID-19 pandemic has severely hit various economies across the world, with global im ...

最新文章

  1. Wordpress会员插件 wp_members 最新简体中文语言包
  2. JS 时间转化为几分钟前 几小时前 几天前
  3. 小冰发布全球首款人工智能Office,沈向洋:我们不走寻常路
  4. 汇编语言(二十二)之统计减去奇数的个数
  5. signature=800c2934bb72de8d2912c36e4444ceb9,Detection and Quantification of Stiction
  6. PostgreSQL查询当前执行中SQL的执行计划——pg_show_plans
  7. 小程序接入h5页面_微信小程序开发接入colorUI
  8. Java中的基本类型和引用类型变量的区别
  9. 势逼 React Native,跨平台开发框架 Flutter 很凶猛
  10. Python写数据结构:单向循环链表
  11. spark常见问题定位
  12. 体验vSphere 6之2-vCenter 6
  13. 管理感悟:错误是员工的,责任是领导的
  14. Spyder中出现IndentationError:unindent does not match any outer indentation level错误
  15. 用Python代码来下载任意指定网易云歌曲
  16. 嵌入式硬件设计-常见处理器介绍
  17. 2022最新淘宝天猫商品评论采集
  18. create和qypt qt_pyqt 与 qt c++ 开发windows客户端程序区别
  19. flex 布局 详解 易懂 总结(flex-direction justify-content align-items align-content align-self)
  20. project 2003

热门文章

  1. 2022年中国企业服务产业市场行情
  2. 零基础小白如何练习文案能力
  3. Fluent中温度-粘度UDF设置方法
  4. Linux系统的安装与卸载
  5. java tips_Java8 Top Tips
  6. 宁盾上榜第五版《CCSIP 2022 中国网络安全行业全景册》
  7. 案例:能否借助AI破译婴儿哭声?
  8. 初学者如何学习java编程?有必要参加培训班吗?
  9. 话筒性能服务器介绍,浅谈话筒及话筒的响应特性
  10. 计算机专业硕士学位点,学术型硕士学位点