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

wordpress设置固定链接和伪静态seo外链工具下载

wordpress设置固定链接和伪静态,seo外链工具下载,为什么网站找不到了,有没有外国网站可以做兼职翻译的以二进制格式存储(或序列化)数据的一种简单方法是使用 Python 的内置 pickle 模块。同时,pandas 构造的对象都有一个 to_pickle 方法,该方法以 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")  可以打印出来会输出以下内容:

abcdmessage
01234hello
15678world
29101112foo

注意: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_num
0C00410118P20002978Bachmann, MichelleHARVEY, WILLIAMMOBILEAL366010290RETIREDRETIRED250.020-JUN-11NoneNoneNoneSA17A736166
1C00410118P20002978Bachmann, MichelleHARVEY, WILLIAMMOBILEAL366010290RETIREDRETIRED50.023-JUN-11NoneNoneNoneSA17A736166
2C00410118P20002978Bachmann, MichelleSMITH, LANIERLANETTAL368633403INFORMATION REQUESTEDINFORMATION REQUESTED250.005-JUL-11NoneNoneNoneSA17A749073
3C00410118P20002978Bachmann, MichelleBLEVINS, DARONDAPIGGOTTAR724548253NONERETIRED250.001-AUG-11NoneNoneNoneSA17A749073
4C00410118P20002978Bachmann, 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_name="Sheet1")

输出:

Unnamed: 0abcdmessage
001234hello
115678world
229101112foo

 从上面输出可以了解到这个 Excel 表格有一个索引列,所以我们可以使用 index_col 参数来指示,重新编码:

xlsx.parse(sheet_name="Sheet1", index_col=0)

输出: 

abcdmessage
01234hello
15678world
29101112foo

使用pandas.ExcelFile读取excel文件中的多个工作表会更快,但我们也可以使用pandas.read_excel,这个编写代码相对更简单,同样接收文件名作为参数。例如:

frame = pd.read_excel("examples/ex1.xlsx", sheet_name="Sheet1") 

 输出:

Unnamed: 0abcdmessage
001234hello
115678world
229101112foo

要将 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, format="table")
#根据条件查询需要的数据
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", format="table")
#读取前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.mnyf.cn/news/42849.html

相关文章:

  • 广东网站推广拼多多关键词优化步骤
  • 网站空间到期查询百度浏览器官网在线使用
  • 网站后台左侧导航折叠效果打不开怎样自己做网站
  • 公安网站备案要多长时间东莞优化怎么做seo
  • 做网络销售怎么建立网站企业网站怎么推广
  • 海淀商城网站建设短视频运营培训学费多少
  • 住房城乡建设门户网站个人网站注册平台
  • app开发流程 网站开发今天实时热搜榜排名
  • 怎么样制作网站教程搜索量查询
  • 管理公司网站建设湖南seo推广软件
  • 兰州网站运营诊断西地那非
  • 云服务器建立多个网站吗排名第一的玉米品种
  • 类似于美团的网站怎么做淘宝优化标题都是用什么软件
  • 哪些网站可以上传自己做的视频知识付费小程序搭建
  • 河北网站建设品牌大全网站推广和精准seo
  • 如何打造网站广州网站优化方案
  • 重庆网站快速排名优化杭州网站建设
  • 做视频网站公司要怎么做的智慧营销系统平台
  • 一个域名可以建几个网站企业qq官网
  • 深圳品牌网站制作推荐长沙官网seo分析
  • 做鲜榨果汁店网站线上电脑培训班
  • 重庆建设工程信息网站对网络营销的认识
  • 如何组建做网站的团队搜索引擎优化的方法与技巧
  • 泰州谁会建网站做推广网络
  • 免费网站建设排行榜全国免费发布广告信息
  • 自己域名做网站新闻头条 今天
  • wordpress主题二次元优化大师
  • 怎么自己创建网站免费百度招聘平台
  • 美发培训网站竞价推广思路
  • 国外flash网站模板镇江优化推广