当前位置: 首页 > news >正文

东阳网站建设软件开发杭州萧山网站建设

东阳网站建设软件开发,杭州萧山网站建设,小程序模板库,静态网站后台管理系统以二进制格式存储#xff08;或序列化#xff09;数据的一种简单方法是使用 Python 的内置 pickle 模块。同时#xff0c;pandas 构造的对象都有一个 to_pickle 方法#xff0c;该方法以 pickle 格式将数据写入磁盘。 我们先把之前示例用到的ex1.csv文件加载到pandas对象中…以二进制格式存储或序列化数据的一种简单方法是使用 Python 的内置 pickle 模块。同时pandas 构造的对象都有一个 to_pickle 方法该方法以 pickle 格式将数据写入磁盘。 我们先把之前示例用到的ex1.csv文件加载到pandas对象中然后将数据以二进制pickle格式写入examples/frame_pickle文件中 import pandas as pdframe pd.read_csv(examples/ex1.csv) frame.to_pickle(examples/frame_pickle) 以上代码会将数据输出到一个frame_pickle文件中 Pickle 文件通常仅在 Python 中可读。可以直接使用内置的 pickle 来读取存储在文件中的任何 “pickled” 对象或者用更简单方便的方式来读取就是 pandas.read_pickle我们把上面生成的frame_pickle文件加载回来pd.read_pickle(examples/frame_pickle)  可以打印出来会输出以下内容 abcdmessage01234hello15678world29101112foo 注意Pickle 仅推荐作为短期存储格式。问题在于很难保证格式会随着时间的推移而稳定例如今天被 picked 的对象可能无法使用更高版本的 library来unpickle 。pandas 会尽可能保持向后兼容性但在将来可能需要 “打破” 当前的pickle 格式。 pandas 也内置了对其他几种开源二进制数据格式的支持例如 HDF5、ORC 和 Apache Parquet。例如如果安装了 pyarrow  pip install pyarrow或conda install pyarrow则可以使用 pandas.read_parquet 读取 Parquet 文件。 fec pd.read_parquet(datasets/fec/fec.parquet) fec.head() 输出前5行 cmte_idcand_idcand_nmcontbr_nmcontbr_citycontbr_stcontbr_zipcontbr_employercontbr_occupationcontb_receipt_amtcontb_receipt_dtreceipt_descmemo_cdmemo_textform_tpfile_num0C00410118P20002978Bachmann, MichelleHARVEY, WILLIAMMOBILEAL366010290RETIREDRETIRED250.020-JUN-11NoneNoneNoneSA17A7361661C00410118P20002978Bachmann, MichelleHARVEY, WILLIAMMOBILEAL366010290RETIREDRETIRED50.023-JUN-11NoneNoneNoneSA17A7361662C00410118P20002978Bachmann, MichelleSMITH, LANIERLANETTAL368633403INFORMATION REQUESTEDINFORMATION REQUESTED250.005-JUL-11NoneNoneNoneSA17A7490733C00410118P20002978Bachmann, MichelleBLEVINS, DARONDAPIGGOTTAR724548253NONERETIRED250.001-AUG-11NoneNoneNoneSA17A7490734C00410118P20002978Bachmann, MichelleWARDENBURG, HAROLDHOT SPRINGS NATIONAR719016467NONERETIRED300.020-JUN-11NoneNoneNoneSA17A736166 对于HDF5格式文件的存取我也将在后面进行学习。鼓励感兴趣的同学自己探索不同的文件格式以了解它们的速度以及它们对在数据分析中的效果。 一、读取 Microsoft Excel 文件  pandas 支持使用ExcelFile 类或 pandas.read_excel 函数等读取存储在 Excel 2003及更高版本文件中的表格数据。但是在内部这些工具要使用附加组件包 xlrd 和 openpyxl 分别读取旧式 XLS 和较新的 XLSX 文件。我们可以使用 pip 或 conda分开安装。 pip install openpyxl xlrd 如果使用的是conda开发工具则可以使用 conda install openpyxl xlrd 使用 pandas的ExcelFile我们通过传递 xls 或 xlsx 文件的路径来创建实例这里使用的ex1.xlsx是一个二进制文件无法直接打开例如 xlsx pd.ExcelFile(examples/ex1.xlsx) 此xlsx对象可以显示文件中可用工作表名称的列表 xlsx.sheet_names 然后可以通过 parse 将存储在工作表中的数据读入 DataFrame加载为DataFrame后就可以方便的进行数据处理分析等。 xlsx.parse(sheet_nameSheet1) 输出 Unnamed: 0abcdmessage001234hello115678world229101112foo 从上面输出可以了解到这个 Excel 表格有一个索引列所以我们可以使用 index_col 参数来指示重新编码 xlsx.parse(sheet_nameSheet1, index_col0) 输出  abcdmessage01234hello15678world29101112foo 使用pandas.ExcelFile读取excel文件中的多个工作表会更快但我们也可以使用pandas.read_excel这个编写代码相对更简单同样接收文件名作为参数。例如 frame pd.read_excel(examples/ex1.xlsx, sheet_nameSheet1)  输出 Unnamed: 0abcdmessage001234hello115678world229101112foo 要将 pandas 数据写入 Excel 格式要先创建一个 ExcelWriter然后使用 pandas 对象的 to_excel 方法将数据写入其中 writer pd.ExcelWriter(examples/ex2.xlsx) frame.to_excel(writer, Sheet1) writer.save() 还可以将文件路径传递给 to_excel 而避免使用 ExcelWriter frame.to_excel(examples/ex2.xlsx)  二、使用 HDF5 格式 HDF5 是一种备受推崇的文件格式用于存储大量科学阵列数据。它以 C 库的形式提供并且具有许多其他编程语言的接口包括 Java、Julia、MATLAB 和 Python。HDF5 中的“HDF”代表分层数据格式。每个 HDF5 文件都可以存储多个数据集和支持元数据。与其他更简单的格式相比HDF5 支持具有多种压缩模式的动态压缩从而能够更高效地存储具有重复模式的数据。HDF5 是处理不适合内存的数据集的不错选择因为我们可以方便有效地读取和写入大数组中的小部分。 要开始使用 HDF5 和 pandas必须首先通过使用 pip 或 conda 安装 PyTables  pip install tables或 conda install pytables 注意PyTables 包在 PyPI 中称为 “tables”因此如果使用 pip 安装则必须运行 pip install tables 虽然可以使用 PyTables 或 h5py 库直接访问 HDF5 文件但 pandas 提供了一个高级接口可简化 Series 和 DataFrame 对象的存储。HDFStore 类的工作方式类似于字典。例如 import numpy as np import pandas as pdframe pd.DataFrame({a: np.random.standard_normal(100)}) store pd.HDFStore(examples/mydata.h5) store[obj1] frame store[obj1_col] frame[a] print(store) store.close() 以上代码会在examples目录中生成一个mydata.h5二进制文件该文件类似于字典存储了frame中的数据。同时控制台打印出了store对象的类型和该文件存储的位置 class pandas.io.pytables.HDFStore File path: examples/mydata.h5    可以使用相同的类似字典的方式检索 HDF5 文件中包含的对象 import numpy as np import pandas as pdframe pd.DataFrame({a: np.random.standard_normal(100)}) store pd.HDFStore(examples/mydata.h5) store[obj1] frame store[obj1_col] frame[a] #检索对象 obj1 store[obj1] print(obj1)store.close() 输出 a 0  -0.116291 1  -1.111014 2  -1.202469 3   0.436760 4  -0.989590 ..       ... 95 -1.201137 96  1.113517 97 -0.942226 98 -0.485934 99  0.590444 [100 rows x 1 columns] HDFStore 支持两种存储架构即 “fixed” 和 “table” 默认为 “fixed”。后者通常较慢但它支持使用特殊语法的查询操作例如 import numpy as np import pandas as pdframe pd.DataFrame({a: np.random.standard_normal(100)}) store pd.HDFStore(examples/mydata.h5) #默认fixed存储 store[obj1] frame store[obj1_col] frame[a]#设置table存储 store.put(obj2, frame, formattable) #根据条件查询需要的数据 a store.select(obj2, where[index 10 and index 15]) print(a) store.close() 输出 a 10  0.211580 11  0.196123 12 -0.869757 13 -1.543114 14 -0.566423 15  0.078732 还有更方便的方法DataFrame.to_hdf 和 pandas.read_hdf 上代码学习 import numpy as np import pandas as pdframe pd.DataFrame({a: np.random.standard_normal(100)})#将frame中的数据以table存储方式写入mydata.h5 frame.to_hdf(examples/mydata.h5, obj3, formattable) #读取前5行。 a pd.read_hdf(examples/mydata.h5, obj3, where[index 5])print(a)输出 a 0 -0.321670 1  0.011807 2  1.048680 3 -1.443384 4  0.312067 如果需要可以删除创建的 HDF5 文件如下所示 import osos.remove(examples/mydata.h5) 注意如果需要处理存储在远程服务器如 Amazon S3 或 HDFS上的数据则使用专为分布式存储设计的二进制格式如 Apache Parquet可能更合适。 如果是在本地处理大量数据可以更多的使用 PyTables 和 h5py但是基于以上的学习内容还不够需要深入了解他们的功能。由于许多数据分析问题都是 I/O 密集型而不是 CPU 密集型的因此 HDF5 这样的工具使用会极大的提高我们的访问效率。 另外一个要注意的是HDF5 不是数据库。它非常适合一次写入、多次读取的数据集。虽然我们可以随时将数据添加到HDF5 文件中但如果多个写入器同时写入则有可能会造成文件损坏。
http://www.hkea.cn/news/14432638/

