自動更正個人數據我在我的數據集中發現了非常具體的錯誤。我可以輕鬆地手動修復它們,但由於各種原因,我需要自動化/編寫腳本。具體來說,我需要將“任務”列中的值從“貢獻者”更改為“審閱者”,但僅限於許多單元格中非常特定的單元格。這些儲存格可以透過一列或多列「報告#」或「名稱」中的內容來識別。
名稱和任務值均有效並顯示在不需要變更的其他記錄中。
所附文件是一個小範例,其中第 1 行和第 2 行的「貢獻者」應替換為「審閱者」。
我不知道如何使用 Col=>Recode 只更改那些記錄。
我檢查了日誌並嘗試了工作流程產生器,但現在顯示了對錶的手動編輯或使用行編輯器。
我正在嘗試學習 JSL。儘管這看起來很簡單,但我陷入了困境,並且希望有一個指向文件中正確部分或要使用的概念的指標。
自動化和腳本編寫資料混合與清理回覆:自動更正個人數據資料表下標、<< Get RowsWhere、<
我不明白這一點「名稱和任務值都是有效的,並且顯示在不需要更改的其他記錄中。 」所以我無法給出更準確的答案。
回覆:自動更正個人數據感謝您要求澄清。
我的意思是我無法重新編碼涉及“John Doe”或“Jane Doe”的所有記錄,因為其中大多數記錄不應更改。
John Doe 的名字拼寫正確,無需更改。
John Doe 被正確列為其他報告的貢獻者和審查者。
我無法重新編碼「貢獻者」任務的所有記錄,因為其中大多數都是正確的。
我無法重新編碼特定報告的所有記錄,因為大多數行都是正確的。
我需要更改特定單元格,例如報告#123456 John Doe 從貢獻者變成審閱者。
這基本上是一個維恩圖問題。我可以選擇需要更改的行,但我不知道如何更改所選行的特定列中的值。
這樣是不是更清楚了?
回覆:自動更正個人數據並不是真的,因為我不明白這些選擇應該基於什麼,但這裡有一些可以做什麼的例子。
使用條件
Names Default To Here(1);
dt = Open("$DOWNLOADS/IndividualValueEditsExample.jmp");
rows_to_update = dt << Get Rows Where(:"Report#" == "123456" & :Task == "Contributor" & :Name == "John Doe");
dt[rows_to_update, "Task"] = "Reviewer";
使用選定的行
Names Default To Here(1);
dt = Open("$DOWNLOADS/IndividualValueEditsExample.jmp");
dt << Select Rows(1::2);
sel_rows = dt << Get Selected Rows;
dt[sel_rows, "Task"] = "Reviewer";回覆:自動更正個人數據JMP 資料表中的任何特定資料單元都可以透過以下方式直接存取
列[行]
因此,要更改第 1 行和第 2 行的 Task 值,最直接的 JSL 是
names default to here(1);
:Task[1] = "Reviewer";
:Task[2] = "Reviewer";
我無法確定根據您的陳述評估規則以確定哪些行需要更改。需要說明更多的說明/細節。
回覆:自動更正個人數據非常感謝!這正是我所需要的。