python – Pandas _Dataadata DataFrame持久性错误

我终于想出了如何使用DataFrame中的_Metadata,一切正常,除了我无法坚持它,如hdf5或json.我知道它有效,因为我复制框架和_Metadata属性复制“非_Metadata”属性不.

df = pandas.DataFrame #make up a frame to your liking
pandas.DataFrame._Metadata = ["testMeta"]
df.testMeta = "testMetaval"
df.badMeta = "badMetaval"
newframe = df.copy()
newframe.testMeta -->outputs "testMetaval"
newframe.badMeta ---> raises attribute error

#json test
df.to_json(Path)
revivedjsonframe = pandas.io.json.read_json(Path)
revivedjsonframe.testMeta ---->raises Attribute Error

#hdf5 test
revivedhdf5frame.testMeta ---> returns None

这个人https://stackoverflow.com/a/25715719/4473236说它对他有用,但我是这个网站(和熊猫)的新手,不能发帖到那个帖子或直接问他.

解决方法:

_Metadata以下划线开头,这意味着它不是公共API的一部分.它不适用于用户代码 – 我们可能会在没有警告的任何未来版本的pandas中破坏它.

我强烈建议不要使用这个“功能”.目前,使用DataFrame保存元数据的最佳选择可能是编写自己的包装类并自己处理持久性.

相关文章

转载:一文讲述Pandas库的数据读取、数据获取、数据拼接、数...
Pandas是一个开源的第三方Python库,从Numpy和Matplotlib的基...
整体流程登录天池在线编程环境导入pandas和xrld操作EXCEL文件...
 一、numpy小结             二、pandas2.1为...
1、时间偏移DateOffset对象DateOffset类似于时间差Timedelta...
1、pandas内置样式空值高亮highlight_null最大最小值高亮背景...