利用pandas统计考试成绩,flask作为界面

彪79929898 2016-06-14 23:39:12 2518 收藏
版权
1、csv文件的列名:
考试号 姓名 班级 座号 类别 语文j1 语文j2 语文 数学j1 数学j2 数学 外语j1 外语j2 外语 物理j1 物理j2 物理 化学j1 化学j2 化学 政治j1 政治j2 政治 历史j1 历史j2 历史 地理j1 地理j2 地理 生物j1 生物j2 生物 总分 语文bmc 语文jmc 数学bmc 数学jmc 外语bmc 外语jmc 物理bmc 物理jmc 化学bmc 化学jmc 政治bmc 政治jmc 历史bmc 历史jmc 地理bmc 地理jmc 生物bmc 生物jmc 总分bmc 总分jmc
2、利用pandas分析数据,flask做界面显示。运行后访问:http://127.0.0.1:5000。
3、源代码如下:

-- coding:utf-8 --

import pandas as pd
from flask import Flask, render_template, request, redirect
app=Flask(name)

scores=pd.read_csv('高一下学期月考二成绩.csv',encoding='gbk')
jmc=[i for i in scores.columns if 'jmc' in i]
subject=[j[:-3] for j in jmc]
def count_n(n):
def _count(arr):
return len([i for i in arr if i<=n])
return _count

@app.route('/')
def index():
return render_template('index.html')

@app.route('/single', methods=['POST','GET'])
def single_controller():
#return '/single/'+request.form['single_line']
return redirect('/single/'+request.form['single_line'])

@app.route('/double', methods=['POST','GET'])
def double_controller():
#return '/double/'+request.form['single_line']

return redirect('/double/'+request.form['double_line'])

@app.route('/single/')
def single_line(n):
'''单上线'''
# scores[jmc].groupby(scores['班级']).agg(count_n(n)).to_csv(
# '单上线'+str(n)+'.csv')
return scores[jmc].groupby(scores['班级']).agg(count_n(n)).reset_index().to_html()

@app.route('/double/')
def double_line(n):
'''双上线'''
# scores[scores['总分jmc']<=n][jmc].groupby(scores['班级']).agg(
# count_n(n)).to_csv('双上线'+str(n)+'.csv')
return scores[scores['总分jmc']<=n][jmc].groupby(scores['班级']).agg(
count_n(n)).reset_index().to_html()
@app.route('/average')
def average():
'''平均分'''
return scores[subject].groupby(scores['班级']).mean().reset_index().to_html()

@app.route('/max')
def max_score():
'''最高分'''
return scores[subject].groupby(scores['班级']).max().reset_index().to_html()

if name=='main':
# for i in [60,450,900,1500]:
# single_line(i)

# for i in [60,450,900,1500]:
    # double_line(i)
app.run(host='0.0.0.0')

————————————————
版权声明:本文为CSDN博主「彪79929898」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_25234189/article/details/51675560

你可能感兴趣的:(利用pandas统计考试成绩,flask作为界面)