如果缺少前列,則添加數據你好
我正在嘗試在數據集中創建一個包含最新可用日期的列。因此,在這種情況下,如果訪問19中缺少日期,我將從訪問18中獲取日期。我能做的。但是,如果缺少第18次訪問日期,我將使其無法正常工作。那麼,如何使jmp從一列開始並返回直到有日期?
朱莉(Br Julie)
回复:如果缺少,則從前幾列添加數據您只需要完全捨棄If(isMissing(子句)。 只要“最後一次看到的日期”列中所有缺少的值,它實際上都沒有改變
回复:如果缺少,則從前幾列添加數據好的-這很有道理。但是運行腳本不會將任何值添加到新列。
不應該不見了 ”語句指向第19列?還是我遺漏了什麼?
回复:如果缺少,則從前幾列添加數據我在i = 5上的錯誤。 我正在測試...。我將其更改為i = 1。
如果需要新列,則可以將其添加為第20列,並使用第二個腳本。
Names Default To Here( 1 );
dt = Current Data Table();
dt << New Column("Last Date Seen",format("yyyy-mm-dd",12));
For( i = 1, i <= N Rows( dt ), i++,
If( Is Missing( As Column( "Last Date Seen" )[i] ),
Column( "Last Date Seen" )[i] = Max( dt[i, 0] )
)
);回复:如果缺少,則從前幾列添加數據但是,不是只用最新日期填寫最後一列而不是創建新列嗎?
另外,在第一個大本營中,為什麼“ = 5“?
提前致謝
回复:如果缺少,則從前幾列添加數據這是兩種方法
Names Default To Here( 1 );
dt = Current Data Table();
For( i = 1, i <= N Cols( dt ), i++,
missingRows = dt << get rows where( Is Missing( As Column( i ) ) );
If( N Rows( missingRows ) > 0,
For( k = 1, k <= N Rows( missingRows ), k++,
Column( i )[missingRows[k]] = Column( i - 1 )[missingRows[k]]
)
);
);
Names Default To Here( 1 );
dt = Current Data Table();
For( i = 1, i <= N Rows( dt ), i++,
If( Is Missing( As Column( 19 )[i] ),
Column( 19 )[i] = Max( dt[i, 0] )
)
);
回复:如果缺少,則從前幾列添加數據如果您從第一行開始進行迭代,那麼當您在表格中進行迭代時,您應該能夠使用上一個日期來填寫缺失的日期。對我來說,這似乎很簡單,但我可能錯過了重要的一點。