<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Selecting multiple columns and do histogram in a script in Discussions</title>
    <link>https://community.jmp.com/t5/Discussions/Selecting-multiple-columns-and-do-histogram-in-a-script/m-p/108656#M39512</link>
    <description>&lt;P&gt;Thanks so much for providing the solution. I tried it and it works.&lt;/P&gt;</description>
    <pubDate>Fri, 01 Feb 2019 17:48:30 GMT</pubDate>
    <dc:creator>AT</dc:creator>
    <dc:date>2019-02-01T17:48:30Z</dc:date>
    <item>
      <title>Selecting multiple columns and do histogram in a script</title>
      <link>https://community.jmp.com/t5/Discussions/Selecting-multiple-columns-and-do-histogram-in-a-script/m-p/108512#M39475</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I have written a script to select two columns from a table and do histogram. I like to be able to select an arbitary number of columns and do histogram for selected one. Can one help me achieve that? I have liste my script below. Thanks&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;dt = &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;Open&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;( &lt;/SPAN&gt;"A.csv"&lt;SPAN class="s1"&gt; );&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;xvar = &lt;SPAN class="s3"&gt;.&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p2"&gt;yvar = &lt;SPAN class="s3"&gt;.&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;win = &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;New Window&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;( &lt;/SPAN&gt;"Choose Two Variables"&lt;SPAN class="s1"&gt;,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s1"&gt;&amp;lt;&amp;lt;&lt;/SPAN&gt;Modal&lt;SPAN class="s1"&gt;,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p3"&gt;&lt;SPAN class="s1"&gt;&amp;lt;&amp;lt;&lt;/SPAN&gt;On Validate&lt;SPAN class="s1"&gt;(&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;// require the user to select two variables before clicking OK&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s2"&gt;Show&lt;/SPAN&gt;( xvar, yvar );&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s2"&gt;If&lt;/SPAN&gt;( &lt;SPAN class="s2"&gt;Is Missing&lt;/SPAN&gt;( xvar ) | &lt;SPAN class="s2"&gt;Is Missing&lt;/SPAN&gt;( yvar ),&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s3"&gt;0&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;, &lt;/SPAN&gt;// if xvar or yvar are missing, do nothing when OK is clicked&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s3"&gt;1&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;);&lt;/P&gt;&lt;P class="p2"&gt;),&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;Text Box&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;( &lt;/SPAN&gt;" Select two numeric columns. "&lt;SPAN class="s1"&gt; ),&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;H List Box&lt;SPAN class="s1"&gt;(&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;Text Box&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;( &lt;/SPAN&gt;" Choose First "&lt;SPAN class="s1"&gt; ),&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&lt;SPAN class="s1"&gt;x = &lt;/SPAN&gt;Col List Box&lt;SPAN class="s1"&gt;(&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s1"&gt;dt, &lt;/SPAN&gt;// data table reference&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s1"&gt;all, &lt;/SPAN&gt;// display all columns from the data table&lt;/P&gt;&lt;P class="p2"&gt;xvar = (x &amp;lt;&amp;lt; &lt;SPAN class="s4"&gt;Get Selected&lt;/SPAN&gt;)[&lt;SPAN class="s3"&gt;1&lt;/SPAN&gt;];&lt;/P&gt;&lt;P class="p4"&gt;// get the name of the selected column before the window closes&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s2"&gt;Show&lt;/SPAN&gt;( xvar );&lt;/P&gt;&lt;P class="p2"&gt;),&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;Text Box&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;( &lt;/SPAN&gt;"Choose Second"&lt;SPAN class="s1"&gt; ),&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&lt;SPAN class="s1"&gt;y = &lt;/SPAN&gt;Col List Box&lt;SPAN class="s1"&gt;(&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;dt,&lt;/P&gt;&lt;P class="p2"&gt;all,&lt;/P&gt;&lt;P class="p2"&gt;yvar = (y &amp;lt;&amp;lt; &lt;SPAN class="s4"&gt;Get Selected&lt;/SPAN&gt;)[&lt;SPAN class="s3"&gt;1&lt;/SPAN&gt;];&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s2"&gt;Show&lt;/SPAN&gt;( yvar );&lt;/P&gt;&lt;P class="p2"&gt;)&lt;/P&gt;&lt;P class="p2"&gt;)&lt;/P&gt;&lt;P class="p2"&gt;);&lt;/P&gt;&lt;P class="p6"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p2"&gt;xcol = &lt;SPAN class="s2"&gt;Column&lt;/SPAN&gt;( dt, xvar ); &lt;SPAN class="s5"&gt;// get the columns&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;ycol = &lt;SPAN class="s2"&gt;Column&lt;/SPAN&gt;( dt, yvar );&lt;/P&gt;&lt;P class="p6"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p2"&gt;name1 = &lt;SPAN class="s6"&gt;":"&lt;/SPAN&gt; || xvar;&lt;/P&gt;&lt;P class="p2"&gt;name2 = &lt;SPAN class="s6"&gt;":"&lt;/SPAN&gt; || yvar;&lt;/P&gt;&lt;P class="p2"&gt;name = name1 || &lt;SPAN class="s6"&gt;","&lt;/SPAN&gt; || name2;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s2"&gt;Show&lt;/SPAN&gt;( name );&lt;/P&gt;&lt;P class="p6"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p6"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p5"&gt;Eval&lt;SPAN class="s1"&gt;(&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;Parse&lt;SPAN class="s1"&gt;(&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;"obj1 = Distribution(&lt;/P&gt;&lt;P class="p1"&gt;Stack(1),&lt;/P&gt;&lt;P class="p1"&gt;Continuous Distribution( Column("&lt;SPAN class="s1"&gt; || name1 || &lt;/SPAN&gt;") ,&lt;/P&gt;&lt;P class="p6"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p1"&gt;),&lt;/P&gt;&lt;P class="p6"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p1"&gt;Continuous Distribution( Column("&lt;SPAN class="s1"&gt; || name2 ||&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;"),&lt;/P&gt;&lt;P class="p6"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p1"&gt;)&lt;/P&gt;&lt;P class="p6"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p1"&gt;);"&lt;/P&gt;&lt;P class="p2"&gt;)&lt;/P&gt;&lt;P class="p2"&gt;);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 31 Jan 2019 22:33:40 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Selecting-multiple-columns-and-do-histogram-in-a-script/m-p/108512#M39475</guid>
      <dc:creator>AT</dc:creator>
      <dc:date>2019-01-31T22:33:40Z</dc:date>
    </item>
    <item>
      <title>Re: Selecting multiple columns and do histogram in a script</title>
      <link>https://community.jmp.com/t5/Discussions/Selecting-multiple-columns-and-do-histogram-in-a-script/m-p/108523#M39484</link>
      <description>&lt;P&gt;Here's a method using colListBoxes:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );

