pandas DataFrame attrs的实现示例

 更新时间:2025年07月01日 09:19:22   作者:liuweidong0802  
pandas.DataFrame.attrs是一个字典类型的属性,用于存储与 DataFrame 关联的全局元数据,这些元数据不会影响DataFrame的计算行为,感兴趣的可以了解一下

Metadata

方法描述
DataFrame.attrs用于存储与 DataFrame 关联的全局元数据(metadata)

pandas.DataFrame.attrs

pandas.DataFrame.attrs 是一个字典类型的属性,用于存储与 DataFrame 关联的全局元数据(metadata)。这些元数据不会影响 DataFrame 的计算行为,但可以用来记录一些附加信息,例如数据来源、作者、单位、描述等。

📌 属性说明

  • 类型dict(字典)
  • 默认值:空字典 {}

你可以通过 df.attrs 获取或设置这个字典。

✅ 示例

示例 1: 设置和获取 DataFrame 的 attrs

import pandas as pd

# 创建一个 DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': [4, 5, 6]
})

# 设置 attrs
df.attrs['author'] = 'Alice'
df.attrs['description'] = '实验数据'
df.attrs['unit'] = 'kg'

# 打印 attrs
print(df.attrs)

输出:

{'author': 'Alice', 'description': '实验数据', 'unit': 'kg'}

示例 2: 获取单个属性

# 获取单个属性
print(df.attrs['description'])

输出:

实验数据

示例 3: 默认情况下 attrs 是空的

# 新建的 DataFrame 的 attrs 默认为空
df2 = pd.DataFrame({'X': [10, 20]})
print(df2.attrs)

输出:

{}

示例 4: 使用 attrs 在函数间传递元信息

def process_data(data):
    print(f"处理数据:{data.attrs.get('description', '无描述')}")
    return data * 2

result = process_data(df)
print(result)

输出:

处理数据:实验数据
   A  B
0  2  8
1  4 10
2  6 12

⚠️ 注意事项

  • attrs 不会参与任何 pandas 操作(如合并、分组、运算等),因此在操作后可能会丢失。
  • 如果你希望保留 attrs,建议在自定义函数中手动复制。

✅ 总结

特性说明
类型字典 dict
用途存储额外的元数据,如描述、单位、作者等
默认空字典 {}
使用方式df.attrs['key'] = value
注意不会被大多数 pandas 操作保留

如果你有更多关于 pandas 元数据或其他特性的疑问,欢迎继续提问!

到此这篇关于pandas DataFrame attrs的实现示例的文章就介绍到这了,更多相关pandas DataFrame attrs内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python超简单容易上手的画图工具库推荐

    Python超简单容易上手的画图工具库推荐

    今天小编给大家分享一款很棒的python画图工具库,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2021-05-05
  • 分享十个Python超级好用提高工作效率的自动化脚本

    分享十个Python超级好用提高工作效率的自动化脚本

    在这个自动化时代,我们有很多重复无聊的工作要做。 想想这些你不再需要一次又一次地做的无聊的事情,让它自动化,让你的生活更轻松。本文分享了10个Python自动化脚本,希望对大家有所帮助
    2022-11-11
  • 使用Python操作MySql数据库和MsSql数据库

    使用Python操作MySql数据库和MsSql数据库

    这篇文章介绍了使用Python操作MySql数据库和MsSql数据库的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • 使用Python快速搭建文件传输服务的方法

    使用Python快速搭建文件传输服务的方法

    这篇文章主要介绍了使用Python快速搭建一个文件传输服务,这样任何一个人都能打开浏览器把他电脑上的文件传给我了,本文给大家介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • python开发之anaconda以及win7下安装gensim的方法

    python开发之anaconda以及win7下安装gensim的方法

    这篇文章主要介绍了python开发之anaconda以及win7下安装gensim的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • python 通过类中一个方法获取另一个方法变量的实例

    python 通过类中一个方法获取另一个方法变量的实例

    今天小编就为大家分享一篇python 通过类中一个方法获取另一个方法变量的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • pytorch GPU和CPU模型相互加载方式

    pytorch GPU和CPU模型相互加载方式

    在PyTorch中,保存和加载模型有两种主要方式:直接保存整个模型结构加权重,或者只保存模型的参数,直接保存整个模型的方法简单,但不够灵活,且可能存在模型结构不一致的风险,推荐的做法是只保存模型参数,这种方法需要在加载前定义与原模型结构相同的模型
    2024-09-09
  • python关键字and和or用法实例

    python关键字and和or用法实例

    这篇文章主要介绍了python关键字and和or用法实例,本文直接给出实现代码,需要的朋友可以参考下
    2015-05-05
  • Python多线程编程(二):启动线程的两种方法

    Python多线程编程(二):启动线程的两种方法

    这篇文章主要介绍了Python多线程编程(一):启动线程的两种方法,本文讲解了将函数传递进Thread对象、继承自threading.Thread类两种方法,需要的朋友可以参考下
    2015-04-04
  • python图像处理-利用一行代码实现灰度图抠图

    python图像处理-利用一行代码实现灰度图抠图

    这篇文章主要介绍了python图像处理-利用一行代码实现灰度图抠图,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05

最新评论