大家好,
我使用神经网络函数从 JMP 导出了 python 代码。 我正在尝试在 Spyder 上运行代码,但有一个名为“jmp.mz”的函数,我不知道如何替换它。 我不知道这个功能是做什么的。
谁能帮我这个? 预先感谢您的宝贵时间。
祝你今天过得愉快。
艾莉森
我不确定你做了什么。 我以大班为例。 我建模了:重量和:年龄, :性别, 和:高度作为输入。 我将模型发布到 Formula Depot。 我生成了Python代码。 这里是:
from __future__ import division
import jmp_score as jmp
from math import *
import numpy as np
""" ====================================================================
Copyright (C) 2022-2023 JMP Statistical Discovery LLC. All rights reserved.
Notice: The following permissions are granted provided that the above
copyright and this notice appear in the score code and any related
documentation. Permission to copy, modify and distribute the score
code generated using JMP (r) software is limited to customers of JMP
Statistical Discovery LLC ("JMP") and successive third parties, all
without any warranty, express or implied, or any other obligation by
JMP. JMP and all other JMP Statistical Discovery LLC product and
service names are registered trademarks or trademarks of JMP
Statistical Discovery LLC in the USA and other countries. Except as
contained in this notice, the name of JMP shall not be used in the
advertising or promotion of products or services without prior
written authorization from JMP Statistical Discovery LLC.
==================================================================== """
""" Python code generated by JMP 17.2.0 """
def getModelMetadata():
return {"creator": u"Neural", "modelName": u"", "predicted": u"weight", "table": u"Big Class", "version": u"17.2.0", "timestamp": u"2023-06-22T15:05:18Z"}
def getInputMetadata():
return {
u"age": "float",
u"height": "float",
u"sex": "str"
}
def getOutputMetadata():
return {
u"Predicted weight": "float"
}
def score(indata, outdata):
sex_asCode = jmp.match(indata[u"sex"],{u"F":0,u"M":1}, np.nan)
H1_1 = tanh((12.9380978259799 + -0.216077718694819 * indata[u"height"] + 0.5 * jmp.match(indata[u"age"],{12:-0.0752869145775503,13:1.43808466048513,14:2.51676030243735,15:1.74966392837427,16:-3.99748804536747,17:-1.63173393135173}, np.nan) + 0.5 * jmp.match(sex_asCode,{0:-1.0888433588967,1:1.0888433588967}, np.nan)))
H1_2 = tanh((19.7761183161641 + -0.331952318291445 * indata[u"height"] + 0.5 * jmp.match(indata[u"age"],{12:-0.476738410666868,13:-2.86567218066002,14:0.848951695382413,15:1.24849250460232,16:6.92106266494234,17:-5.67609627360018}, np.nan) + 0.5 * jmp.match(sex_asCode,{0:1.56127362393991,1:-1.56127362393991}, np.nan)))
H1_3 = tanh((1.43246192499634 + -0.037575857404148 * indata[u"height"] + 0.5 * jmp.match(indata[u"age"],{12:-0.519079596013513,13:-2.26923722344442,14:3.65113577518731,15:2.78561481785367,16:1.59523547291602,17:-5.24366924649907}, np.nan) + 0.5 * jmp.match(sex_asCode,{0:-0.207032194138191,1:0.207032194138191}, np.nan)))
outdata[u"Predicted weight"] = 100.343111337815 + -28.0586522707582 * H1_1 + -16.1719623964746 * H1_2 + 2.89859037837539 * H1_3
return outdata[u"Predicted weight"]
我没有看到你问的功能。
mz() 函数在 jmp_score.py 中定义,该函数在评分代码的第一行中导入。
import jmp_score as jmp
您可以在以下位置找到 jmp_score.py:
苹果
/库/应用程序支持/JMP/17/scoring/Python
视窗
C:\Program Files\SAS\JMPPRO\17\Scoring\Python