copula

copulaSimulate

Beschreibung

Simuliert Daten aus einem spezifizierten Copula-Modell.

copula.copulaSimulate <result=results> <status=rc> / define={copulaType="CLAYTON" | "FRANK" | "GUMBEL" | "NORMAL" | "T", corrtable={caslib="string", computedOnDemand=TRUE | FALSE, computedVars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, computedVarsProgram="string", dataSourceOptions={key-1=any-list-or-data-type-1, ...}, groupBy={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, groupByMode="NOSORT" | "REDISTRIBUTE", 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}, name="table-name", orderBy={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, singlePass=TRUE | FALSE, vars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, where="where-expression", whereTable={casLib="string", dataSourceOptions={adls_noreq-parameters | bigquery-parameters | cas_noreq-parameters | clouddex-parameters | db2-parameters | dnfs-parameters | esp-parameters | fedsvr-parameters | gcs_noreq-parameters | hadoop-parameters | hana-parameters | impala-parameters | informix-parameters | jdbc-parameters | mongodb-parameters | mysql-parameters | odbc-parameters | oracle-parameters | path-parameters | postgres-parameters | redshift-parameters | s3-parameters | sapiq-parameters | sforce-parameters | singlestore_standard-parameters | snowflake-parameters | spark-parameters | spde-parameters | sqlserver-parameters | ss_noreq-parameters | teradata-parameters | vertica-parameters | yellowbrick-parameters}, 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}, name="table-name", vars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, where="where-expression"}}, df=double, KendallCorrtable={caslib="string", computedOnDemand=TRUE | FALSE, computedVars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, computedVarsProgram="string", dataSourceOptions={key-1=any-list-or-data-type-1, ...}, groupBy={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, groupByMode="NOSORT" | "REDISTRIBUTE", 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}, name="table-name", orderBy={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, singlePass=TRUE | FALSE, vars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, where="where-expression", whereTable={casLib="string", dataSourceOptions={adls_noreq-parameters | bigquery-parameters | cas_noreq-parameters | clouddex-parameters | db2-parameters | dnfs-parameters | esp-parameters | fedsvr-parameters | gcs_noreq-parameters | hadoop-parameters | hana-parameters | impala-parameters | informix-parameters | jdbc-parameters | mongodb-parameters | mysql-parameters | odbc-parameters | oracle-parameters | path-parameters | postgres-parameters | redshift-parameters | s3-parameters | sapiq-parameters | sforce-parameters | singlestore_standard-parameters | snowflake-parameters | spark-parameters | spde-parameters | sqlserver-parameters | ss_noreq-parameters | teradata-parameters | vertica-parameters | yellowbrick-parameters}, 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}, name="table-name", vars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, where="where-expression"}}, name="string", SpearmanCorrtable={caslib="string", computedOnDemand=TRUE | FALSE, computedVars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, computedVarsProgram="string", dataSourceOptions={key-1=any-list-or-data-type-1, ...}, groupBy={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, groupByMode="NOSORT" | "REDISTRIBUTE", 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}, name="table-name", orderBy={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, singlePass=TRUE | FALSE, vars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, where="where-expression", whereTable={casLib="string", dataSourceOptions={adls_noreq-parameters | bigquery-parameters | cas_noreq-parameters | clouddex-parameters | db2-parameters | dnfs-parameters | esp-parameters | fedsvr-parameters | gcs_noreq-parameters | hadoop-parameters | hana-parameters | impala-parameters | informix-parameters | jdbc-parameters | mongodb-parameters | mysql-parameters | odbc-parameters | oracle-parameters | path-parameters | postgres-parameters | redshift-parameters | s3-parameters | sapiq-parameters | sforce-parameters | singlestore_standard-parameters | snowflake-parameters | spark-parameters | spde-parameters | sqlserver-parameters | ss_noreq-parameters | teradata-parameters | vertica-parameters | yellowbrick-parameters}, 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}, name="table-name", vars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, where="where-expression"}}, theta=double}, display={caseSensitive=TRUE | FALSE, exclude=TRUE | FALSE, excludeAll=TRUE | FALSE, keyIsPath=TRUE | FALSE, names={"string-1", ...}, pathType="LABEL" | "NAME", traceNames=TRUE | FALSE}, margApproxOpts={algorithm="BIN" | "SORT", interpolation="LINEAR" | "MONOCUBIC" | "STEP", maxiters=integer, refineres=integer, sampletol=double}, ndraws=64-bit-integer, outempirical={caslib="string", compress=TRUE | FALSE, indexVars={"variable-name-1", ...}, 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", ...}}, outputTables={groupByVarsRaw=TRUE | FALSE, includeAll=TRUE | FALSE, names={"string-1", ...} | {key-1={casouttable-1}, ...}, repeated=TRUE | FALSE, replace=TRUE | FALSE}, outuniform={caslib="string", compress=TRUE | FALSE, indexVars={"variable-name-1", ...}, 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", ...}}, plot={kendall=TRUE | FALSE, marginals=TRUE | FALSE, nsamples=integer, nvar=integer, resolution=integer, scatter=TRUE | FALSE, tail=TRUE | FALSE, uniform=TRUE | FALSE, unpackpanel=TRUE | FALSE}, restore={caslib="string", dataSourceOptions={key-1=any-list-or-data-type-1, ...}, name="table-name", whereTable={casLib="string", dataSourceOptions={adls_noreq-parameters | bigquery-parameters | cas_noreq-parameters | clouddex-parameters | db2-parameters | dnfs-parameters | esp-parameters | fedsvr-parameters | gcs_noreq-parameters | hadoop-parameters | hana-parameters | impala-parameters | informix-parameters | jdbc-parameters | mongodb-parameters | mysql-parameters | odbc-parameters | oracle-parameters | path-parameters | postgres-parameters | redshift-parameters | s3-parameters | sapiq-parameters | sforce-parameters | singlestore_standard-parameters | snowflake-parameters | spark-parameters | spde-parameters | sqlserver-parameters | ss_noreq-parameters | teradata-parameters | vertica-parameters | yellowbrick-parameters}, 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}, name="table-name", vars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, where="where-expression"}}, seed=integer, table={caslib="string", computedOnDemand=TRUE | FALSE, computedVars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, computedVarsProgram="string", dataSourceOptions={key-1=any-list-or-data-type-1, ...}, groupBy={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, groupByMode="NOSORT" | "REDISTRIBUTE", 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}, name="table-name", orderBy={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, singlePass=TRUE | FALSE, vars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, where="where-expression", whereTable={casLib="string", dataSourceOptions={adls_noreq-parameters | bigquery-parameters | cas_noreq-parameters | clouddex-parameters | db2-parameters | dnfs-parameters | esp-parameters | fedsvr-parameters | gcs_noreq-parameters | hadoop-parameters | hana-parameters | impala-parameters | informix-parameters | jdbc-parameters | mongodb-parameters | mysql-parameters | odbc-parameters | oracle-parameters | path-parameters | postgres-parameters | redshift-parameters | s3-parameters | sapiq-parameters | sforce-parameters | singlestore_standard-parameters | snowflake-parameters | spark-parameters | spde-parameters | sqlserver-parameters | ss_noreq-parameters | teradata-parameters | vertica-parameters | yellowbrick-parameters}, 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}, name="table-name", vars={{format="string", formattedLength=integer, label="string", name="variable-name", nfd=integer, nfl=integer}, ...}, where="where-expression"}}, tolerance=double, var={"string-1", ...};
Einstellungen
ParameterBeschreibung
defineGibt die relevanten Informationen über die Copula an, die für die Simulation verwendet wird.
copulatypeGibt den Typ der Copula an.
corrtableGibt den Datensatz an, der die Pearson-Korrelationsmatrix enthält, die zur Simulation elliptischer Copulas verwendet wird.
dfGibt die Freiheitsgrade an. Diese Option kann nur für T-Copulas verwendet werden.
KendallCorrtableGibt den Datensatz an, der die Kendall-Korrelationsmatrix enthält, die zur Simulation elliptischer Copulas verwendet wird.
nameGibt den Namen der Copula-Definition an.
SpearmanCorrtableGibt den Datensatz an, der die Spearman-Korrelationsmatrix enthält, die zur Simulation von Gauß-Copulas verwendet wird.
thetaGibt den Parameterwert für die archimedischen Copulas an.
displayGibt die Liste der Anzeigetabellen an, die die Aktion erstellen soll. Wenn Sie diesen Parameter weglassen, werden alle Tabellen erstellt.
margApproxOptsGibt die Optionen an, die bei der Annäherung der empirischen Randverteilungsfunktion mit der adaptiven Methode verwendet werden.
ndrawsGibt die Anzahl der zu generierenden Beobachtungen für die Simulation an.
outempiricalGibt den Ausgabedatensatz an, der das Ergebnis der Simulation unter Verwendung empirischer Ränder enthalten soll.
outputTablesGibt die Liste der Anzeigetabellen an, die Sie als CAS-Tabellen ausgeben möchten. Wenn Sie diesen Parameter weglassen, werden keine Tabellen als CAS-Tabellen ausgegeben.
outuniformGibt den Ausgabedatensatz an, der das Ergebnis der Simulation in einheitlichen Rändern enthalten soll.
plotGibt die Optionen an, die zur Erstellung von Korrelationsdiagrammen verwendet werden.
restoreStellt Modelleigenschaften und endgültige Schätzungen aus dem angegebenen Item-Store wieder her und verwendet die wiederhergestellten Informationen zur Durchführung der Simulation.
seedGibt den Seed für die Erzeugung von Zufallszahlen für die Simulation an.
tableGibt die Eingabedatentabelle an.
toleranceGibt die für die Simulation zulässige Toleranz an.
varGibt die Liste der Variablennamen für den Ausgabedatensatz an.
Erstellung von Beispieldaten

