如何使用columnlist堆疊很多列<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />大家好,我想讀出列名並將它們保存為列列表....使用此列表我可以在單個命令中堆疊這些多個列,而不是像下面所示的代碼那樣手動堆疊嗎?
dt_L5 << 堆疊(
列(
:名稱( "MISC_L5_Test230_2(1)" ),
:名稱( "MISC_L5_Test230_2(2)" ),
:名稱( "MISC_L5_Test230_2(3)" ),
:名稱( "MISC_L5_Test230_2(4)" ),
:名稱( "MISC_L5_Test230_2(5)" ),
:名稱( "MISC_L5_Test230_2(6)" ),
:名稱( "MISC_L5_Test230_2(7)" ),
:名稱( "MISC_L5_Test230_2(8)" ),
。
。
。
。
:名稱(“MISC_L5_Test230_2(125)”)
),
來源標籤列(“標籤”),
堆疊資料列(“資料”),
輸出表(“L5”)
);
我想做這樣的事情:
clist=dt_L5<<取得列名稱;
ncols = N 項(clist);
dt_L5 << 堆疊(
列(
for(i=1,i<=ncols,i++,
名稱列表 = 列表;
/* 我應該如何呼叫“ :名稱(“名稱列表”) 「 這裡 ?? */
);
來源標籤列(“標籤”),
堆疊資料列(“資料”),
輸出表(“L5”)
);
回覆:如何使用columnlist堆疊很多列
你好,
你的最終腳本看起來像這樣嗎?
清除全域變數 (); /* 清除先前執行的常駐記憶體*/
/* 開啟你的檔案*/
dt=打開(
選擇文件(
"選擇 *.csv 檔案",
取得目前目錄(),
{“所有 JMP 檔案|jmp;jsl;jrn;csv;txt”,“所有檔案|*”}
)
);
等待(0);
nc_dt = N 列 (); /*取得檔案的列數*/
等待(0);
clist = dt <<取得列名; /* 取得用於堆疊的列名稱*/
ncols = N 項(clist);
等待(0);
tlist={};
for(i=2,i<=ncols,i++,
插入(tlist,clist );
);
等待(0);
dt2 << 堆疊(
列(評估(tlist)),
來源標籤列(“標籤”),
堆疊資料列(“資料”),
輸出表(“DT5”)
);
回覆:如何使用columnlist堆疊很多列偉大的! 謝謝女士... 我有 JMP8.0 也許這就是問題所在
回覆:如何使用columnlist堆疊很多列好的。 對我來說,沒有 eval() 也可以工作。 適用於 Mac 的 JMP 9.0.3。
這甚至可以工作,即在 columns() 參數內建立列表。 如果您稍後在腳本中不需要該參數,這會很方便。 然而,清楚地聲明變數可以使程式碼更易於閱讀和調試。
dt1_L0 <<堆疊(
列( dt1_L0 <<取得列名) ,
來源標籤列( “標籤” ) ,
堆疊資料列( “數據” ) ,
輸出表( “L5” )
) ;
回覆:如何使用columnlist堆疊很多列在這個論壇上的搜尋引導我找到了答案......必須使用 eval(list) 。
碰撞= dt1_L5 <<取得列名;
dt1_L0 <<堆疊(
列(評估(碰撞) ) ,
來源標籤列( “標籤” ) ,
堆疊資料列( “數據” ) ,
輸出表( “L5” )
) ;
感謝您的支持!
回覆:如何使用columnlist堆疊很多列再次感謝! … 在堆疊命令之後,我在日誌視窗中收到以下訊息
「在『錯誤論證』的存取或評估中找不到該列
空的()”
我沒有看到任何堆疊表輸出...:-s 我真的很感謝你的幫助!
如何使用columnlist堆疊很多列有條件地像這樣:
清單= {} ;
為了(我= 1 ,我<=恩科爾斯,我++,
如果(我> 3 ,
插入(清單,碰撞[我]) ;
) ;
) ;
或無條件但修改初始我:
清單= {} ;
為了(我=4 ,我<=恩科爾斯,我++,
插入(清單,碰撞[我]) ;
) ;
回覆:如何使用columnlist堆疊很多列像這樣的東西? ....
碰撞= dt1_L5 <<取得列名;
/*這裡的目的是從上一個列表中刪除前3個來保存一個新列表*/
ncols = N 個項目(collist);
for(i=1;i<=ncols;i++,
如果(我> 3,
tlist=並列;
);
);
dt1_L0 <<堆疊(
列( (清單) ) ,
來源標籤列( “標籤” ) ,
堆疊資料列( “數據” ) ,
輸出表( “L5” )
) ;
我什至不知道這裡的“if”陳述是否正確……請原諒我的無知
如何使用columnlist堆疊很多列嗨女士,
感謝您的快速回覆。 我是 JSL 的新手,所以我不知道如何跨越語言。 很高興知道堆疊接受列表作為參數。
我可以進一步擴展問題並詢問...我們如何從列表中僅選擇要堆疊的幾列? 例如,我不想堆疊前 3 列。 為此,我可以建立一個新清單來儲存所需的列名稱(從 collist 中刪除前 3 個列名稱)。
是的,我找到了之前條目的解決方案,所以我刪除了它
非常感謝!
回覆:如何使用columnlist堆疊很多列Stack 採用列表作為參數,因此可以在這裡以更簡單的方式完成。
碰撞= dt1_L5 <<取得列名;
dt1_L0 <<堆疊(
列( (碰撞) ) ,
來源標籤列( “標籤” ) ,
堆疊資料列( “數據” ) ,
輸出表( “L5” )
) ;
避免在平台指令內使用 for 迴圈。 順便說一句,我試圖提交對您之前問題的回复,但在我點擊“添加回复”之前它已被刪除。 也許您已經找到了解決方案,但這是我的看法。 同樣,平台內的 for 迴圈可能並不總是有效,因為某些命令可能不會評估參數(例如需要帶引號的字串)。
月表= { 4 , 5 , 7 , 9 , 11 , 12 } ;
風=新窗戶( “雙變量” ,
dt1_L0 <<雙變數(是( :數據) , X ( :價格) ,經過( :月) )
) ;
為了(我= 1 ,我<= N 項(月表) ,我++,
風[ 1 ,我,框架盒( 1 )] << {框架尺寸(第633章, 249 ) ,
行圖例( :樓層,
顏色主題( “JMP 預設值” ) ,
標記主題( “標準” ) ,
)}
) ;