- 【数据分析】图书馆数据-01建表
- 【数据分析】图书馆数据-02重命名、索书号、分组
- 【数据分析】图书馆数据-03直方图展示借书数量与借书人数之间的关系
- 【数据分析】图书馆数据-04借阅情况聚类挖掘
- 【数据分析】图书馆数据-05读者类型聚类挖掘
- 【数据分析】图书馆数据-06数据处理过程中的算法
- 【数据分析】图书馆数据-07关联规则
- 【数据分析】图书馆数据-08决策树
对图书馆的数据进行数据挖掘,考虑到学生借阅图书的周期性,在图书馆数据库中主要选取了读者信息表和读者借阅记录表,选取从2016年1月1日到2016年12月31日的182508条借阅记录信息和15294条学生信息,使用python对数据进行数据挖掘处理,根据数据挖掘的结果来分析其中蕴含的规律。
读者借阅记录表是在读者借书的过程中,由图书馆数据库生成的,包括读者证号、读者姓名、条形码、书名等11个属性。
读者借阅记录表的结构:
| 列名 | 数据类型 | 列名 | 数据类型 | 列名 | 数据类型 | 列名 | 数据类型 |
|---|---|---|---|---|---|---|---|
| 读者证号 | char(20) | 读者姓名 | char(10) | 条形码 | char(14) | 出版日期 | char(10) |
| 书名 | char(100) | 借出时间 | datetime | 限还时间 | datetime | 续借次数 | int |
| 文献类型 | char(10) | 中图法分类号 | char(50) | 出版者 | char(10) |
读者信息表的结构:
| 列名 | 数据类型 | 列名 | 数据类型 | 列名 | 数据类型 | 列名 | 数据类型 |
|---|---|---|---|---|---|---|---|
| 读者证号 | char(20) | 读者姓名 | char(10) | 读者性别 | char(2) | 读者单位 | char(40) |
| 读者类别 | char(10) | 允许借册 | int | 借出册数 | int |
通过对两张表进行分析,分别从表中选择部分字段,构成一个新的表:
| 列名 | 数据类型 | 列名 | 数据类型 | 列名 | 数据类型 | 列名 | 数据类型 |
|---|---|---|---|---|---|---|---|
| 读者证号 | char(20) | 读者姓名 | char(10) | 读者性别 | char(2) | 书名 | char(40) |
| 中图法分类号 | char(50) | 读者单位 | char(40) | 读者类别 | char(10) |
import csv as csv
import numpy as np
import codecs
"""
合并表格,并改列名为英文,输出合并后的表格
"""
# -------------
# csv读取表格数据
# -------------
"""
csv_file_object = csv.reader(codecs.open('ReaderRentRecode.csv', 'rb'))
header = csv_file_object.next()
print header
print type(header)
print header[1]
data = []
for row in csv_file_object:
data.append(row)
data = np.array(data)
print data[0::, 0]
"""
# -------------
# pandas读取表格数据
# -------------
import pandas as pd
df = pd.read_csv('ReaderRentRecode.csv') # 读者借阅信息表
"""
print df.head()
print '----------------'
print df[['读者证号', '读者姓名', '书名', '中图法分类号']] # 选取其中的四列
print '------------------------------------------------------------------'
print
"""
dd = pd.read_csv('ReaderInformation.csv')
"""
print dd.head()
print '----------------'
print dd[['读者证号', '读者性别', '读者单位', '读者类别']]
print '------------------------------------------------------------------'
print
"""
# -------------
# 表格合并
# -------------
data = pd.merge(df, dd, on=['读者证号', '读者姓名'], how='left') # pandas csv表左连接
data = data[['读者证号', '读者姓名', '读者性别', '书名', '中图法分类号', '读者单位', '读者类别']]
print data
print '------------------------------------------------------------------'
print
# -------------
# pandas写入表格数据
# -------------
data.to_csv(r'data.csv', encoding='gbk')
对业务上的数据分析,也是首次开始学习,如果分析的不对,也请提点一下,想法很重要,所以这也是基于自己现有的想法进行分析处理,在这个数据分析的流程上,在业务逻辑上,有任何建议都希望给予提点,谢谢!
通过Python对图书馆2016年全年18万余条借阅记录和1.5万余条学生信息进行数据挖掘,分析学生借阅行为规律及读者类型。
3008

被折叠的 条评论
为什么被折叠?



