cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Discussions

Solve problems, and share tips and tricks with other JMP users.
%3CLINGO-SUB%20id%3D%22lingo-sub-737934%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EFusionar%20datos%20de%20dos%20celdas%20en%20una%20por%20n%C3%BAmero%20de%20serie%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-737934%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3ETengo%20datos%20de%20fabricaci%C3%B3n%20de%20un%20producto.%20Algunos%20productos%20est%C3%A1n%20fabricados%20con%20material%20de%20dos%20lotes%20diferentes.%20Necesito%20fusionar%20toda%20la%20informaci%C3%B3n%20del%20lote%20en%20una%20celda%20por%20SN.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-737934%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3EAn%C3%A1lisis%20y%20modelado%20de%20datos%20b%C3%A1sicos%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-737958%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3A%20Fusionar%20datos%20de%20dos%20celdas%20en%20una%20por%20n%C3%BAmero%20de%20serie%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-737958%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3ECreo%20que%20hay%20algunos%20elementos%20de%20la%20lista%20de%20deseos%20con%20respecto%20a%20esto%20(algunos%20podr%C3%ADan%20ser%20incluso%20m%C3%ADos%2C%20pero%20no%20puedo%20encontrarlos%20ahora)...%20pero%20actualmente%20usar%C3%ADa%20la%20consulta%20SQL%20usando%20GROUP_CONCAT%20(no%20es%20la%20%C3%BAnica%20opci%C3%B3n)%3C%2FP%3E%0A%3CPRE%3E%3CCODE%20class%3D%22%20language-jsl%22%3ENames%20Default%20To%20Here(1)%3B%0A%0Adt%20%3D%20New%20Table(%22Untitled%22%2C%0A%09Add%20Rows(7)%2C%0A%09Compress%20File%20When%20Saved(1)%2C%0A%09New%20Column(%22S%22%2C%20Character%2C%20%22Nominal%22%2C%20Set%20Values(%7B%221%22%2C%20%222%22%2C%20%223%22%2C%20%223%22%2C%20%225%22%2C%20%226%22%2C%20%226%22%7D))%2C%0A%09New%20Column(%22M%22%2C%20Character%2C%20%22Nominal%22%2C%20Set%20Values(%7B%22A1%22%2C%20%22A2%22%2C%20%22A3%22%2C%20%22A4%22%2C%20%22A5%22%2C%20%22A6%22%2C%20%22A7%22%7D))%0A)%3B%0A%0Adt2%20%3D%20Query(%0A%09Table(dt%2C%20%22t%22)%2C%3CBR%20%2F%3E%22select%20S%2C%20GROUP_CONCAT(M%2C%20'%2C%20')%20M%0Afrom%20t%0Agroup%20by%20S%22%0A)%3B%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22jthi_0-1711126868942.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22jthi_0-1711126868942.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22jthi_0-1711126868942.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22jthi_0-1711126868942.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22jthi_0-1711126868942.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.jmp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F62538i935131CFC8DD1229%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22jthi_0-1711126868942.png%22%20alt%3D%22jthi_0-1711126868942.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%20%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-737966%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3A%20Fusionar%20datos%20de%20dos%20celdas%20en%20una%20por%20n%C3%BAmero%20de%20serie%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-737966%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3ENo%20es%20tan%20elocuente%20como%20el%20de%20Jarmo%2C%20pero%20muestra%20un%20enfoque%20diferente.%3C%2FP%3E%0A%3CPRE%3E%3CCODE%20class%3D%22%20language-jsl%22%3ENames%20Default%20To%20Here(%201%20)%3B%0A%0Adt%20%3D%20New%20Table(%20%22Example%22%2C%0A%09Add%20Rows(%207%20)%2C%0A%09Compress%20File%20When%20Saved(%201%20)%2C%0A%09New%20Column(%20%22SN%22%2C%0A%09%09Character%2C%0A%09%09%22Nominal%22%2C%0A%09%09Set%20Values(%20%7B%221%22%2C%20%222%22%2C%20%223%22%2C%20%223%22%2C%20%225%22%2C%20%226%22%2C%20%226%22%7D%20)%0A%09)%2C%0A%09New%20Column(%20%22Material%20Lot%22%2C%0A%09%09Character%2C%0A%09%09%22Nominal%22%2C%0A%09%09Set%20Values(%20%7B%22A1%22%2C%20%22A2%22%2C%20%22A3%22%2C%20%22A4%22%2C%20%22A5%22%2C%20%22A6%22%2C%20%22A7%22%7D%20)%0A%09)%0A)%3B%0A%0AdtCombine%20%3D%20dt%20%26lt%3B%26lt%3B%20Summary(%0A%09Group(%20%3ASN%20)%2C%0A%09Freq(%20%22None%22%20)%2C%0A%09Weight(%20%22None%22%20)%2C%0A%09Link%20to%20original%20data%20table(%200%20)%0A)%3B%0A%0AdtCombine%20%26lt%3B%26lt%3B%20New%20Column(%20%22Material%20Lot%22%2C%0A%09Character%2C%0A%09set%20each%20value(%0A%09%09Eval(%0A%09%09%09Eval%20Expr(%0A%09%09%09%09Concat%20Items(%0A%09%09%09%09%09dt%3AMaterial%20Lot%5Bdt%20%26lt%3B%26lt%3B%0A%09%09%09%09%09get%20rows%20where(%20dt%3ASN%20%3D%3D%20Expr(%20dtCombine%3ASN%5BRow()%5D%20)%20)%5D%2C%0A%09%09%09%09%09%22%2C%20%22%0A%09%09%09%09)%0A%09%09%09)%0A%09%09)%3B%0A%09)%0A)%3B%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22txnelson_0-1711129029700.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22txnelson_0-1711129029700.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22txnelson_0-1711129029700.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22txnelson_0-1711129029700.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.jmp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F62539iCC021614472F6746%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22txnelson_0-1711129029700.png%22%20alt%3D%22txnelson_0-1711129029700.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%20%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-739138%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3A%20Fusionar%20datos%20de%20dos%20celdas%20en%20una%20por%20N%C3%BAmero%20de%20Serie%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-739138%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3ETengo%20una%20tabla%20con%20dos%20columnas%20de%20material.%20Ver%20ejemplo%20adjunto.%3C%2FP%3E%3CP%3E%20%3C%2FP%3E%3CP%3EMi%20l%C3%B3gica%20actual%20es%20dividir%20esta%20tabla%20en%20dos.%3C%2FP%3E%3CP%3E1.SN%2C%20M1%3C%2FP%3E%3CP%3E2.SN%2C%20M2%3C%2FP%3E%3CP%3E%20%3C%2FP%3E%3CP%3EY%20luego%20use%20la%20funci%C3%B3n%20Group_Contcat%20y%20luego%20use%20la%20funci%C3%B3n%20de%20actualizaci%C3%B3n%20para%20fusionar%20ambas%20tablas.%20Funciona%20bien.%20Pero%20me%20preguntaba%20si%20hay%20alguna%20forma%20m%C3%A1s%20r%C3%A1pida%20de%20hacerlo.%3C%2FP%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22JMP%203.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22JMP%203.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22JMP%203.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.jmp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F62684i4EA1096CFEF5399B%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22JMP%203.png%22%20alt%3D%22JMP%203.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%E2%80%83%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-737970%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3A%20Fusionar%20datos%20de%20dos%20celdas%20en%20una%20por%20N%C3%BAmero%20de%20Serie%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-737970%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EGracias%2C%20esto%20es%20exactamente%20lo%20que%20estaba%20buscando.%3C%2FP%3E%3C%2FLINGO-BODY%3E
Choose Language Hide Translation Bar

