Brauche Hilfe mit For-SchleifeHallo, ich habe einen solchen Tisch und möchte folgendes tun:
-> Machen Sie für jede Zeile ein + -1 bis X und + -1 bis Y und nehmen Sie den Median dieser vier Alterswerte und speichern Sie ihn unter einer neuen Spalte. Kann jemand bitte helfen?
X Y Alter
-1 2 27
2 -1 23
4 5 56
-7 -4 43
Betreff: Brauche Hilfe bei der For-SchleifeVielen Dank, tolle Hilfe!
Betreff: Brauche Hilfe bei der For-SchleifeIm Anhang finden Sie eine Beispieldatentabelle mit den 4 neuen Spalten und ihren Formeln sowie die Median-Spalte mit der Formel. Nachfolgend finden Sie ein Beispiel für die Formeln, die ich in die Datentabelle eingefügt habe. Dies ist die X-1, Y-Spaltenformel
dt = Current Data Table();
TheRow = Row();
Xval = :X - 1;
Yval = :Y;
MyRows = dt << get rows where( :X == Xval & :Y == Yval );
If( N Rows( MyRows ) > 0,
TheResult = dt:Age[MyRows[1]]
);
Betreff: Brauche Hilfe bei der For-SchleifeDas ist richtig, auf diese Weise erhalten wir vier verschiedene Alterswerte aus den vier verschiedenen Koordinatenkombinationen.
Betreff: Brauche Hilfe bei der For-SchleifeIch bin auf der Suche nach weiteren Spezifikationen. Suchen Sie für einen gegebenen Fall mit X = 3 und Y = -1 nach dem Wert der Spalte Alter, wobei X = X-1 und Y unverändert ist: Verwenden Sie Ihre kleine Beispieltabelle
: Alter ==> wobei (X == 2 und Y == - 1) ==> 23
Suchst du danach?
Betreff: Brauche Hilfe bei der For-Schleife @ rk1988 :
Entschuldigung, ich folge Ihrer Anforderung hier nicht wirklich. Wenn Sie in den Variablen "X" und "Y", wie Sie erklärt haben, einen Bias einführen, werden die Werte in der Spalte "Alter" nicht beeinflusst. Alter1 bis Alter4 und ihr Mittelwert ist festgelegt, es sei denn, der Vorurteil wird in Alter eingeführt.
Und dieses Mittel kann erworben werden durch:
Col Mean(:Age) ;
Entschuldigungen, denen ich nicht folgen kann, möchten Sie demonstrieren, was Sie in einem Excel-Arbeitsblatt manuell möchten, also ist es möglicherweise klarer.
Betreff: Brauche Hilfe bei der For-SchleifeVielen Dank für Ihre Antwort
Lassen Sie mich klären ...
Für jede Reihe:
1 addiere 1 zu X, geh jetzt zu dieser Zeile mit Koordinaten (X + 1, Y) und nimm den Alterswert -> das ist die Variable Age1
2. subtrahieren 1 von X, gehe nun zu dieser Zeile mit den Koordinaten (X-1, Y) und nimm den Alterswert -> das ist die Variable Age2
3. addiere 1 zu Y, gehe nun zu dieser Zeile mit den Koordinaten (X, Y + 1) und nimm den Alterswert -> das ist die Variable Age3
4 subtrahieren 1 von Y, gehe jetzt zu dieser Zeile mit Koordinaten (X, Y-1) und nimm den Alterswert -> dies ist die Variable Age4
5 Berechnen Sie den Median von Alter1 ... 4 und speichern Sie diesen unter einer neuen Spalte
Wiederholen Sie die Schritte für jede Zeile ...
Betreff: Brauche Hilfe bei der For-Schleife @ rk1988 :
Nehmen wir an, Ihr Tisch heißt "dt".
Der folgende Code sollte 1 zu X und Y als neue Spalten addieren und subtrahieren.
dt << New Column("AddXBias",Numeric,Continuous,Formula(:X+1))
<< New Column("SubXBias",Numeric,Continuous,Formula(:X-1))
<< New Column("AddYBias",Numeric,Continuous,Formula(:Y+1))
<< New Column("SubYBias",Numeric,Continuous,Formula(:Y-1)); Die Frage ist nun, welche Spalten Sie als Mittelwert verwenden möchten.
Wenn es nur die Altersspalte ist, sollte dies dies tun
AgeMean = Col Mean(:Age);
Wenn es sich um andere Werte handelt, geben Sie bitte eine klare Richtung an und ich versuche zu helfen