查看原文
其他

4段简短代码教你用Python读写Excel

老A 大数据 2019-06-22


导读:数据分析将作为一门通用技能,进入越来越多的不同工作中。毕竟“技多不压身”,掌握数据分析,一方面可以提升自己相应的业务能力,另一方面也可以让自己建立一种从数据出发的视角,用大数据思维去思考各种问题。


作者:老A

如需转载请联系大数据(ID:hzdashuju)



Excel里面的透视表(Pivot Table)确实是做数据分析的必备技能。透视表可以帮你迅速汇总数据,看到各类型数据的直观特征就像是让你站在了一个更高的视角上去看你的数据。作为进阶,Excel自带的函数,各种插件,以及VBA也是很好的工具。


但当数据量大到用Excel打开都要好久,电脑打开文件都会死机的时候,这种也就不适合用office工具了,也或者我们想进一步提升能力的时候,需要学习一些hardcore技能,即用编程语言做数据分析。


这里主要有R和Python两大流派。我个人推荐Python,一方面Python代码简单易懂,容易上手;另一方面学习资料超级多。关于Python的学习资料,这里我推荐《利用Python进行数据分析》,这本书涵盖了利用Python做数据清洗,数据可视化及分析的技能点,可以作一本参考书、工具书,也可以对着书里面的案例进行实操。


受这本书的启发,我写了下面是几个处理Excel的小程序,仅供大家参考学习数据分析和数据从Excel中获取数据。Python对Excel的读写主要有xlrd、xlwt、xlutils、openpyxl、xlsxwriterp这几个形式。具体的安装方法可以从网上查一下,然后导入Python中就可以使用了。


1. xlrd主要是用来读取excel文件


import xlrd
workbook = xlrd.open_workbook(u' Python进行数据分析测试.xls')
sheet_names= workbook.sheet_names()
for sheet_name in sheet_names:
   sheet2 = workbook.sheet_by_name(sheet_name)
   print sheet_name rows = sheet2.row_values(1
   cols = sheet2.col_values(1
   print rows
   print cols


2. xlwt主要是用来写excel文件


import xlwt
wbk = xlwt.Workbook()
sheet = wbk.add_sheet('sheet 1')
sheet.write(0,1,'test text')#第0行第一列写入内容
wbk.save('test.xls')


3. xlutils结合xlrd可以达到修改excel文件目的


import xlrd
from xlutils.copy import copy
workbook = xlrd.open_workbook(u' Python进行数据分析测试.xls')
workbooknew = copy(workbook)
ws = workbooknew.get_sheet(0)
ws.write(30'changed!')
workbooknew.save(u' Python进行数据分析测试copy.xls')


4. openpyxl可以对excel文件进行读写操作


from openpyxl import Workbook
from openpyxl import load_workbook
from openpyxl.writer.excel import ExcelWriter 
workbook_ = load_workbook(u" Python进行数据分析测试.xlsx")
sheetnames =workbook_.get_sheet_names() 
print sheetnames
sheet = workbook_.get_sheet_by_name(sheetnames[0])
print sheet.cell(row=3,column=3).value
sheet['A1'] = '47' 
workbook_.save(u" Python进行数据分析测试新.xlsx")  
wb = Workbook()
ws = wb.active
ws['A1'] = 4
wb.save("检索.xlsx"


最后把《利用Python进行数据分析》这本书的内容再给大家介绍一下,书中含有大量的实践案例,讲解如何利用各种Python库(包括NumPy、pandas、matplotlib以及IPython等)高效地解决各式各样的数据分析问题。


由于作者Wes McKinney是pandas库的主要作者,所以这本书也可以作为利用Python实现数据密集型应用的科学计算实践指南,适合刚刚接触Python的分析人员以及刚刚接触科学计算的Python程序员。


  • 将IPython这个交互式Shell作为你的首要开发环境。

  • 学习NumPy(Numerical Python)的基础和高级知识。

  • 从pandas库的数据分析工具开始。

  • 利用高性能工具对数据进行加载、清理、转换、合并以及重塑。

  • 利用matplotlib创建散点图以及静态或交互式的可视化结果。

  • 利用pandas的groupby功能对数据集进行切片、切块和汇总操作。

  • 处理各种各样的时间序列数据。

  • 通过详细的案例学习如何解决Web分析、社会科学、金融学以及经济学等领域的问题。


关于作者:老A,项目管理师,专业兴趣研究方向:大数据、计算机软件、通信工程。个人业余爱好是研究无人机制作,银元鉴赏与收藏。


本文为「大数据」内容合伙人之「鉴书小分队」活动读书笔记,由大数据粉丝原创。



「大数据」内容合伙人之「鉴书小分队」上线啦!


最近,你都在读什么书?有哪些心得体会想要跟大家分享?


数据叔最近搞了个大事——联合优质图书出版商机械工业出版社华章公司发起鉴书活动。


简单说就是:你可以免费读新书,你可以免费读新书的同时,顺手码一篇读书笔记就行。详情请在大数据公众号后台对话框回复合伙人查看。



延伸阅读《利用Python进行数据分析(原书第2版)

点击上图了解及购买

转载请联系微信:togo-maruko


推荐语:Python数据分析经典畅销书全新升级,第1版中文版累计销售100000册。针对Python 3.6进行全面修订和更新,涵盖新版的pandas、NumPy、IPython和Jupyter。



据统计,99%的大咖都完成了这个神操作



更多精彩


在公众号后台对话框输入以下关键词

查看更多优质内容!


PPT | 报告 | 读书 | 书单 | 干货 

大数据 | 揭秘 | Python | 可视化

人工智能 | 机器学习 | 深度学习 | 神经网络

AI | 1024 | 段子 | 区块链 | 数学


猜你想看




Q: 最近你在读哪本书?

欢迎留言与大家分享

觉得不错,请把这篇文章分享给你的朋友

转载 / 投稿请联系:baiyu@hzbook.com

更多精彩,请在后台点击“历史文章”查看

点击阅读原文,了解更多

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存