Merge data of two cells in one by Serial Number

I have a product manufacturing data. Some products are made using the material using two different lot. I need to merge all the lot information in one cell by SN. 

2 ACCEPTED SOLUTIONS

Accepted Solutions
jthi
Super User

Re: Merge data of two cells in one by Serial Number

I think there are some wish list items regarding this (some might be even mine but I cannot find them now)... but currently I would go with SQL query using GROUP_CONCAT (it is not the only option)

Names Default To Here(1);

dt = New Table("Untitled",
	Add Rows(7),
	Compress File When Saved(1),
	New Column("S", Character, "Nominal", Set Values({"1", "2", "3", "3", "5", "6", "6"})),
	New Column("M", Character, "Nominal", Set Values({"A1", "A2", "A3", "A4", "A5", "A6", "A7"}))
);

dt2 = Query(
	Table(dt, "t"),
"select S, GROUP_CONCAT(M, ', ') M from t group by S" );

jthi_0-1711126868942.png

 

Edit:

Found the wish list item Add Listagg/Concatenate/GROUP_CONCAT to Summary platform and I have also created add-in for this Group Listagg Columns which does use Query() to build the table

-Jarmo

View solution in original post

txnelson
Super User

Re: Merge data of two cells in one by Serial Number

Not as eloquent as Jarmo's, but it shows a different approach

