<?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: JSL Implementation for Deleting Columns with All Missing Values by Same Category in Discussions</title>
    <link>https://community.jmp.com/t5/Discussions/JSL-Implementation-for-Deleting-Columns-with-All-Missing-Values/m-p/919083#M107837</link>
    <description>&lt;P&gt;I suggest you create a table that looks like this.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="txnelson_0-1765547956735.png" style="width: 612px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/88769i10185974B1E2CEE5/image-dimensions/612x224?v=v2" width="612" height="224" role="button" title="txnelson_0-1765547956735.png" alt="txnelson_0-1765547956735.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;You can then read through the table and build a list of the columns that meet whatever N vs. N Missing for each store you need to delete.&lt;/P&gt;
&lt;P&gt;Here is a sample script to create the table&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;names default to here(1);
dt=data table("Fruite Price");
colNames = dt &amp;lt;&amp;lt; get column names(continuous);

dtMissing = dt &amp;lt;&amp;lt; Summary( invisible,
	Group( :Store ),
	N Missing( colNames ),
	Freq( "None" ),
	Weight( "None" ),
	statistics column name format( "column" ),
	output table name( "N Missing" )
);

dtStack = dtMissing &amp;lt;&amp;lt; Stack( invisible,
	columns(
		colNames
	),
	Source Label Column( "Product" ),
	Stacked Data Column( "N Missing" ),
	Output Table( "Stack of N Missing" )
);

dtEval = dtStack &amp;lt;&amp;lt;
Split(
	Split By( :Store ),
	Split( :N Missing, :N Rows ),
	Group( :Product ),
	Output Table( "Eval Table" ),
	Sort by Column Property
);&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;You could use the Tabulate Platform to create the table, but you indicated you have thousands of columns.&amp;nbsp; I don't believe Tabulate would be the answer in that case, however the above script should handle it.&lt;/P&gt;</description>
    <pubDate>Fri, 12 Dec 2025 14:05:58 GMT</pubDate>
    <dc:creator>txnelson</dc:creator>
    <dc:date>2025-12-12T14:05:58Z</dc:date>
    <item>
      <title>JSL Implementation for Deleting Columns with All Missing Values by Same Category</title>
      <link>https://community.jmp.com/t5/Discussions/JSL-Implementation-for-Deleting-Columns-with-All-Missing-Values/m-p/919027#M107832</link>
      <description>&lt;P&gt;&lt;SPAN&gt;In the attached file, the field "Store" is divided into two stores, A and B. If all cells in the entire column corresponding to the same Store are missing values, then delete the entire column, as shown in the attached "Expected result". How can this be implemented using JSL? &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;I am able to count the missing values in each column, but I cannot find a way to verify if all the cells corresponding to the same Store are missing values. Do you have a good method? Since there are actually many columns—tens of thousands—using a time-consuming calculation method would take too long. &lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 12 Dec 2025 12:43:48 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/JSL-Implementation-for-Deleting-Columns-with-All-Missing-Values/m-p/919027#M107832</guid>
      <dc:creator>BabyDoragon</dc:creator>
      <dc:date>2025-12-12T12:43:48Z</dc:date>
    </item>
    <item>
      <title>Re: JSL Implementation for Deleting Columns with All Missing Values by Same Category</title>
      <link>https://community.jmp.com/t5/Discussions/JSL-Implementation-for-Deleting-Columns-with-All-Missing-Values/m-p/919070#M107835</link>
      <description>&lt;P&gt;Why are :Banana Price and :Durian Price kept?&amp;nbsp; All "A" :Banana Price is missing and all "B" :Durian Price is missing.&lt;/P&gt;</description>
      <pubDate>Fri, 12 Dec 2025 13:50:46 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/JSL-Implementation-for-Deleting-Columns-with-All-Missing-Values/m-p/919070#M107835</guid>
      <dc:creator>mmarchandFSLR</dc:creator>
      <dc:date>2025-12-12T13:50:46Z</dc:date>
    </item>
    <item>
      <title>Re: JSL Implementation for Deleting Columns with All Missing Values by Same Category</title>
      <link>https://community.jmp.com/t5/Discussions/JSL-Implementation-for-Deleting-Columns-with-All-Missing-Values/m-p/919078#M107836</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;Following your rule to the letter, I devised a non-scripting option. However, as&amp;nbsp;&lt;a href="https://community.jmp.com/t5/user/viewprofilepage/user-id/58003"&gt;@mmarchandFSLR&lt;/a&gt;&amp;nbsp;pointed out, the outcome would not match your "Results" because the Banana and Durian would be excluded/deleted.&lt;/P&gt;
