学生月上网时间分布-TestData
Python机器学习应用 | 【第一周】无监督学习 - weixin_42906066的博客 - CSDN博客
https://blog.csdn.net/weixin_42906066/article/details/81867175
前置课程没有听,科学计算numpy和matlib画图(shuf)等在硬盘里,看一下会很方便进度。




=========
- import numpy as np
- import sklearn.cluster as skc
- from sklearn import metrics
- import matplotlib.pyplot as plt
- mac2id=dict()
- onlinetimes=[]
- f=open('TestData.txt',encoding='utf-8')
- for line in f:
- mac=line.split(',')[2]
- onlinetime=int(line.split(',')[6])
- starttime=int(line.split(',')[4].split(' ')[1].split(':')[0])
- if mac not in mac2id:
- mac2id[mac]=len(onlinetimes)
- onlinetimes.append((starttime,onlinetime))
- else:
- onlinetimes[mac2id[mac]]=[(starttime,onlinetime)]
- real_X=np.array(onlinetimes).reshape((-1,2))
- X=real_X[:,0:1]
- db=skc.DBSCAN(eps=0.01,min_samples=20).fit(X)
- labels = db.labels_
- print('Labels:')
- print(labels)
- raito=len(labels[labels[:] == -1]) / len(labels)
- print('Noise raito:',format(raito, '.2%'))
- n_clusters_ = len(set(labels)) - (1 if -1 in labels else 0)
- print('Estimated number of clusters: %d' % n_clusters_)
- print("Silhouette Coefficient: %0.3f"% metrics.silhouette_score(X, labels))
- for i in range(n_clusters_):
- print('Cluster ',i,':')
- print(list(X[labels == i].flatten()))
- plt.hist(X,24)
学生月上网时间分布-TestData的更多相关文章
- 2019-07-28【机器学习】无监督学习之聚类 DBSCAN方法及其应用 (在线大学生上网时间分析)
样本: import numpy as np import sklearn.cluster as skc from sklearn import metrics import matplotlib.p ...
- ux.form.field.Month 只能选年、月的时间扩展
效果如图,亲测6.2.1版本可用,用法同时间选择控件 //月弹窗扩展 //只选月 Ext.define('ux.picker.Month', { extend: 'Ext.picker.Month', ...
- [转]Java中一周前一个月前时间计算方法
Java中一周前一个月前时间计算方法 在java语言中,用如下方法获取系统时间: Date date = new Date(); String year=new SimpleDateFormat(&q ...
- 一个月的时间--java从一无所有到能用框架做点东西出来
四月20号到六月2号 因为顺利完成了Struts在线考试系统的学习,基本掌握了struts框架的原理和他众多复杂的标签.趁着下一件事情还没到时间,也顾不上写昨天研习的student部分和今天stude ...
- js jquery 取得周月年时间
function formatDate(date) { var myyear = date.getFullYear(); var mymonth = date.getMonth() + 1; var ...
- Java时间格式化年-月-日-时间
Date d = new Date(); System.out.println(d); //Sat Mar 16 20:58:56 CST 2019 System.out.println(d.toLo ...
- 花了一个月的时间在一个oj网站只刷了这些题,从此入门了绝大多数算法
如果你想入门算法,那么我这篇文章也许可以帮到你. oj网站有这么多,当然还有其他的.我当初是在hdu上面刷的,不要问我为什么,问就是当时我也是一个新手,懵懵懂懂就刷起来了.点这里可以进入这个网站htt ...
- (Java) 2014年1月1日减一个月涉及时间与字符的转换
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; impor ...
- php 根据输入的参数,获取上季度最后一个月的时间
public function getTime( $time ='2017-06-01 00:00:00'){ $month = date('m',strtotime($time)); $season ...
随机推荐
- 附录B——MySQL样例表
vendors表: 储存销售产品的供应商信息,每个供应商在这个表中有一个记录,供应商ID(vend_id)列用来匹配产品和供应商. 列名 vend_id vend_name vend_address ...
- nginx添加ssl证书
ssl的证书是通过docker nginx letsencrypt 这篇随笔生成的,下面介绍如何在nginx中添加ssl 这个为全部配置, 需要替换你自己的域名,配置中强制https了 server ...
- 腾讯云cos对象在线显示
问题 前端使用了一张cos的图片,但是无法显示图片,使用的是cdn的加速域名地址. 对比:使用服务器的直接域名是可以显示的. 两者地址直接访问时,一者在线显示,一者直接下载到本地. 原因: 使用默认提 ...
- maven依赖冲突
https://blog.csdn.net/noaman_wgs/article/details/81137893
- sqlserver数据库不能重命名报错5030——我的一点小思考
在学习asp.net的时候使用mssql‘经常会出现这种错误,数据库不能重名名5030的错误,其实很简单原因就是有应用程序正在占用这个连接,使用这样一行命令就可以查询出正在占用的连接 use mast ...
- 剑指offer 13.代码的完整性 调整数组顺序使奇数位于偶数前面
题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 本渣渣解题思路: ...
- C语言的抽象与函数指针--思想(转)
一.何为抽象? 从小到大,我们接触到的抽象,最熟悉的莫过于数学了.为什么这样说呢? 比如说,在小学的时候,老师总是拿了几个苹果来引诱我们:同学们,这里有几个苹果啊?于是我们流着口水一个个地数,一个苹果 ...
- 查看局域网内所有IP的方法
1,windows下查看局域网内所有IP的方法: 在MS-DOS命令行输入arp -a 2,Linux下,查看局域网内所有IP的方法: 在命令行输入nmap -sP 172.10.3.0/24
- Convert.ChangeType不能处理Nullable类型的解决办法(转)
https://www.cnblogs.com/patrickyu/p/3211115.html 在做一个ORMapping功能的时候发现,Convert.ChangeType不能处理nullable ...
- win7和linux下利用命令查看文件md5、sha1、sha256
win7 certutil -hashfile <filename> MD5 certutil -hashfile <filename> SHA1 certutil -hash ...