Dieser Code erstellt zwei Tabellen: `mycas.corrmatx`, die eine Korrelationsmatrix enthält, und `mycas.simulatedData`, die als Eingabedaten für die Ränder verwendet wird. Diese Tabellen sind für die Ausführung der `copulaSimulate`-Beispiele erforderlich.

Kopiert!
1DATA corrmatx;
2 INPUT _type_ $ _name_ $ y1 y2;
3 DATALINES;
4 corr y1 1.0 0.5
5 corr y2 0.5 1.0
6 ;
7RUN;
8 
9DATA simulatedData;
10 DO i = 1 to 100;
11 u1 = rand('UNIFORM');
12 u2 = rand('UNIFORM');
13 y1 = quantile('NORMAL', u1);
14 y2 = quantile('NORMAL', u2);
15 OUTPUT;
16 END;
17 keep y1 y2;
18RUN;
19 
20PROC CASUTIL;
21 load DATA=corrmatx outcaslib="casuser" casout="corrmatx" replace;
22 load DATA=simulatedData outcaslib="casuser" casout="simulatedData" replace;
23QUIT;

Beispiele

Dieses Beispiel zeigt, wie man 10.000 Beobachtungen aus einer bivariaten Normal-Copula mit einer angegebenen Korrelationsmatrix simuliert.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1PROC CAS;
2 copula.copulaSimulate /
3 define={copulaType='NORMAL', corrTable={name='corrmatx'}},
4 ndraws=10000,
5 seed=1234,
6 var={'y1', 'y2'},
7 outuniform={name='outunif', replace=true};
8RUN;
9QUIT;
Ergebnis :
Eine CAS-Tabelle namens 'outunif' wird in der 'casuser'-Bibliothek erstellt, die die simulierten Daten mit einheitlichen Rändern enthält.

