首页 > Python资料 博客日记
Python酷库之旅-第三方库Pandas(012)
2024-07-18 00:00:04Python资料围观82次
目录
一、用法精讲
28、pandas.HDFStore.keys函数
28-1、语法
# 28、pandas.HDFStore.keys函数
HDFStore.keys(include='pandas')
Return a list of keys corresponding to objects stored in HDFStore.
Parameters:
include
str, default ‘pandas’
When kind equals ‘pandas’ return pandas objects. When kind equals ‘native’ return native HDF5 Table objects.
Returns:
list
List of ABSOLUTE path-names (e.g. have the leading ‘/’).
Raises:
raises ValueError if kind has an illegal value.
28-2、参数
28-2-1、include(可选):用于控制返回的键的类型或格式。
include参数允许你指定一个过滤器,以限制keys()方法返回的键的类型,它接受以下值之一(或其组合,通过列表或元组提供):
28-2-1-1、'all'(默认值):返回所有类型的键。
28-2-1-2、'group':仅返回组(HDF5中的目录或容器)的键。
28-2-1-3、'table'或'dataframe':仅返回以表格形式存储的DataFrame的键(HDF5 中的表格)。
28-2-1-4、'fixed'或'series'或'scalar':仅返回以固定格式存储的Series或单个值的键。
28-3、功能
返回存储在HDF5文件中所有对象的键(即名称)的列表。
28-4、返回值
返回一个包含字符串的列表,每个字符串都是一个存储在HDF5文件中的对象的键(名称),这些键是对象的绝对路径名,通常以/开头。
28-5、说明
HDF5(Hierarchical Data Format version 5)是一种用于存储和组织大量数据的文件格式,它特别适合于存储和组织大量科学数据。
28-6、用法
28-6-1、数据准备
无
28-6-2、代码示例
# 28、pandas.HDFStore.keys函数
import pandas as pd
# 假设'example.h5'是你的HDF5文件名
with pd.HDFStore('example.h5') as store:
# 获取所有键
all_keys = store.keys()
# 过滤出仅包含DataFrame的键
df_keys = [key for key in all_keys if store.get_storer(key).is_table]
# 过滤出仅包含Series的键
series_keys = [key for key in all_keys if not store.get_storer(key).is_table]
# 如果你想同时获取DataFrame和Series的键,可以这样做
all_pandas_keys = df_keys + series_keys
if __name__ == '__main__':
# 打印结果以供检查
print(f"DataFrame keys: {df_keys}")
print(f"Series keys: {series_keys}")
print(f"All keys: {all_pandas_keys}")
28-6-3、结果输出
# 28、pandas.HDFStore.keys函数
# DataFrame keys: ['/data']
# Series keys: []
# All keys: ['/data']
29、pandas.HDFStore.groups函数
29-1、语法
# 29、pandas.HDFStore.groups函数
HDFStore.groups()
Return a list of all the top-level nodes.
Each node returned is not a pandas storage object.
Returns:
list
List of objects.
29-2、参数
无
29-3、功能
用于列出存储在HDF5文件中的所有组(或称为“目录”或“容器”)的信息。
29-4、返回值
HDFStore.groups()方法的返回值通常包含以下信息:
29-4-1、组名:每个组的名称,它通常是一个字符串,表示HDF5文件中的路径。
29-4-2、键:每个组内包含的键(即,对象的名称),这些键对应于存储在组中的DataFrame、Series或其他pandas对象。
29-4-3、子组:如果有的话,还可能包含关于子组的信息。不过,请注意,并不是所有的实现都会返回子组信息,这取决于pandas的版本和HDF5文件的结构。
29-5、说明
无
29-6、用法
29-6-1、数据准备
无
29-6-2、代码示例
# 29、pandas.HDFStore.groups函数
import pandas as pd
import numpy as np
# 创建一些示例数据
df1 = pd.DataFrame(np.random.randn(10, 4), columns=list('ABCD'))
df2 = pd.DataFrame(np.random.randn(10, 4), columns=list('EFGH'))
series1 = pd.Series(np.random.randn(10), name='series1')
# 创建并写入数据到HDF5文件
with pd.HDFStore('example.h5') as store:
store.put('dataframe1', df1)
store.put('dataframe2', df2)
store.put('series1', series1)
# 使用HDFStore.groups()列出文件中的所有组
with pd.HDFStore('example.h5') as store:
groups = store.groups()
print("Groups in HDF5 file:")
for group in groups:
print(group)
29-6-3、结果输出
# 29、pandas.HDFStore.groups函数
# Groups in HDF5 file:
# /data (Group) ''
# /dataframe1 (Group) ''
# /dataframe2 (Group) ''
# /series1 (Group) ''
30、pandas.HDFStore.walk函数
30-1、语法
# 30、pandas.HDFStore.walk函数
HDFStore.walk(where='/')
Walk the pytables group hierarchy for pandas objects.
This generator will yield the group path, subgroups and pandas object names for each group.
Any non-pandas PyTables objects that are not a group will be ignored.
The where group itself is listed first (preorder), then each of its child groups (following an alphanumerical order) is also traversed, following the same procedure.
Parameters:
where
str, default “/”
Group where to start walking.
Yields:
path
str
Full path to a group (without trailing ‘/’).
groups
list
Names (strings) of the groups contained in path.
leaves
list
Names (strings) of the pandas objects contained in path.
30-2、参数
30-2-1、where(可选,默认值为'/'):字符串,指定了遍历的起始位置。默认为根目录('/'),意味着从HDF5文件的根开始遍历,你可以指定任何有效的路径来从文件的某个特定部分开始遍历。
30-3、功能
用于遍历存储在HDF5文件中的键(keys)或节点(nodes)。
30-4、返回值
返回一个生成器(generator),它会产生一个包含两个元素的元组(tuple):(key, group)。
30-4-1、key: 当前遍历到的键(或路径)的字符串表示。
30-4-2、group: 一个pandas._libs.lib.H5Group对象,表示当前遍历到的组(或数据集)。注意,对于数据集(dataset),这个对象可能不是非常有用,因为HDF5的组(group)和数据集(dataset)在pandas的HDFStore中以不同的方式处理。
30-5、说明
无
30-6、用法
30-6-1、数据准备
无
30-6-2、代码示例
# 30、pandas.HDFStore.walk函数
import pandas as pd
import numpy as np
# 创建一个示例HDF5文件
file_path = 'example.h5'
with pd.HDFStore(file_path, mode='w') as store:
# 写入一些数据
store.put('df1', pd.DataFrame(np.random.randn(10, 4), columns=list('ABCD')))
store.put('df2', pd.DataFrame(np.random.randn(10, 4), columns=list('WXYZ')))
store.put('subdir/df3', pd.DataFrame(np.random.randn(10, 4), columns=list('JKLM')))
# 使用walk方法遍历HDF5文件
with pd.HDFStore(file_path, mode='r') as store:
print("Walking through the HDF5 file structure:")
for root, dirs, files in store.walk(where='/'):
print(f"Root: {root}")
print(f"Directories: {dirs}")
print(f"Files: {files}")
print("-" * 40)
30-6-3、结果输出
# 30、pandas.HDFStore.walk函数
# Walking through the HDF5 file structure:
# Root:
# Directories: ['subdir']
# Files: ['df1', 'df2']
# ----------------------------------------
# Root: /subdir
# Directories: []
# Files: ['df3']
# ----------------------------------------
二、推荐阅读
1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页
标签:
相关文章
最新发布
- 【Python】selenium安装+Microsoft Edge驱动器下载配置流程
- Python 中自动打开网页并点击[自动化脚本],Selenium
- Anaconda基础使用
- 【Python】成功解决 TypeError: ‘<‘ not supported between instances of ‘str’ and ‘int’
- manim边学边做--三维的点和线
- CPython是最常用的Python解释器之一,也是Python官方实现。它是用C语言编写的,旨在提供一个高效且易于使用的Python解释器。
- Anaconda安装配置Jupyter(2024最新版)
- Python中读取Excel最快的几种方法!
- Python某城市美食商家爬虫数据可视化分析和推荐查询系统毕业设计论文开题报告
- 如何使用 Python 批量检测和转换 JSONL 文件编码为 UTF-8
点击排行
- 版本匹配指南:Numpy版本和Python版本的对应关系
- 版本匹配指南:PyTorch版本、torchvision 版本和Python版本的对应关系
- Python 可视化 web 神器:streamlit、Gradio、dash、nicegui;低代码 Python Web 框架:PyWebIO
- 相关性分析——Pearson相关系数+热力图(附data和Python完整代码)
- Anaconda版本和Python版本对应关系(持续更新...)
- Python与PyTorch的版本对应
- Windows上安装 Python 环境并配置环境变量 (超详细教程)
- Python pyinstaller打包exe最完整教程