我是 Python 编程的新手。我正在开发一个项目,该项目涉及创建一个 7 维数据变量,我正在尝试使用从 pandas 中的 ndpanel_factory 创建的 7 D 面板。
使用 ndpanel 对象的在线文档不多(我知道它是实验性的,但如果他们已经发布它,我认为它必须具有基本功能)
我有几个疑问:
1. 切片器的重要性是什么?我已经成功地创建了一个 7dpanel 类,首先创建了一个 5dpanel 和 6dpanel,每个都是前一个的切片器。这种层次结构是必要的还是我作为一个新手理解它的方式是错误的?
2. DataFrame 类的哪些功能可以扩展为 ndpanel 对象?我必须存储这个变量(类似于 df_to_hdf)以供将来操作。
from pandas.core import panelnd
import pandas as pd
Panel5D = panelnd.create_nd_panel_factory(
klass_name = 'Panel5D',
axis_orders = [ 'cool', 'labels','items','major_axis','minor_axis'],
axis_slices = { 'labels' : 'labels', 'items' : 'items',
'major_axis' : 'major_axis', 'minor_axis' : 'minor_axis' },
slicer = pd.Panel4D,
axis_aliases = { 'major' : 'major_axis', 'minor' : 'minor_axis' },
stat_axis = 2)
Panel6D = panelnd.create_nd_panel_factory(
klass_name = 'Panel6D',
axis_orders = [ 'xtracool', 'cool', 'labels','items','major_axis','minor_axis'],
axis_slices = { 'cool':'cool', 'labels' : 'labels', 'items' : 'items',
'major_axis' : 'major_axis', 'minor_axis' : 'minor_axis' },
slicer = Panel5D,
axis_aliases = { 'major' : 'major_axis', 'minor' : 'minor_axis' },
stat_axis = 2)
Panel7D = panelnd.create_nd_panel_factory(
klass_name = 'Panel7D',
axis_orders = [ 'superxtracool', 'xtracool', 'cool', 'labels','items','major_axis','minor_axis'],
axis_slices = { 'xtracool':'xtracool', 'cool':'cool', 'labels' : 'labels', 'items' : 'items',
'major_axis' : 'major_axis', 'minor_axis' : 'minor_axis' },
slicer = Panel6D,
axis_aliases = { 'major' : 'major_axis', 'minor' : 'minor_axis' },
stat_axis = 2)
p7d = Panel7D(random.randn(2, 5, 3, 2, 10, 4, 7))
我的项目
我正在尝试通过使用类似于网格搜索的方法来优化特定算法序列的变量,但我需要优化的变量位于不同的脚本中。此外,目标函数不容易描述。因此,我使用我打算存储的数据手动构建一个 7D 对象,并针对不同的变量进行绘图。老实说,我必须查看的值的数量较少所以我不想涉足任何信号处理/机器学习。