Python机器学习应用 | 【第一周】无监督学习 - weixin_42906066的博客 - CSDN博客
https://blog.csdn.net/weixin_42906066/article/details/81867175

前置课程没有听,科学计算numpy和matlib画图(shuf)等在硬盘里,看一下会很方便进度。

=========

  1. import numpy as np
  2. import sklearn.cluster as skc
  3. from sklearn import metrics
  4. import matplotlib.pyplot as plt
  5. mac2id=dict()
  6. onlinetimes=[]
  7. f=open('TestData.txt',encoding='utf-8')
  8. for line in f:
  9. mac=line.split(',')[2]
  10. onlinetime=int(line.split(',')[6])
  11. starttime=int(line.split(',')[4].split(' ')[1].split(':')[0])
  12. if mac not in mac2id:
  13. mac2id[mac]=len(onlinetimes)
  14. onlinetimes.append((starttime,onlinetime))
  15. else:
  16. onlinetimes[mac2id[mac]]=[(starttime,onlinetime)]
  17. real_X=np.array(onlinetimes).reshape((-1,2))
  18. X=real_X[:,0:1]
  19. db=skc.DBSCAN(eps=0.01,min_samples=20).fit(X)
  20. labels = db.labels_
  21. print('Labels:')
  22. print(labels)
  23. raito=len(labels[labels[:] == -1]) / len(labels)
  24. print('Noise raito:',format(raito, '.2%'))
  25. n_clusters_ = len(set(labels)) - (1 if -1 in labels else 0)
  26. print('Estimated number of clusters: %d' % n_clusters_)
  27. print("Silhouette Coefficient: %0.3f"% metrics.silhouette_score(X, labels))
  28. for i in range(n_clusters_):
  29. print('Cluster ',i,':')
  30. print(list(X[labels == i].flatten()))
  31. plt.hist(X,24)

学生月上网时间分布-TestData的更多相关文章

  1. 2019-07-28【机器学习】无监督学习之聚类 DBSCAN方法及其应用 (在线大学生上网时间分析)

    样本: import numpy as np import sklearn.cluster as skc from sklearn import metrics import matplotlib.p ...

  2. ux.form.field.Month 只能选年、月的时间扩展

    效果如图,亲测6.2.1版本可用,用法同时间选择控件 //月弹窗扩展 //只选月 Ext.define('ux.picker.Month', { extend: 'Ext.picker.Month', ...

  3. [转]Java中一周前一个月前时间计算方法

    Java中一周前一个月前时间计算方法 在java语言中,用如下方法获取系统时间: Date date = new Date(); String year=new SimpleDateFormat(&q ...

  4. 一个月的时间--java从一无所有到能用框架做点东西出来

    四月20号到六月2号 因为顺利完成了Struts在线考试系统的学习,基本掌握了struts框架的原理和他众多复杂的标签.趁着下一件事情还没到时间,也顾不上写昨天研习的student部分和今天stude ...

  5. js jquery 取得周月年时间

    function formatDate(date) { var myyear = date.getFullYear(); var mymonth = date.getMonth() + 1; var ...

  6. Java时间格式化年-月-日-时间

    Date d = new Date(); System.out.println(d); //Sat Mar 16 20:58:56 CST 2019 System.out.println(d.toLo ...

  7. 花了一个月的时间在一个oj网站只刷了这些题,从此入门了绝大多数算法

    如果你想入门算法,那么我这篇文章也许可以帮到你. oj网站有这么多,当然还有其他的.我当初是在hdu上面刷的,不要问我为什么,问就是当时我也是一个新手,懵懵懂懂就刷起来了.点这里可以进入这个网站htt ...

  8. (Java) 2014年1月1日减一个月涉及时间与字符的转换

    import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...

  9. php 根据输入的参数,获取上季度最后一个月的时间

    public function getTime( $time ='2017-06-01 00:00:00'){ $month = date('m',strtotime($time)); $season ...

随机推荐

  1. PythonStudy——生成器

    # 生成器:自定义的迭代器对象 # -- 就是用函数语法来声明生成器,用yield关键字取代return关键字来返回值,参数没有多少变化 # 总结:有yield关键字的函数,函数名() 不是调用函数, ...

  2. 【java】package

    总结: 包与包之间进行访问,被访问的包中的类以及类中的成员,需要public修饰. 不同包中的子类还可以直接访问父类中被protected权限修饰的成员. 包与包之间可以使用的权限只有两种,publi ...

  3. JavaScript中数组的应用

    Array的应用 1)创建 new Array();new Array(size);new Array(element,element,...,element); 2).Array对象属性 const ...

  4. 恢复Windows 10自带的微软正黑字体

    突然发现  在word中 Microsoft JhengHei 字体没有了,一查在C:\windows\fonts\msjh.ttc文件还在. Windows Registry Editor Vers ...

  5. Caching in Presto

    转自:Caching in Presto Qubole’s Presto-as-a-Service is primarily targeted at Data Analysts who are tas ...

  6. HDFS简述

    管理网络中跨多台计算机存储的文件系统称为分布式文件系统,Hadoop自带HDFS(Hadoop Distributed Filesystem)分布式文件系统. 一.HDFS设计 HDFS以流式数据访问 ...

  7. EntityFramework Inner Exception Catch

    在保存时加入这一段,就可以查看error具体是哪里出错了.正式发布需要删除这段,try catch毕竟会影响性能 try { entity.SaveChanges(); } catch (DbEnti ...

  8. git切换远程仓库地址

    $ git remote  -vorigin  http://192.168.1.100/aaa/Project.git (fetch)origin  http://192.168.1.100/aaa ...

  9. Python量化分析,计算KDJ

    Python: v3.6 Pandas: v0.23.4 使用以下方法计算与国内财经软件显示一致 low_list = df['最低价'].rolling(9, min_periods=9).min( ...

  10. Hbase常见错误解决方法

    Hbase常见错误解决方法 原文转载至:https://www.jianshu.com/p/5fd74812c56c   我是通过maven管理的依赖,直接修改maven依赖中hbase的版本就可以了 ...