用python操作excel表格,进行数据分析

项目场景:

提示:通常我们对excel表格进行删除多个项的时候,如果一条一条的删除就会花费很多时间,并且也不知道要删除的部分是否删除完,进行查询,分类的时候用python语言几条语句就能简单的完成要求。
例如:从一个有很多条学生信息的excel表中按要求进行操作


代码展示:

首先在软件中导入excel表格,即用python打开csv文件

from pandas import Series,DataFrame
import pandas as pd
import numpy as np
import csv
import codecsdata_csv = pd.read_csv("d:/shiyan.csv",encoding = "gbk")data_csv  #就能在python软件中打印出要查找的信息

将数据以文件形式导出保存

data_csv.to_csv('d:/1.csv')  #以csv形式存储
data_csv = data_csv.to_excel("d:/1.xls")   #以excel表形式存储

删除后两列所有信息

data_csv = data_csv.drop(['任选课类别_显示值','考试类型_显示值'],axis=1)

针对表中的字要修改的进行统一修改

data_csv=data_csv.replace(['合格','良好'],[60,80])#军训分数栏的文字修改为分数合格对应60分,良好对应80分

特定要求筛选

data0_csv = data_csv[data_csv['学号']>20120000]  #筛选出学号大于2012000的学生信息
data0_csv = data_csv[data_csv['院系_显示值'] == '文学与新闻传播学院']   #从所以的信息总分离出文传学院的数据
TeamID1 = data_csv[data_csv['TeamID'] == 1]  #显示出第一学期的数据

分组

#group用来分组
group = TeamID1['成绩'].groupby(TeamID1['学号']) #以每个学号进行分组,并保留下每个学号的每个课成绩
#agg用来聚合
a = group.agg(['sum']+['mean']+['max']+['min']+['count'])

用python函数对成绩进行分析,count=9表明有9门学科

a.columns=['总分','每学期该专业平均分','每学期该专业最高分','每学期该专业最低分','每学期该专业考试门数']

分别用迭代递归缓存求斐波拉契数列

from tkinter import *
import easygui
import time
master = Tk()
frame = Frame(master)  # 确定一个框架用于美观
frame.pack(padx = 20,pady = 20)v1 = StringVar() # 分别用于储存需要计算的数据和 结果
v2 = StringVar()
v3 = StringVar()
v4 = StringVar()
v5 = StringVar()
v6 = StringVar()def test(content):return content.isdigit()  # 检查是不是数字 .
testCMD = frame.register(test)  # 将函数 进行包装 .
Label(frame,text='迭代算法:',padx=10).grid(row=0,column=0)# %p 是输入框的最新内容 . 当输入框允许改变的时候该值有效 ,
Label(frame,text='输入项数:',padx=10).grid(row=0,column=2)
e2 = Entry(frame,width=10,textvariable=v1,validate='key',\validatecommand=(test,'%p')).grid(row=0,column=3)Label(frame,text='结果',padx=10).grid(row=0,column=4)
e3 = Entry(frame,width=15,textvariable=v2,state='readonly').grid(row=0,column=5)Label(frame,text='花费时间:',padx=10).grid(row=0,column=6)
e4 = Entry(frame,width=15,textvariable=v3,state='readonly').grid(row=0,column=7)Label(frame,text='递归算法:',padx=10).grid(row=1,column=0)# %p 是输入框的最新内容 . 当输入框允许改变的时候该值有效 ,
Label(frame,text='输入项数:',padx=10).grid(row=1,column=2)
e5 = Entry(frame,width=10,textvariable=v4,validate='key',\validatecommand=(test,'%p')).grid(row=1,column=3)Label(frame,text='结果',padx=10).grid(row=1,column=4)
e6 = Entry(frame,width=15,textvariable=v5,state='readonly').grid(row=1,column=5)Label(frame,text='花费时间:',padx=10).grid(row=1,column=6)
e7 = Entry(frame,width=15,textvariable=v6,state='readonly').grid(row=1,column=7)def calc():if v1.get()=='':easygui.msgbox('请先输入内容 !')return result1 = fibonacci3(12)v2.set(result1)result2 = Time3()v3.set(result2)def calc():if v4.get()=='':easygui.msgbox('请先输入内容 !')return result1 = fibonacci1()v5.set(result1)result2 = Time3()v6.set(result2)"""def test():if e1.get() == 'f1':print("正确") fibonacci3(10)#return Trueelse:fibonacci3(5)print('错误')e1.delete(0,END)return False   """
#递归
def fibonacci1(n):# base caseif n==0 or n==1:return 1# recurssive caseelse:return fibonacci1(n-1) + fibonacci1(n-2)
#print ([fibonacci1(i) for i in range(32)])def Time3():start_CPU = time.clock()fibonacci3(32)end_CPU = time.clock()return end_CPU - start_CPUdef fibonacci3(n):a, b = 0, 1for i in range(1, n+1):a, b = b, a+breturn b
#print ([fibonacci3(i) for i in range(32)])Button(frame,text='结果1',command=calc).grid(row=4,column=3,pady=15)
Button(frame,text='结果2',command=calc).grid(row=4,column=4,pady=15)mainloop()

斐波拉契数列:

def calc1():if v1.get()=='':easygui.msgbox('请先输入内容 !')return result1 = fibonacci1(v1.get())v2.set(result1)result2 = Time1()v3.set(result2)def fibonacci1(n):a, b = 0, 1for i in range(1, n+1):a, b = b, a+breturn b#迭代
def Time1(n):start_CPU = time.clock()fibonacci1(n)end_CPU = time.clock()return end_CPU - start_CPU

