前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python一条龙:创建、读取、更新、搜索Excel文件

Python一条龙:创建、读取、更新、搜索Excel文件

作者头像
量化投资与机器学习微信公众号
发布2019-05-31 16:16:09
1.9K0
发布2019-05-31 16:16:09
举报
文章被收录于专栏:量化投资与机器学习

标星★公众号 爱你们♥

作者:Goran Aviani

编译:公众号海外部

近期原创文章:

基于无监督学习的期权定价异常检测(代码+数据)

5种机器学习算法在预测股价的应用(代码+数据)

深入研读:利用Twitter情绪去预测股市

Two Sigma用新闻来预测股价走势,带你吊打Kaggle

利用深度学习最新前沿预测股价走势

一位数据科学PhD眼中的算法交易

基于RNN和LSTM的股市预测方法

人工智能『AI』应用算法交易,7个必踩的坑!

神经网络在算法交易上的应用系列(一)

预测股市 | 如何避免p-Hacking,为什么你要看涨?

如何鉴别那些用深度学习预测股价的花哨模型?

优化强化学习Q-learning算法进行股市

第1部分:CSV文件

CSV文件是由逗号分隔的值文件,其中纯文本数据以表格格式显示。它们可以与任何电子表格程序一起使用,如Microsoft Office Excel、Google Spreadsheets或LibreOffice Calc

CSV文件与其他电子表格文件不同,因为它们不允许保存单元格、列、行或公式。它们的限制是每个文件只允许一个工作表。

写入CSV文件

首先,打开一个新的Python文件并导入Python CSV模块。

CSV模块

CSV模块包含所有内置的必要方法。这些包括:

  • csv.reader
  • csv.writer
  • csv.DictReader
  • csv.DictWriter
  • 其他

我们将重点介绍writer,DictWriter和DictReader方法。它们允许你编辑,修改和操作存储在CSV文件中的数据。

在第一步中,我们需要定义文件的名称并将其保存为变量。我们应该对题和数据信息做同样的处理。

现在我们需要创建一个名为writer的函数,它将接受三个参数:header,data和filename。

下一步是修改writer函数,使它创建一个文件来保存来自header和数据变量的数据。

我们创建了第一个名为imdb_top_4.csv的CSV文件。使用你首选的电子表格应用程序打开此文件,会看到如下内容:

如果你选择在其他应用程序中打开文件,结果可能是这的:

更新CSV文件

如果要更新这个文件,你应该创建一个名为updater的新函数,它只接受一个名为filename的参数。

这个函数首先打开filename变量中定义的文件,然后将从文件中读取的所有数据保存在名为readData的变量中。第二步是对新值进行硬编码,并将其置于readData [0] ['Rating']。

函数中的最后一步是通过添加一个新的参数update来调用writer函数,该参数更新将告诉函数你正在执行更新。

csv.DictReader的官方Python文档中有更多解释:

https://docs.python.org/3/library/csv.html#dialects-and-formatting-parameters

若要writer处理新参数,需要在定义writer的任何地方添加一个新参数。回到最初调用writer函数的地方,添加“write”作为一个新参数:

就在writer函数下面调用updater并将filename参数传递给它:

现在,你需要修改writer函数,以接受一个名为option的新参数:

从现在开始,我们希望收到writer函数的两个不同选项(写入和更新)。因此,我们应该添加两个if语句来支持这个新功能。函数 “if option == “write:” 下的第一部分你已经知道了。你只需要添加 “elif option == “update”:,代码:

第2部分:xlsx文件

使用Python3和openpyxl库构建了这个解决方案。之所以选择openpyxl,是因为可以它可以创建工作表、加载、更新、重命名和删除工作表的完整表现。它还允许我们读或写行和列,合并或取消合并单元格或创建Python excel图表等。

代码,代码再这里:

https://github.com/GoranAviani/Manipulate-Excel-spreadsheets

Openpyxl

1、Workbook是Openpyxl中Excel文件的名称。

2、工作簿由工作表组成(默认为1个工作表),表格以其名称引用。

3、表格(sheet)由数字1开始的行(水平线)和从字母A开始的列(竖线)组成。

Openpyxl有很好的文档,看这里:

https://openpyxl.readthedocs.io/en/stable/

作者还开发一个很有趣的在线应用程序:

https://tools.incodaq.com/

挺实用。大家可以自己试试。

点击join,然后就变成这样了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-05-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 量化投资与机器学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ♥ 基于无监督学习的期权定价异常检测(代码+数据)
  • ♥ 5种机器学习算法在预测股价的应用(代码+数据)
  • ♥ 深入研读:利用Twitter情绪去预测股市
  • ♥ Two Sigma用新闻来预测股价走势,带你吊打Kaggle
  • ♥ 利用深度学习最新前沿预测股价走势
  • ♥ 一位数据科学PhD眼中的算法交易
  • ♥ 基于RNN和LSTM的股市预测方法
  • ♥ 人工智能『AI』应用算法交易,7个必踩的坑!
  • ♥ 神经网络在算法交易上的应用系列(一)
  • ♥ 预测股市 | 如何避免p-Hacking,为什么你要看涨?
  • ♥ 如何鉴别那些用深度学习预测股价的花哨模型?
  • ♥ 优化强化学习Q-learning算法进行股市
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档