Dieses Beispiel simuliert Daten aus einer t-Copula mit 5 Freiheitsgraden. Es verwendet die `simulatedData`-Tabelle, um die empirischen Ränder zu schätzen, und gibt sowohl die Simulation mit einheitlichen Rändern als auch die Simulation mit den transformierten empirischen Rändern aus.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1PROC CAS;
2 copula.copulaSimulate /
3 TABLE={name='simulatedData'},
4 define={copulaType='T', df=5, corrTable={name='corrmatx'}},
5 ndraws=5000,
6 seed=5678,
7 var={'y1', 'y2'},
8 outuniform={name='outunif_t', replace=true},
9 outempirical={name='outemp_t', replace=true};
10RUN;
11QUIT;
Ergebnis :
Zwei CAS-Tabellen werden erstellt: 'outunif_t' mit den einheitlichen Rändern und 'outemp_t' mit den Daten, die auf die ursprüngliche Skala unter Verwendung der empirischen Ränder zurücktransformiert wurden.

FAQ

Was ist der Zweck der Aktion `copula.copulaSimulate` in SAS Viya?
Welche Parameter sind erforderlich, um eine Simulation mit `copula.copulaSimulate` durchzuführen?
Wie kann ich Daten aus einer t-Copula simulieren?
Welche Arten von Ausgabe-Datensätzen kann die Aktion `copula.copulaSimulate` erstellen?
Kann ich die Ergebnisse der Simulation visualisieren?