water.api
Class FrameSplit

java.lang.Object
  extended by water.Iced
      extended by water.api.Constants
          extended by water.api.RequestStatics
              extended by water.api.RequestArguments
                  extended by water.api.RequestQueries
                      extended by water.api.RequestBuilders
                          extended by water.api.Request
                              extended by water.Request2
                                  extended by water.api.FrameSplit
All Implemented Interfaces:
java.lang.Cloneable, Freezable

public class FrameSplit
extends Request2


Nested Class Summary
static class FrameSplit.FrameSplitter
          split a frame into multiple frames, with the data split as desired
NB: this allocates fvecs; caller is responsible for remove-ing them

TODO: pregenerate random numbers and make deterministic
TODO: allow perfect splitting instead of at-random, particularly for unit tests
 
Nested classes/interfaces inherited from class water.Request2
Request2.ColumnSelect, Request2.Dependent, Request2.DoClassBoolean, Request2.MultiVecSelect, Request2.MultiVecSelectType, Request2.TypeaheadKey, Request2.VecClassSelect, Request2.VecSelect
 
Nested classes/interfaces inherited from class water.api.Request
Request.API, Request.Default, Request.Filter
 
Nested classes/interfaces inherited from class water.api.RequestBuilders
RequestBuilders.ArrayBuilder, RequestBuilders.ArrayHeaderRowBuilder, RequestBuilders.ArrayRowBuilder, RequestBuilders.ArrayRowElementBuilder, RequestBuilders.ArrayRowSingleColBuilder, RequestBuilders.BooleanStringBuilder, RequestBuilders.Builder, RequestBuilders.ElementBuilder, RequestBuilders.HideBuilder, RequestBuilders.KeyCellBuilder, RequestBuilders.KeyElementBuilder, RequestBuilders.KeyLinkElementBuilder, RequestBuilders.KeyMinAvgMaxBuilder, RequestBuilders.NoCaptionObjectBuilder, RequestBuilders.ObjectBuilder, RequestBuilders.PaginatedTable, RequestBuilders.PreFormattedBuilder, RequestBuilders.Response, RequestBuilders.WarningCellBuilder
 
Nested classes/interfaces inherited from class water.api.RequestArguments
RequestArguments.Argument<T>, RequestArguments.Bool, RequestArguments.CaseModeSelect, RequestArguments.CaseSelect, RequestArguments.ClassifyBool, RequestArguments.EnumArgument<T extends java.lang.Enum<T>>, RequestArguments.ExistingFile, RequestArguments.FrameClassVec, RequestArguments.FrameKeyMultiVec, RequestArguments.FrameKeyVec, RequestArguments.H2OCategoryStrata, RequestArguments.H2OCategoryWeights, RequestArguments.H2OExistingKey, RequestArguments.H2OGLMModelKey, RequestArguments.H2OHexKey, RequestArguments.H2OHexKeyCol, RequestArguments.H2OKey, RequestArguments.H2OKey2, RequestArguments.H2OKMeansModelKey, RequestArguments.H2OModelKey<TM extends OldModel,TK extends TypeaheadKeysRequest>, RequestArguments.H2OPCAModelKey, RequestArguments.HexAllColumnSelect, RequestArguments.HexColumnSelect, RequestArguments.HexKeyClassCol, RequestArguments.HexNonClassColumnSelect, RequestArguments.HexNonConstantColumnSelect, RequestArguments.HexPCAColumnSelect, RequestArguments.InputCheckBox, RequestArguments.InputSelect<T>, RequestArguments.InputText<T>, RequestArguments.Int, RequestArguments.LongInt, RequestArguments.MultipleSelect<T>, RequestArguments.MultipleText<T>, RequestArguments.NTree, RequestArguments.NumberSequence, RequestArguments.Real, RequestArguments.Record<T>, RequestArguments.RFModelKey, RequestArguments.RSeq, RequestArguments.Str, RequestArguments.StringList, RequestArguments.TypeaheadInputText<T>
 
Nested classes/interfaces inherited from class water.api.RequestStatics
RequestStatics.RequestType
 
Nested classes/interfaces inherited from class water.api.Constants
Constants.Extensions, Constants.Schemes, Constants.Suffixes
 
Field Summary
 java.lang.String destination_keys
           
static DocGen.FieldDoc[] DOC_FIELDS
           
 double[] fractions
           
static java.lang.String KEY_PREFIX
           
 Frame source
           
 
Fields inherited from class water.api.Request
_requestHelp, SUPPORTS_ONLY_V1, SUPPORTS_ONLY_V2, SUPPORTS_V1_V2
 
Fields inherited from class water.api.RequestBuilders
ARRAY_BUILDER, ARRAY_HEADER_ROW_BUILDER, ARRAY_ROW_BUILDER, ARRAY_ROW_ELEMENT_BUILDER, ARRAY_ROW_SINGLECOL_BUILDER, ELEMENT_BUILDER, GSON_BUILDER, OBJECT_BUILDER, ROOT_OBJECT
 
Fields inherited from class water.api.RequestQueries
_queryHtml
 
Fields inherited from class water.api.RequestArguments
_arguments
 
