Network Optimization Action Set

Provides actions for combinatorial and network flow optimization

linearAssignment Action

Calculates the minimum-cost linear assignment (minimum link-weighted matching) of a bipartite graph.

optNetwork.linearAssignment <result=results> <status=rc> /
deterministic=TRUE | FALSE,
display
={
caseSensitive=TRUE | FALSE,
exclude=TRUE | FALSE,
excludeAll=TRUE | FALSE,
keyIsPath=TRUE | FALSE,
names={"string-1" <, "string-2", ...>},
pathType="LABEL" | "NAME",
traceNames=TRUE | FALSE
},
distributed=TRUE | FALSE,
graph=integer,
indexOffset=integer,
links
={
caslib="string",
computedOnDemand=TRUE | FALSE,
computedVars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
dataSourceOptions={key-1=any-list-or-data-type-1 <, key-2=any-list-or-data-type-2, ...>},
groupBy
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters},
required parameter name="table-name",
vars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
where="where-expression",
whereTable
={
casLib="string"
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}
required parameter name="table-name"
vars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}}
where="where-expression"
}
},
linksVar
={
auxWeight="variable-name",
from="variable-name",
to="variable-name",
vars={"variable-name-1" <, "variable-name-2", ...>},
varsOut={"variable-name-1" <, "variable-name-2", ...>},
weight="variable-name"
},
logFreqTime=integer,
maxTime=double,
multiLinks=TRUE | FALSE,
nodes
={
caslib="string",
computedOnDemand=TRUE | FALSE,
computedVars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
dataSourceOptions={key-1=any-list-or-data-type-1 <, key-2=any-list-or-data-type-2, ...>},
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters},
required parameter name="table-name",
vars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
where="where-expression",
whereTable
={
casLib="string"
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}
required parameter name="table-name"
vars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}}
where="where-expression"
}
},
nodesVar
={
node="variable-name",
vars={"variable-name-1" <, "variable-name-2", ...>},
varsOut={"variable-name-1" <, "variable-name-2", ...>},
weight="variable-name"
},
nThreads=integer,
out
={
caslib="string",
compress=TRUE | FALSE,
indexVars={"variable-name-1" <, "variable-name-2", ...>},
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=TRUE | FALSE,
replace=TRUE | FALSE,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where={"string-1" <, "string-2", ...>}
},
outGraphList
={
caslib="string",
compress=TRUE | FALSE,
indexVars={"variable-name-1" <, "variable-name-2", ...>},
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=TRUE | FALSE,
replace=TRUE | FALSE,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where={"string-1" <, "string-2", ...>}
},
outLinks
={
caslib="string",
compress=TRUE | FALSE,
indexVars={"variable-name-1" <, "variable-name-2", ...>},
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=TRUE | FALSE,
replace=TRUE | FALSE,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where={"string-1" <, "string-2", ...>}
},
outNodes
={
caslib="string",
compress=TRUE | FALSE,
indexVars={"variable-name-1" <, "variable-name-2", ...>},
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=TRUE | FALSE,
replace=TRUE | FALSE,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where={"string-1" <, "string-2", ...>}
},
outputTables
={
groupByVarsRaw=TRUE | FALSE,
includeAll=TRUE | FALSE,
names={"string-1" <, "string-2", ...>} | {key-1={casouttable-1} <, key-2={casouttable-2}, ...>},
repeated=TRUE | FALSE,
replace=TRUE | FALSE
},
selfLinks=TRUE | FALSE,
standardizedLabels=TRUE | FALSE,
standardizedLabelsOut=TRUE | FALSE,
;

Summary: Input and Output Tables

If a row includes a subparameter, you can specify the name, caslib, and so on in the subparameter. Otherwise, you can specify the name, caslib, and so on in the parameter.

Parameters for Reading Input Tables

Parameter

Subparameter

Description

 links

specifies the input data table that contains the graph link information.

 nodes

specifies the input data table that contains the graph node information.

Parameters for Creating Output Tables

Parameter

Subparameter

Description

 out

specifies the output data table to contain the solution to the linear assignment problem.

 outGraphList

specifies the output data table to contain summary information about in-memory graphs.

 outLinks

specifies the output data table to contain the graph link information along with any results from the algorithms that calculate metrics on links.

 outNodes

specifies the output data table to contain the graph node information along with any results from the algorithms that calculate metrics on nodes.

 outputTables

names

lists the names of results tables to save as CAS tables on the server.

Parameter Descriptions

deterministic=TRUE | FALSE

when set to True, ensures that each invocation (with the same machine configuration and parameter settings) produces the same final result.

DefaultTRUE

direction="DIRECTED" | "UNDIRECTED"

specifies whether to consider the input graph as directed or undirected.

DefaultUNDIRECTED
DIRECTED

considers the input graph to be directed. In a directed graph, each link (i,j) has a direction that defines how something (such as information) can flow over that link. In link (i,j), the flow is from node i to node j. Node i is called the source (tail) node, and node j is called the sink (head) node.

UNDIRECTED

considers the input graph to be undirected. In an undirected graph, each link {i,j} has no direction, and the flow can be in either direction. That is, {i,j} = {j,i}.

display={displayTables}

specifies a list of results tables to send to the client for display.

For more information about specifying the display parameter, see the common displayTables parameter (Appendix A: Common Parameters).

distributed=TRUE | FALSE

when set to True, uses a distributed graph.

DefaultFALSE

graph=integer

specifies the in-memory graph to use.

Default-1

indexOffset=integer

specifies the index offset for identifiers in the log and results output data tables. For example, if three entities are found, they are labeled entity 0, 1, and 2 by default. If the value of indexOffset is 4, the entities are labeled entity 4, 5, and 6.

Default0
Minimum value0

specifies the input data table that contains the graph link information.

Long formlinks={name="table-name"}
Shortcut formlinks="table-name"

The castable value can be one or more of the following:

specifies the caslib for the input table that you want to use with the action. By default, the active caslib is used. Specify a value only if you need to access a table from a different caslib.

when set to True, creates the computed variables when the table is loaded instead of when the action begins.

AliascompOnDemand
DefaultFALSE

specifies the names of the computed variables to create. Specify an expression for each variable in the computedVarsProgram parameter. If you do not specify this parameter, then all variables from computedVarsProgram are automatically included.

AliascompVars

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for each computed variable that you include in the computedVars parameter.

AliascompPgm

specifies data source options.

Aliasesoptions
dataSource

specifies the names of the variables to use for grouping results.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

specifies the name of the input table.

specifies the variables to use in the action.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for subsetting the input data.

specifies an input table that contains rows to use as a WHERE filter. If the vars parameter is not specified, then all the variable names that are common to the input table and the filtering table are used to find matching rows. If the where parameter for the input table and this parameter are specified, then this filtering table is applied first.

The groupbytable value can be one or more of the following:

specifies the caslib for the filter table. By default, the active caslib is used.

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

specifies the name of the filter table.

specifies the variable names to use from the filter table.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for subsetting the data from the filter table.

linksVar={linksVar}

specifies the data variable names for the links table.

For more information about specifying the linksVar parameter, see the common linksVar parameter (Appendix A: Common Parameters).

logFreqTime=integer