Names Default To Here( 1 );

dt = New Table( "Example",
	Add Rows( 7 ),
	Compress File When Saved( 1 ),
	New Column( "SN",
		Character,
		"Nominal",
		Set Values( {"1", "2", "3", "3", "5", "6", "6"} )
	),
	New Column( "Material Lot",
		Character,
		"Nominal",
		Set Values( {"A1", "A2", "A3", "A4", "A5", "A6", "A7"} )
	)
);

dtCombine = dt << Summary(
	Group( :SN ),
	Freq( "None" ),
	Weight( "None" ),
	Link to original data table( 0 )
);

dtCombine << New Column( "Material Lot",
	Character,
	set each value(
		Eval(
			Eval Expr(
				Concat Items(
					dt:Material Lot[dt <<
					get rows where( dt:SN == Expr( dtCombine:SN[Row()] ) )],
					", "
				)
			)
		);
	)
);

txnelson_0-1711129029700.png

 

Jim

View solution in original post

4 REPLIES 4
jthi
Super User

Re: Merge data of two cells in one by Serial Number

I think there are some wish list items regarding this (some might be even mine but I cannot find them now)... but currently I would go with SQL query using GROUP_CONCAT (it is not the only option)

Names Default To Here(1);

dt = New Table("Untitled",
	Add Rows(7),
	Compress File When Saved(1),
	New Column("S", Character, "Nominal", Set Values({"1", "2", "3", "3", "5", "6", "6"})),
	New Column("M", Character, "Nominal", Set Values({"A1", "A2", "A3", "A4", "A5", "A6", "A7"}))
);

dt2 = Query(
	Table(dt, "t"),
"select S, GROUP_CONCAT(M, ', ') M from t group by S" );

jthi_0-1711126868942.png

 

Edit:

Found the wish list item Add Listagg/Concatenate/GROUP_CONCAT to Summary platform and I have also created add-in for this Group Listagg Columns which does use Query() to build the table

-Jarmo
txnelson
Super User

Re: Merge data of two cells in one by Serial Number

Not as eloquent as Jarmo's, but it shows a different approach

Names Default To Here( 1 );

dt = New Table( "Example",
	Add Rows( 7 ),
	Compress File When Saved( 1 ),
	New Column( "SN",
		Character,
		"Nominal",
		Set Values( {"1", "2", "3", "3", "5", "6", "6"} )
	),
	New Column( "Material Lot",
		Character,
		"Nominal",
		Set Values( {"A1", "A2", "A3", "A4", "A5", "A6", "A7"} )
	)
);

dtCombine = dt << Summary(
	Group( :SN ),
	Freq( "None" ),
	Weight( "None" ),
	Link to original data table( 0 )
);

dtCombine << New Column( "Material Lot",
	Character,
	set each value(
		Eval(
			Eval Expr(
				Concat Items(
					dt:Material Lot[dt <<
					get rows where( dt:SN == Expr( dtCombine:SN[Row()] ) )],
					", "
				)
			)
		);
	)
);

txnelson_0-1711129029700.png

 

Jim

Re: Merge data of two cells in one by Serial Number

I have some table with two material column. See atteched example. 

 

My current logic is splitting this table in to two. 

1. SN, M1

2. SN, M2

 

And than use Group_Contcat function, and than use update function to merge both table. It is working fine. But I was wondering if there is any batter (Short) way to do it.

JMP 3.png

Re: Merge data of two cells in one by Serial Number

Thanks you, This exactly what I was look for

Recommended Articles