&lt;P&gt;1) Stack all your columns (see example attached)&lt;/P&gt;
&lt;P&gt;2) Use the formula:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Col Sum( Is Missing( :Data ), :Store, :Label ) / Col Sum( 1, :Store, :Label )&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;3) Add a master check column "ROWS TO DELETE" with the formula:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Col Max( :MISSING by STORE PCT, :Label )&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;4) Delete the marked rows&lt;/P&gt;
&lt;P&gt;5) Split the resulting table by "Label."&lt;/P&gt;
&lt;P&gt;Best,&lt;/P&gt;
&lt;P&gt;TS&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 12 Dec 2025 14:02:04 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/JSL-Implementation-for-Deleting-Columns-with-All-Missing-Values/m-p/919078#M107836</guid>
      <dc:creator>Thierry_S</dc:creator>
      <dc:date>2025-12-12T14:02:04Z</dc:date>
    </item>
    <item>
      <title>Re: JSL Implementation for Deleting Columns with All Missing Values by Same Category</title>
      <link>https://community.jmp.com/t5/Discussions/JSL-Implementation-for-Deleting-Columns-with-All-Missing-Values/m-p/919083#M107837</link>
      <description>&lt;P&gt;I suggest you create a table that looks like this.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="txnelson_0-1765547956735.png" style="width: 612px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/88769i10185974B1E2CEE5/image-dimensions/612x224?v=v2" width="612" height="224" role="button" title="txnelson_0-1765547956735.png" alt="txnelson_0-1765547956735.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;You can then read through the table and build a list of the columns that meet whatever N vs. N Missing for each store you need to delete.&lt;/P&gt;
&lt;P&gt;Here is a sample script to create the table&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;names default to here(1);
dt=data table("Fruite Price");
colNames = dt &amp;lt;&amp;lt; get column names(continuous);

dtMissing = dt &amp;lt;&amp;lt; Summary( invisible,
	Group( :Store ),
	N Missing( colNames ),
	Freq( "None" ),
	Weight( "None" ),
	statistics column name format( "column" ),
	output table name( "N Missing" )
);

dtStack = dtMissing &amp;lt;&amp;lt; Stack( invisible,
	columns(
		colNames
	),
	Source Label Column( "Product" ),
	Stacked Data Column( "N Missing" ),
	Output Table( "Stack of N Missing" )
);

dtEval = dtStack &amp;lt;&amp;lt;
Split(
	Split By( :Store ),
	Split( :N Missing, :N Rows ),
	Group( :Product ),
	Output Table( "Eval Table" ),
	Sort by Column Property
);&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;You could use the Tabulate Platform to create the table, but you indicated you have thousands of columns.&amp;nbsp; I don't believe Tabulate would be the answer in that case, however the above script should handle it.&lt;/P&gt;</description>
      <pubDate>Fri, 12 Dec 2025 14:05:58 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/JSL-Implementation-for-Deleting-Columns-with-All-Missing-Values/m-p/919083#M107837</guid>
      <dc:creator>txnelson</dc:creator>
      <dc:date>2025-12-12T14:05:58Z</dc:date>
    </item>
  </channel>
</rss>