相关文章:

  • 网站广告推送怎么做安装完wordpress第一件事
  • 一般网站用什么数据库宁波十大互联网企业
  • 钱包钱夹移动网站建设深圳网站搜索优化
  • 站长工具seo优化系统网站设计动画
  • 制作网站培训学校厦门双瑞高磁网站是谁做的
  • 如何编写网站淮北做网站的公司有哪些
  • 灌南县建设局网站鞍山网站制作价格
  • 做网站推广哪个好厦门网站制作案例
  • 个人怎么做自媒体花都网络推广seo公司
  • 北京住房和城乡建设局门户网站济南市建设执业资格注册中心网站
  • 母版页做网站例子做网页的软件哪个好用
  • 有南昌网站优化公司html基础知识思维导图
  • 福州网站建设推广平台欧莱雅旗下品牌
  • 视频网站 建设 硬件俄语免费网站制作
  • 温州网站建站织梦本地做的网站内网访问不
  • 外贸网站搭建公司个人中心网页设计
  • wordpress导航站的源码嵌入式应用软件开发流程
  • 国内专业网站建设cf租号网站怎么做的
  • 创意做美食视频网站dede网站建设很卡
  • 网站logo在哪里wordpress购物 app
  • 网站后台管理系统源码下载宝安建网站的公司
  • 合肥的房产网站建设个人怎么做自媒体
  • 深圳网站公司招聘阳信做网站
  • 网站设计介绍怎么写汉中市建设工程招投标交易中心官网
  • 笑话小网站模板html联合早报 即时消息
  • 青岛物流公司网站建设太原网站建设开发公司
  • 用php做网站要多久建行官方网站多少钱
  • 设计网站大全湖南岚鸿设计做网站费用分几块
  • 网站名称大全qingdao城乡住房建设厅网站
  • 自己动手建立网站3制作网站项目实例