Fields inherited from class water.api.Constants
ALPHA, ARGUMENTS, AUC, BASE, BEST_THRESHOLD, BETA_EPS, BIN_LIMIT, BROWSE, BUCKET, BUILT_IN_KEY_JOBS, CANCELLED, CASE, CASE_MODE, CHUNK, CLASS, CLOUD_NAME, CLOUD_SIZE, CLUSTERS, COEFFICIENTS, COLS, COLUMNS_DISPLAY, CONSENSUS, CONTENTS, COUNT, DATA_KEY, DEPTH, DESCRIPTION, DEST_KEY, DTHRESHOLDS, END_TIME, ENUM_DOMAIN_SIZE, ERROR, ESCAPE_NAN, EXCLUSIVE_SPLIT_LIMIT, EXPRESSION, FAILED, FAMILY, FEATURES, FILE, FILES, FILTER, FIRST_CHUNK, FJ_QUEUE_HI, FJ_QUEUE_LO, FJ_THREADS_HI, FJ_THREADS_LO, FREE_DISK, FREE_MEM, HEADER, HEIGHT, HELP, IGNORE, ITEMS, ITERATIVE_CM, JOB, JOB_KEY, JOBS, JSON_H2O, KEY, KEYS, LAMBDA, LAST_CONTACT, LIMIT, LINK, LOCKED, MAX, MAX_DISK, MAX_ITER, MAX_MEM, MAX_ROWS, MEAN, MIN, MODEL_KEY, MODELS, MORE, MTRY, MTRY_NODES, NAME, NEG_X, NO_CM, NODE, NODE_NAME, NODES, NORMALIZE, NUM_COLS, NUM_CPUS, NUM_FAILED, NUM_KEYS, NUM_MISSING_VALUES, NUM_ROWS, NUM_SUCCEEDED, NUM_TREES, OBJECT, OFFSET, OOBEE, PARALLEL, PARSER_TYPE, PATH, PREVIEW, PREVIOUS_MODEL_KEY, PROGRESS, PROGRESS_KEY, PROGRESS_TOTAL, REDIRECT, REDIRECT_ARGS, REPLICATION_FACTOR, REQUEST_TIME, RESPONSE, RHO, ROW, ROW_SIZE, ROWS, RPCS, SAMPLE, SAMPLING_STRATEGY, SCALE, SEED, SENT_ROWS, SEPARATOR, SIZE, SOURCE_KEY, STACK_TRACES, START_TIME, STAT_TYPE, STATUS, STEP, STRATA_SAMPLES, SUCCEEDED, SYSTEM_LOAD, TASK_KEY, TCPS_ACTIVE, TCPS_DUTY, TIME, TOT_MEM, TREE_COUNT, TREE_DEPTH, TREE_LEAVES, TREE_NUM, TREES, TWEEDIE_POWER, TYPE, URL, USE_NON_LOCAL_DATA, VALUE, VALUE_SIZE, VALUE_TYPE, VARIANCE, VERSION, VIEW, WARNINGS, WEIGHT, WEIGHTS, WIDTH, X, XVAL, Y
 
Constructor Summary
FrameSplit()
           
 
Method Summary
static Key makeKey()
           
protected  RequestBuilders.Response serve()
           
 Frame[] splitFrame(Frame frame, double[] fractions)
          splits frame into desired fractions via a uniform random draw.
 
Methods inherited from class water.Request2
create, input, registered, serveGrid, set, split, superServeGrid, supportedVersions
 
Methods inherited from class water.api.Request
addToNavbar, addToNavbar, DocExampleFail, DocExampleSucc, href, href, hrefType, HTMLHelp, initializeNavBar, log, mapTypeahead, ReSTHelp, serve, toDocGET, toHTML, wrap, wrap, wrap, writeJSONFields
 
Methods inherited from class water.api.RequestBuilders
build, buildJSONResponseBox, buildResponseHeader, name
 
Methods inherited from class water.api.RequestQueries
buildQuery, checkArguments, queryArgumentValueSet
 
Methods inherited from class water.api.RequestArguments
arguments, argumentsToJson, frameColumnNameToIndex, vaCategoryNames, vaCategoryNames, vaColumnNameToIndex
 
Methods inherited from class water.api.RequestStatics
checkJsonName, encodeRedirectArgs, JSON2HTML, jsonError, requestName, Str2JSON
 
Methods inherited from class water.Iced
clone, frozenType, init, newInstance, read, toDocField, write, writeJSON
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DOC_FIELDS

public static DocGen.FieldDoc[] DOC_FIELDS

source

public Frame source

destination_keys

public java.lang.String destination_keys

fractions

public double[] fractions

KEY_PREFIX

public static final java.lang.String KEY_PREFIX
See Also:
Constant Field Values
Constructor Detail

FrameSplit

public FrameSplit()
Method Detail

makeKey

public static final Key makeKey()

serve

protected RequestBuilders.Response serve()
Specified by:
serve in class Request

splitFrame

public Frame[] splitFrame(Frame frame,
                          double[] fractions)
splits frame into desired fractions via a uniform random draw. DOES NOT promise such a division, and for small numbers of rows, you get what you get

Parameters:
fractions. - must sum to 1.0. eg {0.8, 0.2} to get an 80/20 train/test split
Returns:
array of frames