win = New Window("Data Select",
	H List Box(
		Panel Box("Available Columns",
			dtCols = Col List Box(dt, all, width(80)),
		),
		Panel Box("Selected Columns",
			H List Box(
				V list Box(
					addButton = Button Box("Add", colList &amp;lt;&amp;lt; Append(dtCols &amp;lt;&amp;lt; Get Selected) ),
					removeButton = Button Box("Remove", colList &amp;lt;&amp;lt; Remove Selected() )
				),
				colList = Col List Box(numeric, width(80), MinItems(1), N Lines(4))
			)
		),
		okButton = Button Box("OK",
			PlotCols = colList &amp;lt;&amp;lt; Get Items;
			str = "";
			for(i=1,i&amp;lt;=N Items(PlotCols),i++,
				str = str||"Continuous Distribution(Column(:Name(\!""||plotcols[i]||"\!"))),
			"
			);
			eval(parse("dt &amp;lt;&amp;lt; Distribution(stack(1),"||str||");"));
			win &amp;lt;&amp;lt; Close Window;
		)
	)
);&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 01 Feb 2019 00:41:36 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Selecting-multiple-columns-and-do-histogram-in-a-script/m-p/108523#M39484</guid>
      <dc:creator>cwillden</dc:creator>
      <dc:date>2019-02-01T00:41:36Z</dc:date>
    </item>
    <item>
      <title>Re: Selecting multiple columns and do histogram in a script</title>
      <link>https://community.jmp.com/t5/Discussions/Selecting-multiple-columns-and-do-histogram-in-a-script/m-p/108656#M39512</link>
      <description>&lt;P&gt;Thanks so much for providing the solution. I tried it and it works.&lt;/P&gt;</description>
      <pubDate>Fri, 01 Feb 2019 17:48:30 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Selecting-multiple-columns-and-do-histogram-in-a-script/m-p/108656#M39512</guid>
      <dc:creator>AT</dc:creator>
      <dc:date>2019-02-01T17:48:30Z</dc:date>
    </item>
    <item>
      <title>Re: Selecting multiple columns and do histogram in a script</title>
      <link>https://community.jmp.com/t5/Discussions/Selecting-multiple-columns-and-do-histogram-in-a-script/m-p/108659#M39515</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Thanks again. I wanted to save the result of histogram into HTML and have done it in the past. Here is the script with some modification. I do get an error&lt;/P&gt;&lt;P class="p1"&gt;Name Unresolved: obj in access or evaluation of 'obj'). I appreciate your help.&lt;/P&gt;&lt;P class="p1"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;dt = &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;Open&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;( &lt;/SPAN&gt;"A.csv"&lt;SPAN class="s1"&gt; );&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;win = &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;New Window&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;( &lt;/SPAN&gt;"Data Select"&lt;SPAN class="s1"&gt;,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p3"&gt;H List Box&lt;SPAN class="s1"&gt;(&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s2"&gt;Panel Box&lt;/SPAN&gt;( &lt;SPAN class="s3"&gt;"Available Columns"&lt;/SPAN&gt;, dtCols = &lt;SPAN class="s2"&gt;Col List Box&lt;/SPAN&gt;( dt, all, width( &lt;SPAN class="s4"&gt;80&lt;/SPAN&gt; ) ), ),&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;Panel Box&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;( &lt;/SPAN&gt;"Selected Columns"&lt;SPAN class="s1"&gt;,&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p3"&gt;H List Box&lt;SPAN class="s1"&gt;(&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p3"&gt;V List Box&lt;SPAN class="s1"&gt;(&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;addButton = &lt;SPAN class="s2"&gt;Button Box&lt;/SPAN&gt;( &lt;SPAN class="s3"&gt;"Add"&lt;/SPAN&gt;, colList &amp;lt;&amp;lt; &lt;SPAN class="s5"&gt;Append&lt;/SPAN&gt;( dtCols &amp;lt;&amp;lt; &lt;SPAN class="s5"&gt;Get Selected&lt;/SPAN&gt; ) ),&lt;/P&gt;&lt;P class="p4"&gt;removeButton = &lt;SPAN class="s2"&gt;Button Box&lt;/SPAN&gt;( &lt;SPAN class="s3"&gt;"Remove"&lt;/SPAN&gt;, colList &amp;lt;&amp;lt; &lt;SPAN class="s5"&gt;Remove Selected&lt;/SPAN&gt;() )&lt;/P&gt;&lt;P class="p4"&gt;),&lt;/P&gt;&lt;P class="p4"&gt;colList = &lt;SPAN class="s2"&gt;Col List Box&lt;/SPAN&gt;( numeric, width( &lt;SPAN class="s4"&gt;80&lt;/SPAN&gt; ), MinItems( &lt;SPAN class="s4"&gt;1&lt;/SPAN&gt; ), N Lines( &lt;SPAN class="s4"&gt;4&lt;/SPAN&gt; ) )&lt;/P&gt;&lt;P class="p4"&gt;)&lt;/P&gt;&lt;P class="p4"&gt;),&lt;/P&gt;&lt;P class="p4"&gt;okButton = &lt;SPAN class="s2"&gt;Button Box&lt;/SPAN&gt;( &lt;SPAN class="s3"&gt;"OK"&lt;/SPAN&gt;,&lt;/P&gt;&lt;P class="p4"&gt;PlotCols = colList &amp;lt;&amp;lt; &lt;SPAN class="s5"&gt;Get Items&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p4"&gt;str = &lt;SPAN class="s3"&gt;""&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN class="s2"&gt;For&lt;/SPAN&gt;( i = &lt;SPAN class="s4"&gt;1&lt;/SPAN&gt;, i &amp;lt;= &lt;SPAN class="s2"&gt;N Items&lt;/SPAN&gt;( PlotCols ), i++,&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s1"&gt;str = str || &lt;/SPAN&gt;"Continuous Distribution(Column(:Name(\!""&lt;SPAN class="s1"&gt; || plotcols[i] || &lt;/SPAN&gt;"\!"))),&lt;/P&gt;&lt;P class="p1"&gt;"&lt;/P&gt;&lt;P class="p4"&gt;);&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN class="s2"&gt;Eval&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;( &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;Parse&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;( &lt;/SPAN&gt;"obj = dt &amp;lt;&amp;lt; Distribution(stack(1),"&lt;SPAN class="s1"&gt; || str || &lt;/SPAN&gt;");"&lt;SPAN class="s1"&gt; ) );&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&lt;SPAN class="s1"&gt;win &amp;lt;&amp;lt; &lt;/SPAN&gt;Close Window&lt;SPAN class="s1"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;)&lt;/P&gt;&lt;P class="p4"&gt;)&lt;/P&gt;&lt;P class="p4"&gt;);&lt;/P&gt;&lt;P class="p2"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p4"&gt;obj &amp;lt;&amp;lt; &lt;SPAN class="s5"&gt;report&lt;/SPAN&gt;;&lt;/P&gt;&lt;P class="p5"&gt;&lt;SPAN class="s1"&gt;obj &amp;lt;&amp;lt; &lt;/SPAN&gt;Save Interactive HTML&lt;SPAN class="s1"&gt;( &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;"A"&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; );&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 01 Feb 2019 18:37:48 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Selecting-multiple-columns-and-do-histogram-in-a-script/m-p/108659#M39515</guid>
      <dc:creator>AT</dc:creator>
      <dc:date>2019-02-01T18:37:48Z</dc:date>
    </item>
    <item>
      <title>Re: Selecting multiple columns and do histogram in a script</title>
      <link>https://community.jmp.com/t5/Discussions/Selecting-multiple-columns-and-do-histogram-in-a-script/m-p/246661#M48427</link>
      <description>Thanks. That is very helpful script.</description>
      <pubDate>Mon, 10 Feb 2020 07:25:29 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/Selecting-multiple-columns-and-do-histogram-in-a-script/m-p/246661#M48427</guid>
      <dc:creator>Thomas1</dc:creator>
      <dc:date>2020-02-10T07:25:29Z</dc:date>
    </item>
  </channel>
</rss>

