Forループの助けが必要こんにちは私はこのようなテーブルがあり、私がやりたいことは次のとおりです。
- >すべての行について、Xに+ -1、Yに+ -1を実行し、それら4つのAge値の中央値を取り、新しい列の下に保存します。誰かが助けてもらえますか?
X Y年齢
-1 2 27
2 -1 23
4 5 56
-7 -4 43
再:Forループの助けが必要どうもありがとうございました。
再:Forループの助けが必要添付されているのは、4つの新しい列とそれらの式、および中央値の列とその式を含むサンプルデータテーブルです。 以下は、データテーブルに配置した式の例です。 これはX-1、Y列の公式です
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]]
);
再:Forループの助けが必要それは正しいです、そのように我々は4つの異なる座標の組み合わせから4つの異なるAge値を得ます。
再:Forループの助けが必要さらなる仕様を探しています。 X = 3、Y = -1の場合、Age列の値を探します。ここで、X = X-1で、Yは変更されていません。小さなサンプル表を使用する
:年齢==>ここで(X == 2そしてY == - 1)==> 23
これはあなたが探しているものですか?
再:Forループの助けが必要 @ rk1988 :
申し訳ありませんが、ここで実際にあなたの要求に従っていません。あなたが説明したように変数 "X"と "Y"にバイアスを導入しようとするならば、列 "Age"の値は影響を受けないでしょう。年齢にバイアスが導入されない限り、年齢1から年齢4とその平均は固定されています。
そしてその意味は次のようにして得られる。
Col Mean(:Age) ;
私が従うことができない謝罪は、あなたが手動であなたがExcelシートで欲しいものを示すのを好むでしょう、それでそれはより明確かもしれません。
再:Forループの助けが必要ご回答いただきありがとうございます。
各行について:
1。Xに1を加えて、座標(X + 1、Y)でその行に行き、年齢の値をつかむ - >これは変数Age1です
2。 引く Xから1、座標(X-1、Y)でその行に移動し、年齢値を取得します - >これは変数Age2です
3。Yに1を加えて、座標(X、Y + 1)でその行に行き、年齢の値をつかむ - >これは変数Age3です
4。 引く Yから1、座標(X、Y-1)でその行に行き、年齢の値を取得します - >これは変数Age4です
5。Age1 ... 4の中央値を計算し、それを新しい列の下に保存します
各行について手順を繰り返します。
再:Forループの助けが必要 @ rk1988 :
あなたのテーブルが "dt"と呼ばれているとしましょう。
次のコードは、新しい列としてXとYに1を加算して減算します。
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)); さて、問題はあなたがどの列を意味したいのですか?
それが単に年齢の欄であれば、これはそれをするべきです
AgeMean = Col Mean(:Age);
それが他の値であるならば、どの値に明確な指示を与えてください、そして、私は助けようとします