Skip to content

Commit f315cd4

Browse files
committed
Input array change to allow score code to work for pandas>=2.0. Removed unneeded imports for h2o models.
1 parent 07bb16b commit f315cd4

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

src/sasctl/pzmm/write_score_code.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -401,7 +401,7 @@ def _write_imports(
401401

402402
if mojo_model or binary_h2o_model:
403403
cls.score_code += (
404-
"import h2o\nimport gzip\nimport shutil\nimport os\n\nh2o.init()\n\n"
404+
"import h2o\n\nh2o.init()\n\n"
405405
)
406406
elif binary_string:
407407
cls.score_code += (
@@ -509,11 +509,11 @@ def _viya4_model_load(
509509
if mojo_model:
510510
cls.score_code += (
511511
f"model = h2o.import_mojo(str(Path(settings.pickle_path"
512-
f") / {model_file_name}))\n\n"
512+
f") / \"{model_file_name}\"))\n\n"
513513
)
514514
return (
515515
f"{'':8}model = h2o.import_mojo(str(Path(settings.pickle_path) / "
516-
f"{model_file_name}))\n\n"
516+
f"\"{model_file_name}\"))\n\n"
517517
)
518518
elif binary_h2o_model:
519519
cls.score_code += (
@@ -527,8 +527,8 @@ def _viya4_model_load(
527527
else:
528528
cls.score_code += (
529529
f"with open(Path(settings.pickle_path) / "
530-
f'"{model_file_name}", "rb") as pickle_model:\n '
531-
f"model = {pickle_type}.load(pickle_model)\n\n"
530+
f'\"{model_file_name}\", "rb") as pickle_model:\n'
531+
f"{'':4}model = {pickle_type}.load(pickle_model)\n\n"
532532
)
533533
return (
534534
f"{'':8}with open(Path(settings.pickle_path) / "
@@ -644,7 +644,7 @@ def _predict_method(
644644
cls.score_code += (
645645
f"{'':4}input_array = pd.DataFrame("
646646
f"[[{', '.join(var_list)}]],\n{'':31}columns=["
647-
f"{column_names}],\n{'':31}dtype=float,\n{'':31}"
647+
f"{column_names}],\n{'':31}dtype=object,\n{'':31}"
648648
f"index=[0])\n{'':4}column_types = {column_types}\n"
649649
f"{'':4}h2o_array = h2o.H2OFrame(input_array, "
650650
f"column_types=column_types)\n{'':4}prediction = "
@@ -656,15 +656,15 @@ def _predict_method(
656656
cls.score_code += (
657657
f"{'':4}inputArray = pd.DataFrame("
658658
f"[[1.0, {', '.join(var_list)}]],\n{'':29}columns=["
659-
f"\"const\", {column_names}],\n{'':29}dtype=float)\n"
659+
f"\"const\", {column_names}],\n{'':29}dtype=object)\n"
660660
f"{'':4}prediction = model.{method.__name__}"
661661
f"(input_array)\n"
662662
)
663663
else:
664664
cls.score_code += (
665665
f"{'':4}input_array = pd.DataFrame("
666666
f"[[{', '.join(var_list)}]],\n{'':30}columns=["
667-
f"{column_names}],\n{'':30}dtype=float)\n{'':4}"
667+
f"{column_names}],\n{'':30}dtype=object)\n{'':4}"
668668
f"prediction = model.{method.__name__}(input_array)\n"
669669
)
670670

0 commit comments

Comments
 (0)