def test1(): badFrame = H2OFrame({"one": [4, 6, 1], "two": ["a", "b", "cde"], "three": [0, 5.2, 14]}) badClone = H2OFrame({"one": [4, 6, 1], "two": ["a", "b", "cde"], "three": [0, 5.2, 14]}) compare_frames(badFrame, badClone) try: badFrame.asfactor() assert False, "The frame contaied a real number, an error should be thrown" except H2OValueError: # as designed pass compare_frames(badFrame, badClone) originalAfterOp = H2OFrame.get_frame(badFrame.frame_id) compare_frames(badFrame, originalAfterOp) goodFrame = H2OFrame({"one": [4, 6, 1], "two": ["a", "b", "cde"]}) goodClone = H2OFrame({"one": [4, 6, 1], "two": ["a", "b", "cde"]}) compare_frames(goodFrame, goodClone) factoredFrame = goodFrame.asfactor() originalAfterOp = H2OFrame.get_frame(goodFrame.frame_id) compare_frames(goodFrame, originalAfterOp) expectedFactoredFrame = H2OFrame({"one": [4, 6, 1], "two": ["a", "b", "cde"]}, column_types={"one":"categorical", "two": "enum"}) compare_frames(expectedFactoredFrame, factoredFrame) refactoredFrame = expectedFactoredFrame.asfactor() factoredAfterOp = H2OFrame.get_frame(refactoredFrame.frame_id) compare_frames(expectedFactoredFrame, factoredAfterOp)
def frame_in_cluster(frame): # reload the first row of the frame to verify that no vec has been removed return frame.key is not None and H2OFrame.get_frame(frame.key, rows=1) is not None