如何從按組物件檢索群組名稱?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />各位,
我只是嘗試了解按組對象列表的訪問以及如何訪問它們。 我寫了一個不錯的小程序,可以按國家/地區運行氣泡圖,因為它是一個移動的程序,所以我想將其保存為 SWF。 所有這些都將成為定期報告,因此我想自動分配文件名。 作為檔名,我想要 Country_date_otherparameterfromprogram.swf。 日期和其他參數很簡單,問題是要知道 JMP 建立的清單中氣泡圖的順序。 作為 R 用戶,我首先尋找像 str() 這樣的函數,它在 R 中返回物件的概述,告訴您列表中每個子物件的名稱以及子物件的前幾個值。 由於找不到這樣的函數,我嘗試使用“顯示樹結構”,但查看它的輸出,我可以看到我正在尋找的國家/地區名稱,但我仍然無法訪問它。
我試過:
bubble=dt<<氣泡圖(..., by(:Country));
氣泡[1][輪廓框(1)];
以及其他一些事情,例如向物件發送“獲取名稱”。
乾杯,
溫弗里德
回覆:如何從按群組物件檢索群組名稱?
嗨傑夫,
謝謝,這正是我一直在尋找的! 仍然需要一點時間來適應 JMP 中的結構,但我想我已經到了那裡...
乾杯,
溫弗里德
回覆:如何從按群組物件檢索群組名稱?嗨溫弗里德,
您可以取得報告中大綱節點的標題並解析它們以從中取得按組值。 這獲取頭銜訊息可能就是您正在尋找的內容。
這是一個例子。
Open( "$SAMPLE_DATA/SATByYear.jmp" );
bubbles = Bubble Plot(
X( :SAT Math ),
Y( :SAT Verbal ),
Sizes( :Name( "% Taking (2004)" ) ),
ID( :State ),
All Labels( 1 ),
by( :Region, year )
);
bygroups = {};
For( i = 1, i <= N Items( bubbles ), i++,
title = (Report( bubbles[i] )[Outline Box( 1 )]) << get title;
bygroup = Word( -1, Word( 1, title, "," ) ) || "," ||
Word( 2, title, "," );
Insert Into( bygroups, bygroup );
);
Show( bygroups );
-傑夫
回覆:如何從按群組物件檢索群組名稱?
嗨戴夫,
感謝您的回答!
在我無法弄清楚如何從物件中檢索某些內容後,我按照您描述的方式進行了操作。 我只是希望人們能夠以某種方式存取 byGroup 清單元素的標題(或其他元素),例如在我的範例中,bp[1] 的標題當然包含 byLevel[1] 作為標題。 詢問的原因是,如果您獲得多個 BY 變量,那麼在確定哪個元素是哪個元素時可能很快就會變得棘手。 IE。實際上,哪個變數在前,哪個在第二,順序是什麼。
乾杯,
溫弗里德
回覆:如何從按群組物件檢索群組名稱?By Group 限定符會導致建立多個對象,例如:
開啟(“$SAMPLE_DATA/Big Class.jmp”)
bp = BubblePlot( X( : 身高 ),Y( : 體重 ),By(: 性別));
顯示(bp);
bp = {氣泡圖[], 氣泡圖[]};
所以 bp 是一個物件列表,其中每個對象僅接收分組變數一級的資料。 就氣泡圖而言,它獲取數據並繪製它 - 它不知道分組,即我們無法向它發送訊息<<獲取群組名稱。
因此,要取得群組名稱,我們需要取得 JMP 用於產生每個圖的層級。您可以使用匯總命令來執行此操作。對於上面的例子:
總結(byValues=by(:性別));
顯示(按值);
因此,對於此範例,我們有 2 個氣泡圖 bp[1] 和 bp[2]。
第一個圖的分組變數是 byValues[1],第二個圖的分組變數是 byValues[2]。
戴夫