Network Action Set

Provides actions for network analysis

topologicalSort Action

Calculates the topological ordering of a graph.

CASL Syntax

network.topologicalSort <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,
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,
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,
;

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

 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.

Default TRUE

direction="DIRECTED" | "UNDIRECTED"

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

Default UNDIRECTED
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.

Default FALSE

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.

Default 0
Minimum value 0

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

Long form links={name="table-name"}
Shortcut form links="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.

Alias compOnDemand
Default FALSE

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.

Alias compVars

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.

Alias compPgm

specifies data source options.

Aliases options
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.

Alias import

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.

Alias import

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.

Alias logFrequencyTime
Default 5
Minimum value 1

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

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

Default BASIC
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.

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 form nodes={name="table-name"}
Shortcut form nodes="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.

Alias compOnDemand
Default FALSE
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.

Alias compVars

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.

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

specifies data source options.

Aliases options
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.

Alias import

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.

Alias import

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 form nodesVar={node="variable-name"}
Shortcut form nodesVar="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.

Range 1–1024

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).

Alias displayOut

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

Default TRUE

standardizedLabels=TRUE | FALSE

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

Default FALSE

standardizedLabelsOut=TRUE | FALSE

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

Default FALSE

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.

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.

topologicalSort Action

Calculates the topological ordering of a graph.

Lua Syntax

results, info = s:network_topologicalSort{
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,
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,
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,
}

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

 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.

Default true

direction="DIRECTED" | "UNDIRECTED"

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

Default UNDIRECTED
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.

Default false

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.

Default 0
Minimum value 0

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

Long form links={name="table-name"}
Shortcut form links="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.

Alias compOnDemand
Default false

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.

Alias compVars

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.

Alias compPgm

specifies data source options.

Aliases options
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.

Alias import

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.

Alias import

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.

Alias logFrequencyTime
Default 5
Minimum value 1

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

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

Default BASIC
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.

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 form nodes={name="table-name"}
Shortcut form nodes="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.

Alias compOnDemand
Default false
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.

Alias compVars

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.

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

specifies data source options.

Aliases options
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.

Alias import

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.

Alias import

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 form nodesVar={node="variable-name"}
Shortcut form nodesVar="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.

Range 1–1024

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).

Alias displayOut

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

Default true

standardizedLabels=true | false

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

Default false

standardizedLabelsOut=true | false

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

Default false

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.

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.

topologicalSort Action

Calculates the topological ordering of a graph.

Python Syntax

results=s.network.topologicalSort(
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,
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,
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,
)

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

 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.

Default True

direction="DIRECTED" | "UNDIRECTED"

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

Default UNDIRECTED
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.

Default False

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.

Default 0
Minimum value 0

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

Long form links={"name":"table-name"}
Shortcut form links="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.

Alias compOnDemand
Default False

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.

Alias compVars

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.

Alias compPgm

specifies data source options.

Aliases options
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.

Alias import_

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.

Alias import_

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.

Alias logFrequencyTime
Default 5
Minimum value 1

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

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

Default BASIC
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.

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 form nodes={"name":"table-name"}
Shortcut form nodes="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.

Alias compOnDemand
Default False
"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.

Alias compVars

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.

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

specifies data source options.

Aliases options
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.

Alias import_

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.

Alias import_

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 form nodesVar={"node":"variable-name"}
Shortcut form nodesVar="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.

Range 1–1024

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).

Alias displayOut

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

Default True

standardizedLabels=True | False

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

Default False

standardizedLabelsOut=True | False

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

Default False

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.

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.

topologicalSort Action

Calculates the topological ordering of a graph.

R Syntax

results <– cas.network.topologicalSort(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,
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,
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,
)

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

 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.

Default TRUE

direction="DIRECTED" | "UNDIRECTED"

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

Default UNDIRECTED
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.

Default FALSE

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.

Default 0
Minimum value 0

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

Long form links=list(name="table-name")
Shortcut form links="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.

Alias compOnDemand
Default FALSE

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.

Alias compVars

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.

Alias compPgm

specifies data source options.

Aliases options
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.

Alias import

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.

Alias import

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.

Alias logFrequencyTime
Default 5
Minimum value 1

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

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

Default BASIC
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.

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 form nodes=list(name="table-name")
Shortcut form nodes="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.

Alias compOnDemand
Default FALSE
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.

Alias compVars

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.

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

specifies data source options.

Aliases options
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.

Alias import

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.

Alias import

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 form nodesVar=list(node="variable-name")
Shortcut form nodesVar="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.

Range 1–1024

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).

Alias displayOut

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

Default TRUE

standardizedLabels=TRUE | FALSE

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

Default FALSE

standardizedLabelsOut=TRUE | FALSE

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

Default FALSE

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.

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: November 23, 2025