张小白带你跟着小Mi老师学习用Python操作Excel

MindSpore团队的小Mi老师在MindSpore论坛有个干货系列——【跟着小Mi一起机器学习吧!】

张小白特意整理了一下,到目前为止,有以下内容:

【跟着小Mi一起机器学习吧!】2021.5.18 介绍篇 https://bbs.huaweicloud.com/forum/thread-128661-1-1.html
【跟着小Mi一起机器学习吧!】2021.5.26 那些我们快要遗忘的线性代数知识点 https://bbs.huaweicloud.com/forum/thread-130462-1-1.html
【跟着小Mi一起机器学习吧!】2021.5.29 单变量线性回归(一)https://bbs.huaweicloud.com/forum/thread-131009-1-1.html
【跟着小Mi一起机器学习吧!】2021.6.3 单变量线性回归(二)https://bbs.huaweicloud.com/forum/thread-131701-1-1.html
【跟着小Mi一起机器学习吧!】2021.6.9 多变量线性回归(一)https://bbs.huaweicloud.com/forum/thread-132434-1-1.html
【跟着小Mi一起机器学习吧!】2021.6.16 多变量线性回归(二)https://bbs.huaweicloud.com/forum/thread-133107-1-1.html
【跟着小Mi一起机器学习吧!】2021.6.22 逻辑回归(一)https://bbs.huaweicloud.com/forum/thread-133654-1-1.html
【跟着小Mi一起机器学习吧!】2021.6.28 逻辑回归(二)https://bbs.huaweicloud.com/forum/thread-135362-1-1.html
【跟着小Mi一起机器学习吧!】2021.7.9 神经网络表述(一)https://bbs.huaweicloud.com/forum/thread-138471-1-1.html
【跟着小Mi一起机器学习吧!】2021.7.13 神经网络表述(二)https://bbs.huaweicloud.com/forum/thread-139405-1-1.html
【跟着小Mi一起机器学习吧!】2021.7.23 神经网络的学习(上)https://bbs.huaweicloud.com/forum/thread-142545-1-1.html
【跟着小Mi一起机器学习吧!】2021.7.31 神经网络的学习(下)https://bbs.huaweicloud.com/forum/thread-144685-1-1.html
【跟着小Mi一起机器学习吧!】2021.8.6 关于应用机器学习时的一些建议 https://bbs.huaweicloud.com/forum/thread-146476-1-1.html
【跟着小Mi一起机器学习吧!】2021.8.13 机器学习系统的设计 https://bbs.huaweicloud.com/forum/thread-147204-1-1.html
【跟着小Mi一起机器学习吧!】2021.8.20 支持向量机(上)https://bbs.huaweicloud.com/forum/thread-148577-1-1.html
【跟着小Mi一起机器学习吧!】2021.8.28 支持向量机(中)https://bbs.huaweicloud.com/forum/thread-150652-1-1.html
【跟着小Mi一起机器学习吧!】2021.9.3 支持向量机(下)https://bbs.huaweicloud.com/forum/thread-152321-1-1.html 
【跟着小Mi一起机器学习吧!】2021.9.17 聚类算法 https://bbs.huaweicloud.com/forum/thread-155839-1-1.html

 张小白相信,小Mi老师还会接着写下去的,所以想学机器学习的人可以关注下。

