如何指定開始日期?我對不同日期進入的網站進行了縱向研究。 為了使它們具有可比性,我需要將每個輸入日期指定為“1”,將第二個資料收集點指定為“2”,依此類推。 資料為長格式,存在大量缺失資料(missed data collection)
數據看起來像這樣,我想產生“Count”:
ID 日期 Var1 計數
001 一月 1 日。 。
001 二月 1 日。 。
001 三月 1 10 1
001 四月 1 日 13 2
002 一月 1 8 1
002 二月-1 10 2
002 三月 1 日。 。
我使用了 JRP 公式,但無論第一個度量是否缺失,它都會計算每一行。
回覆:如何指定開始日期?謝謝!
我一直在嘗試學習 JMP 編程,這種互動很有幫助,尤其是當書中沒有奇怪的請求時。回覆:如何指定開始日期?我附上了新版本的公式。 它應該按照您最新的修改所述工作。
請注意,討論社區並不是一個「代碼工廠」。 它的目的是幫助用戶解決問題,以便他們可以學習並從中解決自己的問題。
JMP 提供了大量文件。 請前往
幫助==>書籍==>使用JMP
和
幫助==>書籍==>腳本指南
回覆:如何指定開始日期?偉大的! 感謝您的澄清和修改後的公式! 我很感激。
除非缺少的模式是混合的,否則修訂有效。 例如,請參閱下面的“Site=001”,我的結果與修改後的公式(計數)以及我希望它給我的結果類似。
網站日期 Var1 計數 What_I_Want
001 五月。 。 。
001 2010 年 6 月 1 1
001 七月 . 。 。
001 八月 12 日。 2
001 九月 15 日。 3
002 5 月 13 日 1 1
002 14 月 2 日 2 2
回覆:如何指定開始日期?1.我附上了一個新的範例資料表,其中包含處理您所請求內容的新公式
2. 是的,您需要將 :ID 列名稱變更為重新啟動計數器的變數名稱,並將 :Var 1 變更為測量列名稱。
3. 您不應該更改名為「TheColumn」的記憶體變數的名稱;這不是列名,它只是用於在公式中進行一些計算。 在新公式中,我將變數名稱更改為“Zippy”,試圖表明它與任何列名稱都不相關。 與公式末尾變數的最終列表的唯一連接。 JMP 接受最後指定的內容(在本例中為 Zippy 的計算值),並將其傳遞給要用於正在套用格式的列以及目前正在處理公式的行的值。
2. Is Missing() 是一個函數,如果函數「:Var 1」的內容是缺失值,則函數將傳回 1。如果該值不缺失,則傳回 0。「== " 是「等於」的比較運算符。 因此“== 0”詢問“Is Missing()”函數是否回傳“0”,這表示變數值是有效值。
回覆:如何指定開始日期?吉姆,
感謝您的關注。
1.我們可以讓Count列在數值缺失時停止計數嗎? 在您的範例中,它會重複最後的計數,大概會這樣做,直到 ID 號碼發生變化。
2.我複製並貼上了你的公式。 我在公式中唯一更改的是變數的名稱,以便它與我的資料集完全匹配。
3. 我的任何變數名稱中都沒有出現「count」一詞。 我將“TheCount”變數重新命名為“Column 10”並收到相同的錯誤訊息。 我還嘗試重命名我的網站變數。 同樣的問題。
4.我使用的是 JMP Pro 13.1
缺少 (Var1) == 0 那麼 TheCount=1
翻譯為如果 Var1 缺失,則新變數 (TheCount)=1? 但是「==0」有什麼作用呢?
這就是我所擁有的,包括我的變數名稱。
如果(落後( : 站點 ID ) != : 站點 ID,
如果(不見了(:NozeroValue) == 0 ,
:第 10 欄 = 1 ,
:第 10 欄 = 。
),
如果(不見了(:NozeroValue) == 0 ,
:第 10 欄 =和(:第 10 欄, 1 )
)
);
:第 10 欄;
回覆:如何指定開始日期?我看來您打開了我附加的數據表。 從您的陳述中,您可以看到 Count 列的值。 如果您看到這些值,則表示該公式有效。 計數僅變為 2 的原因是,當 ID 列變更時計數會重置,計數器會重新啟動,就像您提供的範例一樣。
您是否更改了我提供的公式中的任何內容? 如果您嘗試在名為“Count”的欄位的公式中使用名稱“Count”,則可能會發生遞迴問題。 這就是為什麼我使用變數名稱“TheCount”進行計算。 該公式將使用計算的最後一項傳遞給用於公式的值
最後,您使用的是哪個版本的 JMP?
回覆:如何指定開始日期?唔。 同樣的錯誤訊息。 我給你的資料是我編的,但思路是一樣的,只是ID是我資料中的字元。 這會有所不同嗎?
另外,請注意您的公式在 2 處停止計數。
謝謝!
回覆:如何指定開始日期?附件是一個資料集,其中包含列計數的公式集
回覆:如何指定開始日期?這個公式給了我以下錯誤
“非法引用(遞歸)1 次,行數:2”
我按照公式計算,但不知道錯誤在哪裡。
回覆:如何指定開始日期?這是可行的公式的一個版本
If( Lag( :ID ) != :ID,
If( Is Missing( :Var1 ) == 0,
TheCount = 1,
TheCount = .
),
If( Is Missing( :Var1 ) == 0,
TheCount = Sum( TheCount, 1 )
)
);
TheCount;