controls the frequency n (in seconds) for displaying iteration logs for some algorithms, where n can be any integer greater than or equal to 1. This parameter is useful for computationally intensive algorithms. Setting n too low can hurt algorithm performance.

AliaslogFrequencyTime
Default5
Minimum value1

logLevel="AGGRESSIVE" | "BASIC" | "MODERATE" | "NONE"

controls the amount of information that is displayed in the SAS log.

DefaultBASIC
AGGRESSIVE

displays a more detailed summary of the input, output, and algorithmic processing.

BASIC

displays a brief summary of the algorithmic processing.

MODERATE

displays a moderately detailed summary of the input, output, and algorithmic processing.

NONE

turns off all action-related messages in the SAS log.

maxTime=double

specifies the maximum amount of time for the algorithm to spend. The default is the largest number that can be represented by a double.

Minimum value (exclusive)0

when set to True, includes multilinks when an input graph is read. By default, the value of this parameter is True for algorithms that support multilinks.

nodes={castable}

specifies the input data table that contains the graph node information.

Long formnodes={name="table-name"}
Shortcut formnodes="table-name"

The castable value can be one or more of the following:

caslib="string"

specifies the caslib for the input table that you want to use with the action. By default, the active caslib is used. Specify a value only if you need to access a table from a different caslib.

computedOnDemand=TRUE | FALSE

when set to True, creates the computed variables when the table is loaded instead of when the action begins.

AliascompOnDemand
DefaultFALSE
computedVars={{casinvardesc-1} <, {casinvardesc-2}, ...>}

specifies the names of the computed variables to create. Specify an expression for each variable in the computedVarsProgram parameter. If you do not specify this parameter, then all variables from computedVarsProgram are automatically included.

AliascompVars

The casinvardesc value can be one or more of the following:

format="string"

specifies the format to apply to the variable.

formattedLength=integer

specifies the length of the format field plus the length of the format precision.

label="string"

specifies the descriptive label for the variable.

* name="variable-name"

specifies the name for the variable.

nfd=integer

specifies the length of the format precision.

nfl=integer

specifies the length of the format field.

computedVarsProgram="string"

specifies an expression for each computed variable that you include in the computedVars parameter.

AliascompPgm
dataSourceOptions={key-1=any-list-or-data-type-1 <, key-2=any-list-or-data-type-2, ...>}

specifies data source options.

Aliasesoptions
dataSource
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

* name="table-name"

specifies the name of the input table.

vars={{casinvardesc-1} <, {casinvardesc-2}, ...>}

specifies the variables to use in the action.

The casinvardesc value can be one or more of the following:

format="string"

specifies the format to apply to the variable.

formattedLength=integer

specifies the length of the format field plus the length of the format precision.

label="string"

specifies the descriptive label for the variable.

* name="variable-name"

specifies the name for the variable.

nfd=integer

specifies the length of the format precision.

nfl=integer

specifies the length of the format field.

where="where-expression"

specifies an expression for subsetting the input data.

whereTable={groupbytable}

specifies an input table that contains rows to use as a WHERE filter. If the vars parameter is not specified, then all the variable names that are common to the input table and the filtering table are used to find matching rows. If the where parameter for the input table and this parameter are specified, then this filtering table is applied first.

The groupbytable value can be one or more of the following:

casLib="string"

specifies the caslib for the filter table. By default, the active caslib is used.

importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

* name="table-name"

specifies the name of the filter table.

vars={{casinvardesc-1} <, {casinvardesc-2}, ...>}

specifies the variable names to use from the filter table.

The casinvardesc value can be one or more of the following:

format="string"

specifies the format to apply to the variable.

formattedLength=integer

specifies the length of the format field plus the length of the format precision.

label="string"

specifies the descriptive label for the variable.

* name="variable-name"

specifies the name for the variable.

nfd=integer

specifies the length of the format precision.

nfl=integer

specifies the length of the format field.

where="where-expression"

specifies an expression for subsetting the data from the filter table.

nodesVar={nodesVar}

specifies the data variable names for the nodes table.

Long formnodesVar={node="variable-name"}
Shortcut formnodesVar="variable-name"

The nodesVar value can be one or more of the following:

node="variable-name"

specifies the data variable name for the nodes.

Default"node"
vars={"variable-name-1" <, "variable-name-2", ...>}

specifies the additional data variable names for node attributes.

varsOut={"variable-name-1" <, "variable-name-2", ...>}

specifies the output data variable names for node attributes.

weight="variable-name"

specifies the data variable name for the node weights.

Default"weight"

nThreads=integer

specifies the maximum number of threads to use for multithreaded processing.

Range1–1024

out={casouttable}

specifies the output data table to contain the solution to the linear assignment problem.

For more information about specifying the out parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outGraphList={casouttable}

specifies the output data table to contain summary information about in-memory graphs.

For more information about specifying the outGraphList parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

specifies the output data table to contain the graph link information along with any results from the algorithms that calculate metrics on links.

For more information about specifying the outLinks parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outNodes={casouttable}

specifies the output data table to contain the graph node information along with any results from the algorithms that calculate metrics on nodes.

For more information about specifying the outNodes parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outputTables={outputTables}

lists the names of results tables to save as CAS tables on the server.

For more information about specifying the outputTables parameter, see the common outputTables parameter (Appendix A: Common Parameters).

AliasdisplayOut

when set to True, includes self-links when an input graph is read.

DefaultTRUE

standardizedLabels=TRUE | FALSE

when set to True, specifies that the input graph data are in a standardized format.

DefaultFALSE

standardizedLabelsOut=TRUE | FALSE

when set to True, requests that the output graph data include standardized format.

DefaultFALSE

timeType="CPU" | "REAL"

specifies whether to use CPU time or real time for the maximum time limit.

DefaultREAL
CPU

specifies units of CPU time. The time restriction is applied per processing machine (not across all machines).

REAL

specifies units of real time.

Result Descriptions

ProblemSummary

contains a basic summary of the graph input. The result is a table. You can access the value from results.ProblemSummary.

SolutionSummary

contains a basic solution summary for the algorithm. The result is a table. You can access the value from results.SolutionSummary.

objective

indicates the total weight of the minimum linear assignment. The result is a double. You can access the value from results.objective.

solutionStatus

indicates the solution status of the selected problem type (algorithm class). The result is a string. You can access the value from results.solutionStatus.

linearAssignment Action

Calculates the minimum-cost linear assignment (minimum link-weighted matching) of a bipartite graph.