知识扩充:

CSV:

csv是最通用的一种文件格式,它可以非常容易地被导入各种PC表格及数据库中。此文件,一行即为数据表的一行。生成数据表字段用半角逗号隔开。csv文件用记事本和excel都能打开,用记事本打开显示逗号,用excel打开,没有逗号了,逗号都用来分列了,还可有Editplus打开。

python常用的科学计算库:

Numpy:
Pandas
Scipy


python数据分析,用python对excel表格操作相关推荐

  1. 无字天书之Python第十五页(Excel表格操作)

    博客内容 传送门 正文读 正文写 到此Python基础就此结束- 传送门 无字天书之Python第一页 无字天书之Python第二页 无字天书之Python第三页 无字天书之Python第四页 无字天 ...

  2. python处理excel表格实例-python2 对excel表格操作完整示例

    本文实例讲述了python2 对excel表格操作.分享给大家供大家参考,具体如下: #!/usr/bin/env python2 # -*- coding: utf-8 -*- "&quo ...

  3. Python的excel表格操作,数据提取分析

    自己编写了一些表格的操作方法,只需传入表格路径和表的位置,就能在根据自己使用的方法展示不同类型的数据如:字典,列表,字典里套列表,列表里套列表,查询最大行数,在指定的行数插入数据等,有疑问欢迎评论 c ...

  4. 计算营业额python代码_真香还是假香,Python处理分析128张Excel表格竟然不到3秒?| 附案例数据集...

    原标题:真香还是假香,Python处理分析128张Excel表格竟然不到3秒?| 附案例数据集 作者:吹牛Z 本文转自公众号:数据不吹牛 更新完Pandas基础教程,后台有不少旁友留言,想要了解怎么用 ...

  5. python怎么将txt转为excel_使用matlab或python将txt文件转为excel表格

    假设txt文件为: 一.matlab代码 data=importdata('data.txt'); xlswrite('data.xls',data); 二.python代码 利用pandas的Dat ...

  6. Python入门题031:excel表格筛选重复数据

    题目: 使用 pandas 筛选表格中的重复数据,将筛选后的表格保存到新的 excel 文件中. 视频教程: Python入门题031:excel表格筛选重复数据 代码: import pandass ...

  7. 小白学 Python(24):Excel 基础操作(下)

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  8. 【python办公自动化】如何在Excel表格里面插入对象

    前言 用openpyxl处理Excel数据还是蛮舒服的.同时也可以插入图片,不过插入图片有个弊端,那就是,它只是把图片按比例缩小了.要看大图你得拉大来看,并不舒服.于是,想着能否插入对象文件.双击直接 ...

  9. 为什么学习Python数据分析,python数据分析有什么用?

    一.首先我们先说说为什么学习Python数据分析 互联网时代,我们每一个人,每天无时无刻都在生产数据,一分钟内,微博上新发的数据量超过10万,b站的视频播放量超过600万-- 这些庞大的数字,意味着什 ...

  10. Python3中的Excel表格操作

    一.2003以前的表格以.xls后缀,用xlwt来写表格,用xlrd来读取表格:2007的表格以.xlsx后缀,用openpyxl来读写表格. 二.xlrd使用介绍 1.导入模块   import x ...

最新文章

  1. 拒绝躺平,Redis选择实现了自己的VM
  2. python的代码编译、代码打包方法
  3. arcsde服务启动不了
  4. 图解Oracle同义词
  5. 中国移动互联网趋势报告:教育、金融类App留存率更高
  6. Lockey的沙雕低错集锦(未完待续~自己提升用)
  7. 《xUnit Test Patterns》学习笔记6 - Test Double
  8. EXCEL两组数相等红色标示并放到第三列_VBA
  9. 解决 mac ssh空闲 连接断开问题
  10. SPOJ QTREE4 lct
  11. 为什么要有事件循环机制(Event Loop)
  12. iOS UIcollectionview 数据量少时候bounces无效的解决方法
  13. matlab修改图例/图注/legend中线条的粗细
  14. 节假日api接口之获取指定日期的节假日信息
  15. Normalized and Geometry-Aware Self-Attention Network for Image Captioning阅读笔记
  16. 首次曝光!唯一全域最高等级背后的阿里云云原生安全全景图
  17. 用HTML+CSS跟简单的js操作完成响应式星巴克首页
  18. 测试计划的目的是什么?如何做好测试计划?
  19. SV学习笔记—类的封装和继承
  20. 7.6 模型拟合及预测

热门文章

  1. 2021 RoboCom 世界机器人开发者大赛-本科组(决赛)题解
  2. 如何进行批量导入通讯录,简单易学
  3. 经鼻开颅手术成功了,Jerry脱离了生命危险
  4. Vue基于JSON Schema生成表单和数据校验
  5. C语言程序练习:波瓦松的分酒趣题。法国著名数学家波瓦松青年时代研究过一个有趣的数学问题:某人有12品脱的啤酒一瓶,想从中倒出6品脱,但他没有6品脱的容器,仅有一个8品脱和一个5品脱的容器,怎样倒才
  6. 岛屿问题 (Java) LeeCode
  7. php人民币转换,人民币数字转中文币制
  8. 广域网边缘的技术革命
  9. ios 倒数器_年倒计时器2020iOS版
  10. 微服务守护神-Sentinel-流控规则