2017-09-23 1 views
0

Ich bin auf der Suche nach der geeigneten Syntax zum Extrahieren des Maximalwerts aus einer Matrix und Speichern in einer lokalen Variable für ein traditionelles Stato .do-Dateiprogramm.Stata - Max Wert in einer Matrix

Zum Beispiel in der Matrix:

matrix X = (1,2,3 \4,5,6\7,8,9) 

die Funktion die Nummer zurückgeben sollte 9.

ich in der Mata Handbuch ausgesehen haben und fand Bezug auf die colmax, colmin und max Funktionen für Mata aber ich kann sie nicht zur Arbeit bringen.

Antwort

0

Sie sollten Versuche mit Code zeigen und was passiert ist, um konstruktive Ratschläge zu erhalten, was Sie falsch machen.

Betrachten

. mata: max((1,2\3,4)) 
    4 

. mat x = (1,2\3,4) 

. mata : max(st_matrix("x")) 
    4 

. mata: st_local("max", strofreal(max(st_matrix("x")))) 

. di `max' 
4 

Der Begriff "lokale Variable" fremd ist Stata; Eine Variable ist eine Variable (Spalte) in einem Dataset (nur). Der Standardbegriff ist "lokales Makro". In vielen anderen Sprachen würde eine solche Entität natürlich als eine Variable angesehen werden.

Das Zurückgeben eines Maximums an Stata als numerischer Skalar wäre oft eine bessere Idee. Umgekehrt ist es am wahrscheinlichsten, dass Sie vermissen, dass ein lokales Makro eine Zeichenfolge ist und Sie daher den Wert als Zeichenfolge zurückgeben müssen.

Verwandte Themen