results, info = s:optNetwork_linearAssignment{
deterministic=true | false,
display
={
caseSensitive=true | false,
exclude=true | false,
excludeAll=true | false,
keyIsPath=true | false,
names={"string-1" <, "string-2", ...>},
pathType="LABEL" | "NAME",
traceNames=true | false
},
distributed=true | false,
graph=integer,
indexOffset=integer,
links
={
caslib="string",
computedOnDemand=true | false,
computedVars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
dataSourceOptions={key-1=any-list-or-data-type-1 <, key-2=any-list-or-data-type-2, ...>},
groupBy
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters},
required parameter name="table-name",
vars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
where="where-expression",
whereTable
={
casLib="string"
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}
required parameter name="table-name"
vars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}}
where="where-expression"
}
},
linksVar
={
auxWeight="variable-name",
from="variable-name",
to="variable-name",
vars={"variable-name-1" <, "variable-name-2", ...>},
varsOut={"variable-name-1" <, "variable-name-2", ...>},
weight="variable-name"
},
logFreqTime=integer,
maxTime=double,
multiLinks=true | false,
nodes
={
caslib="string",
computedOnDemand=true | false,
computedVars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
dataSourceOptions={key-1=any-list-or-data-type-1 <, key-2=any-list-or-data-type-2, ...>},
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters},
required parameter name="table-name",
vars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}},
where="where-expression",
whereTable
={
casLib="string"
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}
required parameter name="table-name"
vars
={{
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
}, {...}}
where="where-expression"
}
},
nodesVar
={
node="variable-name",
vars={"variable-name-1" <, "variable-name-2", ...>},
varsOut={"variable-name-1" <, "variable-name-2", ...>},
weight="variable-name"
},
nThreads=integer,
out
={
caslib="string",
compress=true | false,
indexVars={"variable-name-1" <, "variable-name-2", ...>},
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=true | false,
replace=true | false,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where={"string-1" <, "string-2", ...>}
},
outGraphList
={
caslib="string",
compress=true | false,
indexVars={"variable-name-1" <, "variable-name-2", ...>},
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=true | false,
replace=true | false,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where={"string-1" <, "string-2", ...>}
},
outLinks
={
caslib="string",
compress=true | false,
indexVars={"variable-name-1" <, "variable-name-2", ...>},
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=true | false,
replace=true | false,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where={"string-1" <, "string-2", ...>}
},
outNodes
={
caslib="string",
compress=true | false,
indexVars={"variable-name-1" <, "variable-name-2", ...>},
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=true | false,
replace=true | false,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where={"string-1" <, "string-2", ...>}
},
outputTables
={
groupByVarsRaw=true | false,
includeAll=true | false,
names={"string-1" <, "string-2", ...>} | {key-1={casouttable-1} <, key-2={casouttable-2}, ...>},
repeated=true | false,
replace=true | false
},
selfLinks=true | false,
standardizedLabels=true | false,
standardizedLabelsOut=true | false,
}

Summary: Input and Output Tables

If a row includes a subparameter, you can specify the name, caslib, and so on in the subparameter. Otherwise, you can specify the name, caslib, and so on in the parameter.

Parameters for Reading Input Tables

Parameter

Subparameter

Description

 links

specifies the input data table that contains the graph link information.

 nodes

specifies the input data table that contains the graph node information.

Parameters for Creating Output Tables

Parameter

Subparameter

Description

 out

specifies the output data table to contain the solution to the linear assignment problem.

 outGraphList

specifies the output data table to contain summary information about in-memory graphs.

 outLinks

specifies the output data table to contain the graph link information along with any results from the algorithms that calculate metrics on links.

 outNodes

specifies the output data table to contain the graph node information along with any results from the algorithms that calculate metrics on nodes.

 outputTables

names

lists the names of results tables to save as CAS tables on the server.

Parameter Descriptions

deterministic=true | false

when set to True, ensures that each invocation (with the same machine configuration and parameter settings) produces the same final result.

Defaulttrue

direction="DIRECTED" | "UNDIRECTED"

specifies whether to consider the input graph as directed or undirected.

DefaultUNDIRECTED
DIRECTED

considers the input graph to be directed. In a directed graph, each link (i,j) has a direction that defines how something (such as information) can flow over that link. In link (i,j), the flow is from node i to node j. Node i is called the source (tail) node, and node j is called the sink (head) node.

UNDIRECTED

considers the input graph to be undirected. In an undirected graph, each link {i,j} has no direction, and the flow can be in either direction. That is, {i,j} = {j,i}.

display={displayTables}

specifies a list of results tables to send to the client for display.

For more information about specifying the display parameter, see the common displayTables parameter (Appendix A: Common Parameters).

distributed=true | false

when set to True, uses a distributed graph.

Defaultfalse

graph=integer

specifies the in-memory graph to use.

Default-1

indexOffset=integer

specifies the index offset for identifiers in the log and results output data tables. For example, if three entities are found, they are labeled entity 0, 1, and 2 by default. If the value of indexOffset is 4, the entities are labeled entity 4, 5, and 6.

Default0
Minimum value0

specifies the input data table that contains the graph link information.

Long formlinks={name="table-name"}
Shortcut formlinks="table-name"

The castable value can be one or more of the following:

specifies the caslib for the input table that you want to use with the action. By default, the active caslib is used. Specify a value only if you need to access a table from a different caslib.

when set to True, creates the computed variables when the table is loaded instead of when the action begins.

AliascompOnDemand
Defaultfalse

specifies the names of the computed variables to create. Specify an expression for each variable in the computedVarsProgram parameter. If you do not specify this parameter, then all variables from computedVarsProgram are automatically included.

AliascompVars

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for each computed variable that you include in the computedVars parameter.

AliascompPgm

specifies data source options.

Aliasesoptions
dataSource

specifies the names of the variables to use for grouping results.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

specifies the name of the input table.

specifies the variables to use in the action.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for subsetting the input data.

specifies an input table that contains rows to use as a WHERE filter. If the vars parameter is not specified, then all the variable names that are common to the input table and the filtering table are used to find matching rows. If the where parameter for the input table and this parameter are specified, then this filtering table is applied first.

The groupbytable value can be one or more of the following:

specifies the caslib for the filter table. By default, the active caslib is used.

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

specifies the name of the filter table.

specifies the variable names to use from the filter table.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for subsetting the data from the filter table.

linksVar={linksVar}

specifies the data variable names for the links table.

For more information about specifying the linksVar parameter, see the common linksVar parameter (Appendix A: Common Parameters).

logFreqTime=integer

controls the frequency n (in seconds) for displaying iteration logs for some algorithms, where n can be any integer greater than or equal to 1. This parameter is useful for computationally intensive algorithms. Setting n too low can hurt algorithm performance.

AliaslogFrequencyTime
Default5
Minimum value1

logLevel="AGGRESSIVE" | "BASIC" | "MODERATE" | "NONE"

controls the amount of information that is displayed in the SAS log.

DefaultBASIC
AGGRESSIVE

displays a more detailed summary of the input, output, and algorithmic processing.

BASIC

displays a brief summary of the algorithmic processing.

MODERATE

displays a moderately detailed summary of the input, output, and algorithmic processing.

NONE

turns off all action-related messages in the SAS log.

maxTime=double

specifies the maximum amount of time for the algorithm to spend. The default is the largest number that can be represented by a double.

Minimum value (exclusive)0

when set to True, includes multilinks when an input graph is read. By default, the value of this parameter is True for algorithms that support multilinks.

nodes={castable}

specifies the input data table that contains the graph node information.

Long formnodes={name="table-name"}
Shortcut formnodes="table-name"

The castable value can be one or more of the following:

caslib="string"

specifies the caslib for the input table that you want to use with the action. By default, the active caslib is used. Specify a value only if you need to access a table from a different caslib.

computedOnDemand=true | false

when set to True, creates the computed variables when the table is loaded instead of when the action begins.

