【数据分析】图书馆数据-03直方图展示借书数量与借书人数之间的关系

    xiaoxiao2021-03-25  120

          图书馆的数据是一年的数据,一年以来,每个学生的借书情况就可以清洗的展示出来,不同学生对于图书的需求也是不同的,那么学生借书的热度如何呢?这里就可以通过计算每个学生的借书数量,来分析一年以来学生的借书情况。

    # -*-coding:utf-8-*- import numpy as np import pandas as pd import matplotlib.pyplot as plt """ 图形化展示借书数量的多少 """ data = pd.read_csv('new_data.csv', encoding='gbk') # 读取数据集 print data # 数据集 """ 删除book列 """ # del data['book'] # print data """ copy()某些列 """ data = data[['read_num', 'read_name', 'num_y']] # num_y 每个学生的借书数量,提取新的数据集,保存到data中 print data data = data.drop_duplicates() # 去除重复行 data = data.sort_values(by='num_y', ascending=True) # 按照借书数量进行排序,递增排序 # data.sort_index(num_y) print data print type(data) data['num_num'] = 1 # 增加一列num_num,全部赋值为1,用于临时计算不同借书数量的人数 print '---------------------------' """ 计算不同借书数量的人数,就是指借一年来借了50本书的有多少人,借了100本书的有多少人 """ book = data[['num_y', 'num_num']] print book print type(book) # book['num_num'] = 1 # book = data['num_y'] # print book # 不同学生的借书数量 book = book.groupby('num_y').agg('sum') book = book.reset_index() # 索引转换为列表 print book print '------------------------------------' """ 作图 """ x = list(book['num_y']) # 横轴表示:一年来,借书数量 y = list(book['num_num']) # 纵轴表示,借同数量的书的人数 print 'x=', x print type(x) print len(x) print 'y=', y print type(y) print len(y) print '-------------------------------' """ X轴 借书数量,Y轴 借书人数,图中展示了借书数量小于50的时候,借书人数的多少 """ """ 直方图 """ import seaborn as sns sns.set_style('darkgrid') bar_plot = sns.barplot(x=book['num_y'][:50], y=book['num_num'][:50], palette="muted", order=book["num_y"][:50].tolist()) plt.xticks(rotation=0) # rotation=90 是将X轴垂直化,rotation=0 水平化 plt.show()

    图形展示的是借书数量大于50的学生数量分布情况:

    转载请注明原文地址: https://ju.6miu.com/read-14393.html

    最新回复(0)