使用字典键访问对象属性

2024-09-19 21:01:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将模型的超参数存储在数据帧中,其中要存储的确切参数存储为字典的键

在循环的每次迭代中,关键点的值被用来网格搜索最优值

例如,超参数字典可能如下所示:

hyperParams = {'C':[.0, 0.1, 1.], 'epsilon':[0., 0.1, 0.2]}

数据帧中存储这些值的元素是这样生成的:

for h in hyperParams.keys() :
    df[str(h)] = np.nan

如果参数是固定的,则存储特定值的代码如下所示:

df.loc[row_index, 'C'] = regressor.C

但是,参数(回归器的属性)存储为键

我试过这个:

for h in hyperParams.keys() :
    df.loc[row_index, str(h)] = regressor.h

还有这个:

for h in hyperParams.keys() :
    df.loc[row_index, str(h)] = regressor.str(h)

然而,两者都不是回归者对象的属性

有没有办法从字典的键中调用这个对象的属性


Tags: 数据对象indffor参数index字典
1条回答
网友
1楼 · 发布于 2024-09-19 21:01:11

您可以使用Python的内置^{}函数。getattr函数的参数应该是对象和要从对象中获取的属性的字符串值。所以在你的情况下你可以做getattr(regressor, h)

相关问题 更多 >