AliascompOnDemand
Defaultfalse
computedVars={{casinvardesc-1} <, {casinvardesc-2}, ...>}

specifies the names of the computed variables to create. Specify an expression for each variable in the computedVarsProgram parameter. If you do not specify this parameter, then all variables from computedVarsProgram are automatically included.

AliascompVars

The casinvardesc value can be one or more of the following:

format="string"

specifies the format to apply to the variable.

formattedLength=integer

specifies the length of the format field plus the length of the format precision.

label="string"

specifies the descriptive label for the variable.

* name="variable-name"

specifies the name for the variable.

nfd=integer

specifies the length of the format precision.

nfl=integer

specifies the length of the format field.

computedVarsProgram="string"

specifies an expression for each computed variable that you include in the computedVars parameter.

AliascompPgm
dataSourceOptions={key-1=any-list-or-data-type-1 <, key-2=any-list-or-data-type-2, ...>}

specifies data source options.

Aliasesoptions
dataSource
importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

* name="table-name"

specifies the name of the input table.

vars={{casinvardesc-1} <, {casinvardesc-2}, ...>}

specifies the variables to use in the action.

The casinvardesc value can be one or more of the following:

format="string"

specifies the format to apply to the variable.

formattedLength=integer

specifies the length of the format field plus the length of the format precision.

label="string"

specifies the descriptive label for the variable.

* name="variable-name"

specifies the name for the variable.

nfd=integer

specifies the length of the format precision.

nfl=integer

specifies the length of the format field.

where="where-expression"

specifies an expression for subsetting the input data.

whereTable={groupbytable}

specifies an input table that contains rows to use as a WHERE filter. If the vars parameter is not specified, then all the variable names that are common to the input table and the filtering table are used to find matching rows. If the where parameter for the input table and this parameter are specified, then this filtering table is applied first.

The groupbytable value can be one or more of the following:

casLib="string"

specifies the caslib for the filter table. By default, the active caslib is used.

