使用 JSL 連接表<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />我是使用 JSL 的初學者,並嘗試使用 JSL 連接兩個數據表。 但是,代碼不起作用:它返回一個包含空列的表
誰能幫我?
回复:使用 JSL 連接表耶,謝謝!
回复:使用 JSL 連接表dt3 << set name("新名稱");
回复:使用 JSL 連接表有效! 謝啦!
如何重命名 dt3?
回复:使用 JSL 連接表我的建議是,您將腳本運行到要進行連接的位置。但不要運行連接。然後進入交互式 JMP、Tables==>Join 並按照您希望的方式手動執行連接。完成後,轉到新加入的數據表,然後轉到表面板並單擊“源”紅色小三角,然後編輯代碼。在那裡您將找到按照您想要的方式連接數據所需的代碼。
此外,我對您的腳本做了一些細微的更改,這不會更改代碼的功能,但使代碼更加精確:
// open and retain a reference
dt = Open("P:\CompComercialDPK\Inteligencia de Mercado DPK\Theodora\Projetos\Áreas de Influência\Estudos Preliminares\Raio 50 KM - DF.xlsx");
// criando a coluna de cidades, oncatenando cidade e estado
dt<< New Column( "Cidades",
Character,
Nominal,
Formula(:Nome || ", " || :Estado ),
Set Selected
);
// Abre a base de dados de vendas de 2015
dt2 = Open("P:\CompComercialDPK\Inteligencia de Mercado DPK\Theodora\Projetos\Áreas de Influência\Vendas 2015.xlsx");
// criando a coluna de cidades, concatenando cidade e estado
dt2<< New Column( "Cidades",
Character,
Nominal,
Formula(:Desc. Município Cadastro || ", " || :Cód. U.F. Cadastro ),
Set Selected
);
//TA DANDO ERRO AQUI MINA
// Join para obter vendas e clientes das cidades
dtjoined= dt << Join(
With( dt2 ),
By Matching Columns( :Cidades = :Cidades ),
Drop multiples( 0, 0 ),
Name( "Include non-matches" )(1, 0),
Preserve main table order( 1 )
)
);
dtjoined<< New Column( "MKT Share",
Numeric, Continuous, Formula(:Name("Sum(Vlr. Venda Comercial)") /
(:Name("Mean(Pot. Consumo Estimado por Categoria (2015) - Manutenção e acessórios/)") * 0.127)),
Set Selected
);
回复:使用 JSL 連接表很難說為什麼如果沒有一些數據來測試它就不起作用,但我對您的代碼做了一些更正/添加。
1. 您對兩個表使用了相同的表變量 (dt)。將其更改為 dt1 和 dt2。
2.添加了用於創建新公式列的表變量
3. 在 join 命令中使用表變量 dt1 和 dt2。
3.在join命令中添加“輸出表”,然後將dt3指向連接後的輸出。
4. 使用 dt3 表變量添加新列。
// open and retain a reference
dt1 = Open("P:\CompComercialDPK\Inteligencia de Mercado DPK\Theodora\Projetos\Áreas de Influência\Estudos Preliminares\Raio 50 KM - DF.xlsx");
// criando a coluna de cidades, concatenando cidade e estado
dt1 << New Column( "Cidades", Character, Nominal, Formula( :Nome || ", " || :Estado ), Set Selected );
// Abre a base de dados de vendas de 2015
dt2 = Open("P:\CompComercialDPK\Inteligencia de Mercado DPK\Theodora\Projetos\Áreas de Influência\Vendas 2015.xlsx");
// criando a coluna de cidades, concatenando cidade e estado
dt2 << New Column( "Cidades", Character, Nominal, Formula( :Desc. Município Cadastro || ", " || :Cód. U.F. Cadastro ),
Set Selected );
//TA DANDO ERRO AQUI MINA
// Join para obter vendas e clientes das cidades
(dt1 << Join(
With( dt2 ),
By Matching Columns( :Cidades = :Cidades ),
Drop multiples( 0, 0 ),
Name( "Include non-matches" )(1, 0),
Preserve main table order( 1 ),
output table("Joined Table")
)
);
dt3 = data table("Joined Table");
dt3 << New Column( "MKT Share", Numeric, Continuous,
Formula(:Name("Sum(Vlr. Venda Comercial)") / (:Name("Mean(Pot. Consumo Estimado por Categoria (2015) - Manutenção e acessórios/)") * 0.127)),
Set Selected
);