当然,小Mi老师最近发了一个Python操作excel的帖子( https://bbs.huaweicloud.com/forum/forum.php?mod=viewthread&tid=154274 ),听说照着帖子去实践还会有抽奖,这点首先张小白肯定自己不会拉下,其次也不会让其他的奖品爱好者拉下,所以就让张小白跟着小Mi老师的节奏开始实操吧!

张小白的思路是,先在机器上装好JupyterLab环境,然后在JupyterLab环境下操作即可。有JupyterLab环境的人可以跳过前面的步骤直接进JupyterLab去操作Excel。

按照 《张小白教你在Windows上使用JupyterLab体验MindSpore1.2.0 》( https://bbs.huaweicloud.com/blogs/260796 )的方式装好mindspore 1.3.0和Jupyter Lab:

安装Anaconda

(参见链接 第一步:安装Anaconda)

创建conda环境,顺便安装下mindspore

(参见链接第二步:使用conda安装MindSpore)其实也可以不装mindspore。。

安装jupyter和jupyterlab

。。。

。。。

。。。

创建一个jupyter lab运行的目录 D:\ipynb

进入该目录,启动jupyter lab:

浏览器打开上图箭头所指的链接,进入JupyterLab界面:

点击箭头所指的Python3图标,新建一个Notebook

先验证下mindspore安装:

!python -c "import mindspore;mindspore.run_check()"

好像张小白多此一举了,直接import mindspore;mindspore.run_check()好像也行。。。

这个时候会报一个错,显然这个somas_meta目录不存在。所以可以在ipynb目录下创建这个目录:

重新执行这个cell

仍然报了个找不到指定模块的错,张小白咨询了下mindspore的专家,答复说这是1.3版本的BUG,在1.4版本修复了,所以张小白也不必多管他,反正这次并没有用到MindSpore(只是张小白在夹带私货)

小Mi老师的帖子会让张小白打开另一个文档 :

《可能是全网最完整的 Python 操作 Excel库总结!》( https://mp.weixin.qq.com/s?__biz=Mzg5OTU3NjczMQ==&mid=2247512088&idx=1&sn=64dd609a958d00432dd37484c0d0c382&chksm=c053d6ecf7245ffa39ad6e38bebcff03452271886a8722a5b9ae5f822b3266cda7451fa2a2fc&scene=178&cur_album_id=1732621983021858819#rd

仔细阅读后,发现需要pip安装一些excel相关的包,那就在这里安装吧:

!pip install xlrd -i https://pypi.tuna.tsinghua.edu.cn/simple
!pip install xlwt -i https://pypi.tuna.tsinghua.edu.cn/simple
!pip install xlutils -i https://pypi.tuna.tsinghua.edu.cn/simple
!pip install xlwings -i https://pypi.tuna.tsinghua.edu.cn/simple
!pip install XlsxWriter -i https://pypi.tuna.tsinghua.edu.cn/simple
!pip install openpyxl -i https://pypi.tuna.tsinghua.edu.cn/simple
!pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple

然后需要import一些excel的库(其实也可以用的时候再import,但是先一股脑儿的import其实也没事儿吧。。。)

import xlrd
import xlwt
import xlwings as xw
import xlsxwriter
import openpyxl
import pandas as pd

张小白拿出当年研究过的CANN训练营第二期的奖品价格的表格文件price.xlsx:(至于为啥曾经要研究请不要猜)

然后执行下列脚本:

from openpyxl import load_workbook
workbook = load_workbook( filename = "price.xlsx")
print(workbook.sheetnames)
#sheet =  workbook.active
sheet=workbook['工作表1']
print(sheet.dimensions)

cell1 = sheet["C5"]
print("C5:" , cell1.value)
cell2 = sheet["A7"]
print("A7:", cell2.value)

上面的语句意思大概如下:

打开一个叫做price.xlsx的文件,找到激活的sheet(或者sheet名称为 工作表1的sheet),看一下这个表格的大小,然后打印表格的C5栏位和A7栏位的内容。

运行的结果如下:

看来,excel中特定的网格内容都读出来了。

张小白把price.xlsx文件复制了一份,改名为price2.xlsx,并且加了一列:(乱写的)

那么,我们来一次读取多个文件:

import re
import os
import pandas as pd
files = [ i for i in os.listdir("./") if i.endswith("xlsx")]

for filename in files:
    print(filename)
    print(pd.read_excel(filename))

这里是查看目录下所有带xlsx的文件,循环打印出文件名称和excel文件的内容。

此时需要注意,如果你正在编辑一个excel文件,系统会在同样的目录下生成个不可见的xlsx文件,这样有可能这个语句会报错。记得把excel关闭后再执行就行了。

关闭excel后的执行结果如下:

(请记住第一列是高达基地XXX

再来试试改写excel文件,使用drop和to_excel:

for filename in files:
    file=pd.read_excel(filename)
    filenew=file.drop(file.index[0])
    pd.DataFrame.to_excel(filenew,str(filename),na_rep='.',index=False)

执行完毕,好像没啥动静:

但是再打开两个excel文件看看:

高达基地已经不见了。。。(但是不知道为啥,第一列多了个Unnamed: 0

这就成功地完成了小Mi老师的作业。

其实Python操作Excel的内容还有很多,如果下次用到的时候,记得从这里找到相关的资料哦。。。多跟着小Mi老师学学,一定会有收获的。。

(全文完,谢谢阅读)

免责声明:务必仔细阅读

  • 本站为个人博客,博客所转载的一切破解、path、补丁、注册机和注册信息及软件等资源文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。

  • 本站为非盈利性站点,打赏作为用户喜欢本站捐赠打赏功能,本站不贩卖软件等资源,所有内容不作为商业行为。

  • 本博客的文章中涉及的任何解锁和解密分析脚本,仅用于测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断.

  • 本博客的任何内容,未经许可禁止任何公众号、自媒体进行任何形式的转载、发布。

  • 博客对任何脚本资源教程问题概不负责,包括但不限于由任何脚本资源教程错误导致的任何损失或损害.

  • 间接使用相关资源或者参照文章的任何用户,包括但不限于建立VPS或在某些行为违反国家/地区法律或相关法规的情况下进行传播, 博客对于由此引起的任何隐私泄漏或其他后果概不负责.

  • 请勿将博客的任何内容用于商业或非法目的,否则后果自负.

  • 如果任何单位或个人认为该博客的任何内容可能涉嫌侵犯其权利,则应及时通知并提供身份证明,所有权证明至admin@proyy.com.我们将在收到认证文件后删除相关内容.

  • 任何以任何方式查看此博客的任何内容的人或直接或间接使用该博客的任何内容的使用者都应仔细阅读此声明。博客保留随时更改或补充此免责声明的权利。一旦使用并复制了博客的任何内容,则视为您已接受此免责声明.

您必须在下载后的24小时内从计算机或手机中完全删除以上内容.

您使用或者复制了本博客的任何内容,则视为已接受此声明,请仔细阅读


更多福利请关注一一网络微信公众号或者小程序

一一网络微信公众号
打个小广告,宝塔服务器面板,我用的也是,很方便,重点是免费的也能用,没钱太难了,穷鬼一个,一键全能部署及管理,送你3188元礼包,点我领取https://www.bt.cn/?invite_code=MV9kY3ZwbXo=


一一网络 » 张小白带你跟着小Mi老师学习用Python操作Excel

发表评论

发表评论

一一网络-提供最优质的文章集合

立即查看 了解详情