importOptions={fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

* name="table-name"

specifies the name of the filter table.

vars={{casinvardesc-1} <, {casinvardesc-2}, ...>}

specifies the variable names to use from the filter table.

The casinvardesc value can be one or more of the following:

format="string"

specifies the format to apply to the variable.

formattedLength=integer

specifies the length of the format field plus the length of the format precision.

label="string"

specifies the descriptive label for the variable.

* name="variable-name"

specifies the name for the variable.

nfd=integer

specifies the length of the format precision.

nfl=integer

specifies the length of the format field.

where="where-expression"

specifies an expression for subsetting the data from the filter table.

nodesVar={nodesVar}

specifies the data variable names for the nodes table.

Long formnodesVar={node="variable-name"}
Shortcut formnodesVar="variable-name"

The nodesVar value can be one or more of the following:

node="variable-name"

specifies the data variable name for the nodes.

Default"node"
vars={"variable-name-1" <, "variable-name-2", ...>}

specifies the additional data variable names for node attributes.

varsOut={"variable-name-1" <, "variable-name-2", ...>}

specifies the output data variable names for node attributes.

weight="variable-name"

specifies the data variable name for the node weights.

Default"weight"

nThreads=integer

specifies the maximum number of threads to use for multithreaded processing.

Range1–1024

out={casouttable}

specifies the output data table to contain the solution to the linear assignment problem.

For more information about specifying the out parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outGraphList={casouttable}

specifies the output data table to contain summary information about in-memory graphs.

For more information about specifying the outGraphList parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

specifies the output data table to contain the graph link information along with any results from the algorithms that calculate metrics on links.

For more information about specifying the outLinks parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outNodes={casouttable}

specifies the output data table to contain the graph node information along with any results from the algorithms that calculate metrics on nodes.

For more information about specifying the outNodes parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outputTables={outputTables}

lists the names of results tables to save as CAS tables on the server.

For more information about specifying the outputTables parameter, see the common outputTables parameter (Appendix A: Common Parameters).

AliasdisplayOut

when set to True, includes self-links when an input graph is read.

Defaulttrue

standardizedLabels=true | false

when set to True, specifies that the input graph data are in a standardized format.

Defaultfalse

standardizedLabelsOut=true | false

when set to True, requests that the output graph data include standardized format.

Defaultfalse

timeType="CPU" | "REAL"

specifies whether to use CPU time or real time for the maximum time limit.

DefaultREAL
CPU

specifies units of CPU time. The time restriction is applied per processing machine (not across all machines).

REAL

specifies units of real time.

Result Descriptions

ProblemSummary

contains a basic summary of the graph input. The result is a table. You can access the value from results.ProblemSummary.

SolutionSummary

contains a basic solution summary for the algorithm. The result is a table. You can access the value from results.SolutionSummary.

objective

indicates the total weight of the minimum linear assignment. The result is a double. You can access the value from results.objective.

solutionStatus

indicates the solution status of the selected problem type (algorithm class). The result is a string. You can access the value from results.solutionStatus.

linearAssignment Action

Calculates the minimum-cost linear assignment (minimum link-weighted matching) of a bipartite graph.

results=s.optNetwork.linearAssignment(
deterministic=True | False,
display
={
"caseSensitive":True | False,
"exclude":True | False,
"excludeAll":True | False,
"keyIsPath":True | False,
"names":["string-1" <, "string-2", ...>],
"pathType":"LABEL" | "NAME",
"traceNames":True | False
},
distributed=True | False,
graph=integer,
indexOffset=integer,
links
={
"caslib":"string",
"computedOnDemand":True | False,
"computedVars"
:[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>],
"computedVarsProgram":"string",
"dataSourceOptions":{"key-1":{any-list-or-data-type-1} <, "key-2":{any-list-or-data-type-2}, ...>},
"groupBy"
:[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>],
"importOptions":{"fileType":"ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters},
required parameter "name":"table-name",
"vars"
:[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>],
"where":"where-expression",
"whereTable"
:{
"casLib":"string"
"importOptions":{"fileType":"ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}
required parameter "name":"table-name"
"vars"
:[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>]
"where":"where-expression"
}
},
linksVar
={
"auxWeight":"variable-name",
"from_":"variable-name",
"to":"variable-name",
"vars":["variable-name-1" <, "variable-name-2", ...>],
"varsOut":["variable-name-1" <, "variable-name-2", ...>],
"weight":"variable-name"
},
logFreqTime=integer,
maxTime=double,
multiLinks=True | False,
nodes
={
"caslib":"string",
"computedOnDemand":True | False,
"computedVars"
:[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>],
"computedVarsProgram":"string",
"dataSourceOptions":{"key-1":{any-list-or-data-type-1} <, "key-2":{any-list-or-data-type-2}, ...>},
"importOptions":{"fileType":"ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters},
required parameter "name":"table-name",
"vars"
:[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>],
"where":"where-expression",
"whereTable"
:{
"casLib":"string"
"importOptions":{"fileType":"ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}
required parameter "name":"table-name"
"vars"
:[{
"format":"string",
"formattedLength":integer,
"label":"string",
required parameter "name":"variable-name",
"nfd":integer,
"nfl":integer
}<, {...}>]
"where":"where-expression"
}
},
nodesVar
={
"node":"variable-name",
"vars":["variable-name-1" <, "variable-name-2", ...>],
"varsOut":["variable-name-1" <, "variable-name-2", ...>],
"weight":"variable-name"
},
nThreads=integer,
out
={
"caslib":"string",
"compress":True | False,
"indexVars":["variable-name-1" <, "variable-name-2", ...>],
"label":"string",
"lifetime":64-bit-integer,
"maxMemSize":64-bit-integer,
"memoryFormat":"DVR" | "INHERIT" | "STANDARD",
"name":"table-name",
"promote":True | False,
"replace":True | False,
"replication":integer,
"tableRedistUpPolicy":"DEFER" | "NOREDIST" | "REBALANCE",
"threadBlockSize":64-bit-integer,
"timeStamp":"string",
"where":["string-1" <, "string-2", ...>]
},
outGraphList
={
"caslib":"string",
"compress":True | False,
"indexVars":["variable-name-1" <, "variable-name-2", ...>],
"label":"string",
"lifetime":64-bit-integer,
"maxMemSize":64-bit-integer,
"memoryFormat":"DVR" | "INHERIT" | "STANDARD",
"name":"table-name",
"promote":True | False,
"replace":True | False,
"replication":integer,
"tableRedistUpPolicy":"DEFER" | "NOREDIST" | "REBALANCE",
"threadBlockSize":64-bit-integer,
"timeStamp":"string",
"where":["string-1" <, "string-2", ...>]
},
outLinks
={
"caslib":"string",
"compress":True | False,
"indexVars":["variable-name-1" <, "variable-name-2", ...>],
"label":"string",
"lifetime":64-bit-integer,
"maxMemSize":64-bit-integer,
"memoryFormat":"DVR" | "INHERIT" | "STANDARD",
"name":"table-name",
"promote":True | False,
"replace":True | False,
"replication":integer,
"tableRedistUpPolicy":"DEFER" | "NOREDIST" | "REBALANCE",
"threadBlockSize":64-bit-integer,
"timeStamp":"string",
"where":["string-1" <, "string-2", ...>]
},
outNodes
={
"caslib":"string",
"compress":True | False,
"indexVars":["variable-name-1" <, "variable-name-2", ...>],
"label":"string",
"lifetime":64-bit-integer,
"maxMemSize":64-bit-integer,
"memoryFormat":"DVR" | "INHERIT" | "STANDARD",
"name":"table-name",
"promote":True | False,
"replace":True | False,
"replication":integer,
"tableRedistUpPolicy":"DEFER" | "NOREDIST" | "REBALANCE",
"threadBlockSize":64-bit-integer,
"timeStamp":"string",
"where":["string-1" <, "string-2", ...>]
},
outputTables
={
"groupByVarsRaw":True | False,
"includeAll":True | False,
"names":["string-1" <, "string-2", ...>] | {"key-1":{casouttable-1} <, "key-2":{casouttable-2}, ...>},
"repeated":True | False,
"replace":True | False
},
selfLinks=True | False,
standardizedLabels=True | False,
standardizedLabelsOut=True | False,
)

Summary: Input and Output Tables

If a row includes a subparameter, you can specify the name, caslib, and so on in the subparameter. Otherwise, you can specify the name, caslib, and so on in the parameter.

Parameters for Reading Input Tables

Parameter

Subparameter

Description

 links

specifies the input data table that contains the graph link information.

 nodes

specifies the input data table that contains the graph node information.

Parameters for Creating Output Tables

Parameter

Subparameter

Description

 out

specifies the output data table to contain the solution to the linear assignment problem.

 outGraphList

specifies the output data table to contain summary information about in-memory graphs.

 outLinks

specifies the output data table to contain the graph link information along with any results from the algorithms that calculate metrics on links.

 outNodes

specifies the output data table to contain the graph node information along with any results from the algorithms that calculate metrics on nodes.

 outputTables

names

lists the names of results tables to save as CAS tables on the server.

Parameter Descriptions

deterministic=True | False

when set to True, ensures that each invocation (with the same machine configuration and parameter settings) produces the same final result.

DefaultTrue

direction="DIRECTED" | "UNDIRECTED"

specifies whether to consider the input graph as directed or undirected.

DefaultUNDIRECTED
DIRECTED

considers the input graph to be directed. In a directed graph, each link (i,j) has a direction that defines how something (such as information) can flow over that link. In link (i,j), the flow is from node i to node j. Node i is called the source (tail) node, and node j is called the sink (head) node.

UNDIRECTED

considers the input graph to be undirected. In an undirected graph, each link {i,j} has no direction, and the flow can be in either direction. That is, {i,j} = {j,i}.

display={displayTables}

specifies a list of results tables to send to the client for display.

For more information about specifying the display parameter, see the common displayTables parameter (Appendix A: Common Parameters).

distributed=True | False

when set to True, uses a distributed graph.

DefaultFalse

graph=integer

specifies the in-memory graph to use.

Default-1

indexOffset=integer

specifies the index offset for identifiers in the log and results output data tables. For example, if three entities are found, they are labeled entity 0, 1, and 2 by default. If the value of indexOffset is 4, the entities are labeled entity 4, 5, and 6.

Default0
Minimum value0

specifies the input data table that contains the graph link information.

Long formlinks={"name":"table-name"}
Shortcut formlinks="table-name"

The castable value can be one or more of the following:

specifies the caslib for the input table that you want to use with the action. By default, the active caslib is used. Specify a value only if you need to access a table from a different caslib.

when set to True, creates the computed variables when the table is loaded instead of when the action begins.

AliascompOnDemand
DefaultFalse

specifies the names of the computed variables to create. Specify an expression for each variable in the computedVarsProgram parameter. If you do not specify this parameter, then all variables from computedVarsProgram are automatically included.

AliascompVars

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for each computed variable that you include in the computedVars parameter.

AliascompPgm

specifies data source options.

Aliasesoptions
dataSource

specifies the names of the variables to use for grouping results.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies the settings for reading a table from a data source.

Aliasimport_

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

specifies the name of the input table.

specifies the variables to use in the action.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for subsetting the input data.

specifies an input table that contains rows to use as a WHERE filter. If the vars parameter is not specified, then all the variable names that are common to the input table and the filtering table are used to find matching rows. If the where parameter for the input table and this parameter are specified, then this filtering table is applied first.

The groupbytable value can be one or more of the following:

specifies the caslib for the filter table. By default, the active caslib is used.

specifies the settings for reading a table from a data source.

Aliasimport_

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

specifies the name of the filter table.

specifies the variable names to use from the filter table.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for subsetting the data from the filter table.

linksVar={linksVar}

specifies the data variable names for the links table.

For more information about specifying the linksVar parameter, see the common linksVar parameter (Appendix A: Common Parameters).

logFreqTime=integer

controls the frequency n (in seconds) for displaying iteration logs for some algorithms, where n can be any integer greater than or equal to 1. This parameter is useful for computationally intensive algorithms. Setting n too low can hurt algorithm performance.

AliaslogFrequencyTime
Default5
Minimum value1

logLevel="AGGRESSIVE" | "BASIC" | "MODERATE" | "NONE"

controls the amount of information that is displayed in the SAS log.

DefaultBASIC
AGGRESSIVE

displays a more detailed summary of the input, output, and algorithmic processing.

BASIC

displays a brief summary of the algorithmic processing.

MODERATE

displays a moderately detailed summary of the input, output, and algorithmic processing.

NONE

turns off all action-related messages in the SAS log.

maxTime=double

specifies the maximum amount of time for the algorithm to spend. The default is the largest number that can be represented by a double.

Minimum value (exclusive)0

when set to True, includes multilinks when an input graph is read. By default, the value of this parameter is True for algorithms that support multilinks.

nodes={castable}

specifies the input data table that contains the graph node information.

Long formnodes={"name":"table-name"}
Shortcut formnodes="table-name"

The castable value can be one or more of the following:

"caslib":"string"

specifies the caslib for the input table that you want to use with the action. By default, the active caslib is used. Specify a value only if you need to access a table from a different caslib.

"computedOnDemand":True | False

when set to True, creates the computed variables when the table is loaded instead of when the action begins.

AliascompOnDemand
DefaultFalse
"computedVars":[{casinvardesc-1} <, {casinvardesc-2}, ...>]

specifies the names of the computed variables to create. Specify an expression for each variable in the computedVarsProgram parameter. If you do not specify this parameter, then all variables from computedVarsProgram are automatically included.

AliascompVars

The casinvardesc value can be one or more of the following:

"format":"string"

specifies the format to apply to the variable.

"formattedLength":integer

specifies the length of the format field plus the length of the format precision.

"label":"string"

specifies the descriptive label for the variable.

* "name":"variable-name"

specifies the name for the variable.

"nfd":integer

specifies the length of the format precision.

"nfl":integer

specifies the length of the format field.

"computedVarsProgram":"string"

specifies an expression for each computed variable that you include in the computedVars parameter.

AliascompPgm
"dataSourceOptions":{"key-1":{any-list-or-data-type-1} <, "key-2":{any-list-or-data-type-2}, ...>}

specifies data source options.

Aliasesoptions
dataSource
"importOptions":{"fileType":"ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}

specifies the settings for reading a table from a data source.

Aliasimport_

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

* "name":"table-name"

specifies the name of the input table.

"vars":[{casinvardesc-1} <, {casinvardesc-2}, ...>]

specifies the variables to use in the action.

The casinvardesc value can be one or more of the following:

"format":"string"

specifies the format to apply to the variable.

"formattedLength":integer

specifies the length of the format field plus the length of the format precision.

"label":"string"

specifies the descriptive label for the variable.

* "name":"variable-name"

specifies the name for the variable.

"nfd":integer

specifies the length of the format precision.

"nfl":integer

specifies the length of the format field.

"where":"where-expression"

specifies an expression for subsetting the input data.

"whereTable":{groupbytable}

specifies an input table that contains rows to use as a WHERE filter. If the vars parameter is not specified, then all the variable names that are common to the input table and the filtering table are used to find matching rows. If the where parameter for the input table and this parameter are specified, then this filtering table is applied first.

The groupbytable value can be one or more of the following:

"casLib":"string"

specifies the caslib for the filter table. By default, the active caslib is used.

"importOptions":{"fileType":"ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters}

specifies the settings for reading a table from a data source.

Aliasimport_

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

* "name":"table-name"

specifies the name of the filter table.

"vars":[{casinvardesc-1} <, {casinvardesc-2}, ...>]

specifies the variable names to use from the filter table.

The casinvardesc value can be one or more of the following:

"format":"string"

specifies the format to apply to the variable.

"formattedLength":integer

specifies the length of the format field plus the length of the format precision.

"label":"string"

specifies the descriptive label for the variable.

* "name":"variable-name"

specifies the name for the variable.

"nfd":integer

specifies the length of the format precision.

"nfl":integer

specifies the length of the format field.

"where":"where-expression"

specifies an expression for subsetting the data from the filter table.

nodesVar={nodesVar}

specifies the data variable names for the nodes table.

Long formnodesVar={"node":"variable-name"}
Shortcut formnodesVar="variable-name"

The nodesVar value can be one or more of the following:

"node":"variable-name"

specifies the data variable name for the nodes.

Default"node"
"vars":["variable-name-1" <, "variable-name-2", ...>]

specifies the additional data variable names for node attributes.

"varsOut":["variable-name-1" <, "variable-name-2", ...>]

specifies the output data variable names for node attributes.

"weight":"variable-name"

specifies the data variable name for the node weights.

Default"weight"

nThreads=integer

specifies the maximum number of threads to use for multithreaded processing.

Range1–1024

out={casouttable}

specifies the output data table to contain the solution to the linear assignment problem.

For more information about specifying the out parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outGraphList={casouttable}

specifies the output data table to contain summary information about in-memory graphs.

For more information about specifying the outGraphList parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

specifies the output data table to contain the graph link information along with any results from the algorithms that calculate metrics on links.

For more information about specifying the outLinks parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outNodes={casouttable}

specifies the output data table to contain the graph node information along with any results from the algorithms that calculate metrics on nodes.

For more information about specifying the outNodes parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outputTables={outputTables}

lists the names of results tables to save as CAS tables on the server.

For more information about specifying the outputTables parameter, see the common outputTables parameter (Appendix A: Common Parameters).

AliasdisplayOut

when set to True, includes self-links when an input graph is read.

DefaultTrue

standardizedLabels=True | False

when set to True, specifies that the input graph data are in a standardized format.

DefaultFalse

standardizedLabelsOut=True | False

when set to True, requests that the output graph data include standardized format.

DefaultFalse

timeType="CPU" | "REAL"

specifies whether to use CPU time or real time for the maximum time limit.

DefaultREAL
CPU

specifies units of CPU time. The time restriction is applied per processing machine (not across all machines).

REAL

specifies units of real time.

Result Descriptions

ProblemSummary

contains a basic summary of the graph input. The result is a table. You can access the value from results.ProblemSummary.

SolutionSummary

contains a basic solution summary for the algorithm. The result is a table. You can access the value from results.SolutionSummary.

objective

indicates the total weight of the minimum linear assignment. The result is a double. You can access the value from results.objective.

solutionStatus

indicates the solution status of the selected problem type (algorithm class). The result is a string. You can access the value from results.solutionStatus.

linearAssignment Action

Calculates the minimum-cost linear assignment (minimum link-weighted matching) of a bipartite graph.

results <– cas.optNetwork.linearAssignment(s,
deterministic=TRUE | FALSE,
display
=list(
caseSensitive=TRUE | FALSE,
exclude=TRUE | FALSE,
excludeAll=TRUE | FALSE,
keyIsPath=TRUE | FALSE,
names=list("string-1" <, "string-2", ...>),
pathType="LABEL" | "NAME",
traceNames=TRUE | FALSE
),
distributed=TRUE | FALSE,
graph=integer,
indexOffset=integer,
links
=list(
caslib="string",
computedOnDemand=TRUE | FALSE,
computedVars
=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>),
dataSourceOptions=list(key-1=list(any-list-or-data-type-1) <, key-2=list(any-list-or-data-type-2), ...>),
groupBy
=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>),
importOptions=list(fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters),
required parameter name="table-name",
vars
=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>),
where="where-expression",
whereTable
=list(
casLib="string"
importOptions=list(fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters)
required parameter name="table-name"
vars
=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>)
where="where-expression"
)
),
linksVar
=list(
auxWeight="variable-name",
from="variable-name",
to="variable-name",
vars=list("variable-name-1" <, "variable-name-2", ...>),
varsOut=list("variable-name-1" <, "variable-name-2", ...>),
weight="variable-name"
),
logFreqTime=integer,
maxTime=double,
multiLinks=TRUE | FALSE,
nodes
=list(
caslib="string",
computedOnDemand=TRUE | FALSE,
computedVars
=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>),
dataSourceOptions=list(key-1=list(any-list-or-data-type-1) <, key-2=list(any-list-or-data-type-2), ...>),
importOptions=list(fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters),
required parameter name="table-name",
vars
=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>),
where="where-expression",
whereTable
=list(
casLib="string"
importOptions=list(fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DELIMITED" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SOUND" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters)
required parameter name="table-name"
vars
=list( list(
format="string",
formattedLength=integer,
label="string",
required parameter name="variable-name",
nfd=integer,
nfl=integer
) <, list(...)>)
where="where-expression"
)
),
nodesVar
=list(
node="variable-name",
vars=list("variable-name-1" <, "variable-name-2", ...>),
varsOut=list("variable-name-1" <, "variable-name-2", ...>),
weight="variable-name"
),
nThreads=integer,
out
=list(
caslib="string",
compress=TRUE | FALSE,
indexVars=list("variable-name-1" <, "variable-name-2", ...>),
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=TRUE | FALSE,
replace=TRUE | FALSE,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where=list("string-1" <, "string-2", ...>)
),
outGraphList
=list(
caslib="string",
compress=TRUE | FALSE,
indexVars=list("variable-name-1" <, "variable-name-2", ...>),
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=TRUE | FALSE,
replace=TRUE | FALSE,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where=list("string-1" <, "string-2", ...>)
),
outLinks
=list(
caslib="string",
compress=TRUE | FALSE,
indexVars=list("variable-name-1" <, "variable-name-2", ...>),
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=TRUE | FALSE,
replace=TRUE | FALSE,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where=list("string-1" <, "string-2", ...>)
),
outNodes
=list(
caslib="string",
compress=TRUE | FALSE,
indexVars=list("variable-name-1" <, "variable-name-2", ...>),
label="string",
lifetime=64-bit-integer,
maxMemSize=64-bit-integer,
memoryFormat="DVR" | "INHERIT" | "STANDARD",
name="table-name",
promote=TRUE | FALSE,
replace=TRUE | FALSE,
replication=integer,
tableRedistUpPolicy="DEFER" | "NOREDIST" | "REBALANCE",
threadBlockSize=64-bit-integer,
timeStamp="string",
where=list("string-1" <, "string-2", ...>)
),
outputTables
=list(
groupByVarsRaw=TRUE | FALSE,
includeAll=TRUE | FALSE,
names=list("string-1" <, "string-2", ...>) | list(key-1=list(casouttable-1) <, key-2=list(casouttable-2), ...>),
repeated=TRUE | FALSE,
replace=TRUE | FALSE
),
selfLinks=TRUE | FALSE,
standardizedLabels=TRUE | FALSE,
standardizedLabelsOut=TRUE | FALSE,
)

Summary: Input and Output Tables

If a row includes a subparameter, you can specify the name, caslib, and so on in the subparameter. Otherwise, you can specify the name, caslib, and so on in the parameter.

Parameters for Reading Input Tables

Parameter

Subparameter

Description

 links

specifies the input data table that contains the graph link information.

 nodes

specifies the input data table that contains the graph node information.

Parameters for Creating Output Tables

Parameter

Subparameter

Description

 out

specifies the output data table to contain the solution to the linear assignment problem.

 outGraphList

specifies the output data table to contain summary information about in-memory graphs.

 outLinks

specifies the output data table to contain the graph link information along with any results from the algorithms that calculate metrics on links.

 outNodes

specifies the output data table to contain the graph node information along with any results from the algorithms that calculate metrics on nodes.

 outputTables

names

lists the names of results tables to save as CAS tables on the server.

Parameter Descriptions

deterministic=TRUE | FALSE

when set to True, ensures that each invocation (with the same machine configuration and parameter settings) produces the same final result.

DefaultTRUE

direction="DIRECTED" | "UNDIRECTED"

specifies whether to consider the input graph as directed or undirected.

DefaultUNDIRECTED
DIRECTED

considers the input graph to be directed. In a directed graph, each link (i,j) has a direction that defines how something (such as information) can flow over that link. In link (i,j), the flow is from node i to node j. Node i is called the source (tail) node, and node j is called the sink (head) node.

UNDIRECTED

considers the input graph to be undirected. In an undirected graph, each link {i,j} has no direction, and the flow can be in either direction. That is, {i,j} = {j,i}.

display=list(displayTables)

specifies a list of results tables to send to the client for display.

For more information about specifying the display parameter, see the common displayTables parameter (Appendix A: Common Parameters).

distributed=TRUE | FALSE

when set to True, uses a distributed graph.

DefaultFALSE

graph=integer

specifies the in-memory graph to use.

Default-1

indexOffset=integer

specifies the index offset for identifiers in the log and results output data tables. For example, if three entities are found, they are labeled entity 0, 1, and 2 by default. If the value of indexOffset is 4, the entities are labeled entity 4, 5, and 6.

Default0
Minimum value0

specifies the input data table that contains the graph link information.

Long formlinks=list(name="table-name")
Shortcut formlinks="table-name"

The castable value can be one or more of the following:

specifies the caslib for the input table that you want to use with the action. By default, the active caslib is used. Specify a value only if you need to access a table from a different caslib.

when set to True, creates the computed variables when the table is loaded instead of when the action begins.

AliascompOnDemand
DefaultFALSE

specifies the names of the computed variables to create. Specify an expression for each variable in the computedVarsProgram parameter. If you do not specify this parameter, then all variables from computedVarsProgram are automatically included.

AliascompVars

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for each computed variable that you include in the computedVars parameter.

AliascompPgm

specifies data source options.

Aliasesoptions
dataSource

specifies the names of the variables to use for grouping results.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

specifies the name of the input table.

specifies the variables to use in the action.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for subsetting the input data.

specifies an input table that contains rows to use as a WHERE filter. If the vars parameter is not specified, then all the variable names that are common to the input table and the filtering table are used to find matching rows. If the where parameter for the input table and this parameter are specified, then this filtering table is applied first.

The groupbytable value can be one or more of the following:

specifies the caslib for the filter table. By default, the active caslib is used.

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

specifies the name of the filter table.

specifies the variable names to use from the filter table.

The casinvardesc value can be one or more of the following:

specifies the format to apply to the variable.

specifies the length of the format field plus the length of the format precision.

specifies the descriptive label for the variable.

specifies the name for the variable.

specifies the length of the format precision.

specifies the length of the format field.

specifies an expression for subsetting the data from the filter table.

linksVar=list(linksVar)

specifies the data variable names for the links table.

For more information about specifying the linksVar parameter, see the common linksVar parameter (Appendix A: Common Parameters).

logFreqTime=integer

controls the frequency n (in seconds) for displaying iteration logs for some algorithms, where n can be any integer greater than or equal to 1. This parameter is useful for computationally intensive algorithms. Setting n too low can hurt algorithm performance.

AliaslogFrequencyTime
Default5
Minimum value1

logLevel="AGGRESSIVE" | "BASIC" | "MODERATE" | "NONE"

controls the amount of information that is displayed in the SAS log.

DefaultBASIC
AGGRESSIVE

displays a more detailed summary of the input, output, and algorithmic processing.

BASIC

displays a brief summary of the algorithmic processing.

MODERATE

displays a moderately detailed summary of the input, output, and algorithmic processing.

NONE

turns off all action-related messages in the SAS log.

maxTime=double

specifies the maximum amount of time for the algorithm to spend. The default is the largest number that can be represented by a double.

Minimum value (exclusive)0

when set to True, includes multilinks when an input graph is read. By default, the value of this parameter is True for algorithms that support multilinks.

nodes=list(castable)

specifies the input data table that contains the graph node information.

Long formnodes=list(name="table-name")
Shortcut formnodes="table-name"

The castable value can be one or more of the following:

caslib="string"

specifies the caslib for the input table that you want to use with the action. By default, the active caslib is used. Specify a value only if you need to access a table from a different caslib.

computedOnDemand=TRUE | FALSE

when set to True, creates the computed variables when the table is loaded instead of when the action begins.

AliascompOnDemand
DefaultFALSE
computedVars=list( list(casinvardesc-1) <, list(casinvardesc-2), ...>)

specifies the names of the computed variables to create. Specify an expression for each variable in the computedVarsProgram parameter. If you do not specify this parameter, then all variables from computedVarsProgram are automatically included.

AliascompVars

The casinvardesc value can be one or more of the following:

format="string"

specifies the format to apply to the variable.

formattedLength=integer

specifies the length of the format field plus the length of the format precision.

label="string"

specifies the descriptive label for the variable.

* name="variable-name"

specifies the name for the variable.

nfd=integer

specifies the length of the format precision.

nfl=integer

specifies the length of the format field.

computedVarsProgram="string"

specifies an expression for each computed variable that you include in the computedVars parameter.

AliascompPgm
dataSourceOptions=list(key-1=list(any-list-or-data-type-1) <, key-2=list(any-list-or-data-type-2), ...>)

specifies data source options.

Aliasesoptions
dataSource
importOptions=list(fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters)

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

* name="table-name"

specifies the name of the input table.

vars=list( list(casinvardesc-1) <, list(casinvardesc-2), ...>)

specifies the variables to use in the action.

The casinvardesc value can be one or more of the following:

format="string"

specifies the format to apply to the variable.

formattedLength=integer

specifies the length of the format field plus the length of the format precision.

label="string"

specifies the descriptive label for the variable.

* name="variable-name"

specifies the name for the variable.

nfd=integer

specifies the length of the format precision.

nfl=integer

specifies the length of the format field.

where="where-expression"

specifies an expression for subsetting the input data.

whereTable=list(groupbytable)

specifies an input table that contains rows to use as a WHERE filter. If the vars parameter is not specified, then all the variable names that are common to the input table and the filtering table are used to find matching rows. If the where parameter for the input table and this parameter are specified, then this filtering table is applied first.

The groupbytable value can be one or more of the following:

casLib="string"

specifies the caslib for the filter table. By default, the active caslib is used.

importOptions=list(fileType="ANY" | "AUDIO" | "AUTO" | "BASESAS" | "CSV" | "DOCUMENT" | "DTA" | "ESP" | "EXCEL" | "FMT" | "HDAT" | "IMAGE" | "JMP" | "LASR" | "PARQUET" | "SPSS" | "VIDEO" | "XLS", fileType-specific-parameters)

specifies the settings for reading a table from a data source.

Aliasimport

For more information about specifying the importOptions parameter, see the common importOptions parameter (Appendix A: Common Parameters).

* name="table-name"

specifies the name of the filter table.

vars=list( list(casinvardesc-1) <, list(casinvardesc-2), ...>)

specifies the variable names to use from the filter table.

The casinvardesc value can be one or more of the following:

format="string"

specifies the format to apply to the variable.

formattedLength=integer

specifies the length of the format field plus the length of the format precision.

label="string"

specifies the descriptive label for the variable.

* name="variable-name"

specifies the name for the variable.

nfd=integer

specifies the length of the format precision.

nfl=integer

specifies the length of the format field.

where="where-expression"

specifies an expression for subsetting the data from the filter table.

nodesVar=list(nodesVar)

specifies the data variable names for the nodes table.

Long formnodesVar=list(node="variable-name")
Shortcut formnodesVar="variable-name"

The nodesVar value can be one or more of the following:

node="variable-name"

specifies the data variable name for the nodes.

Default"node"
vars=list("variable-name-1" <, "variable-name-2", ...>)

specifies the additional data variable names for node attributes.

varsOut=list("variable-name-1" <, "variable-name-2", ...>)

specifies the output data variable names for node attributes.

weight="variable-name"

specifies the data variable name for the node weights.

Default"weight"

nThreads=integer

specifies the maximum number of threads to use for multithreaded processing.

Range1–1024

out=list(casouttable)

specifies the output data table to contain the solution to the linear assignment problem.

For more information about specifying the out parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outGraphList=list(casouttable)

specifies the output data table to contain summary information about in-memory graphs.

For more information about specifying the outGraphList parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

specifies the output data table to contain the graph link information along with any results from the algorithms that calculate metrics on links.

For more information about specifying the outLinks parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outNodes=list(casouttable)

specifies the output data table to contain the graph node information along with any results from the algorithms that calculate metrics on nodes.

For more information about specifying the outNodes parameter, see the common casouttable (Form 1) parameter (Appendix A: Common Parameters).

outputTables=list(outputTables)

lists the names of results tables to save as CAS tables on the server.

For more information about specifying the outputTables parameter, see the common outputTables parameter (Appendix A: Common Parameters).

AliasdisplayOut

when set to True, includes self-links when an input graph is read.

DefaultTRUE

standardizedLabels=TRUE | FALSE

when set to True, specifies that the input graph data are in a standardized format.

DefaultFALSE

standardizedLabelsOut=TRUE | FALSE

when set to True, requests that the output graph data include standardized format.

DefaultFALSE

timeType="CPU" | "REAL"

specifies whether to use CPU time or real time for the maximum time limit.

DefaultREAL
CPU

specifies units of CPU time. The time restriction is applied per processing machine (not across all machines).

REAL

specifies units of real time.

Result Descriptions

ProblemSummary

contains a basic summary of the graph input. The result is a table. You can access the value from results.ProblemSummary.

SolutionSummary

contains a basic solution summary for the algorithm. The result is a table. You can access the value from results.SolutionSummary.

objective

indicates the total weight of the minimum linear assignment. The result is a double. You can access the value from results.objective.

solutionStatus

indicates the solution status of the selected problem type (algorithm class). The result is a string. You can access the value from results.solutionStatus.

Last updated: August 23, 2022