<?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 No Module named 'pandas' in Discussions</title>
    <link>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914391#M107436</link>
    <description>&lt;P&gt;I’m running a JSL script in &lt;STRONG data-start="279" data-end="289"&gt;JMP 18&lt;/STRONG&gt; that uses Python. On macOS everything works fine, but on Windows I get this error:&lt;/P&gt;
&lt;PRE&gt;Traceback (most recent call last):
  File "&amp;lt;string&amp;gt;", line 7, in &amp;lt;module&amp;gt;
ModuleNotFoundError: No module named 'pandas'&lt;BR /&gt;&lt;BR /&gt;In the embedded log is see following: &lt;/PRE&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Creating: C:\\Users\\Admin\\AppData\\Roaming\\JMP\\JMP\\Python\\Python311\\site-packages
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE&gt;This tells me that JMP 18 doesn't install python automatically. Is there a pre-requisite for python be installed?&lt;BR /&gt;&lt;BR /&gt;I am also trying to install this way to ensure the script doesn't fail irrespective of the system:&lt;/PRE&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Python Submit("
import jmputils
required_packages = ['pandas', 'numpy']

# get list of installed python packages
installed = jmputils.jpip('list')

# check &amp;amp; install missing packages
for pkg in required_packages:
    if pkg.lower() not in [p.lower() for p in installed]:
        print(f'{pkg} not installed — installing...')
        jmputils.jpip('install', pkg)
    else:
        print(f'{pkg} is already installed.')

jmputils.jpip('list')

");&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Thu, 20 Nov 2025 04:40:34 GMT</pubDate>
    <dc:creator>zetaVagabond1</dc:creator>
    <dc:date>2025-11-20T04:40:34Z</dc:date>
    <item>
      <title>No Module named 'pandas'</title>
      <link>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914391#M107436</link>
      <description>&lt;P&gt;I’m running a JSL script in &lt;STRONG data-start="279" data-end="289"&gt;JMP 18&lt;/STRONG&gt; that uses Python. On macOS everything works fine, but on Windows I get this error:&lt;/P&gt;
&lt;PRE&gt;Traceback (most recent call last):
  File "&amp;lt;string&amp;gt;", line 7, in &amp;lt;module&amp;gt;
ModuleNotFoundError: No module named 'pandas'&lt;BR /&gt;&lt;BR /&gt;In the embedded log is see following: &lt;/PRE&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Creating: C:\\Users\\Admin\\AppData\\Roaming\\JMP\\JMP\\Python\\Python311\\site-packages
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE&gt;This tells me that JMP 18 doesn't install python automatically. Is there a pre-requisite for python be installed?&lt;BR /&gt;&lt;BR /&gt;I am also trying to install this way to ensure the script doesn't fail irrespective of the system:&lt;/PRE&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Python Submit("
import jmputils
required_packages = ['pandas', 'numpy']

# get list of installed python packages
installed = jmputils.jpip('list')

# check &amp;amp; install missing packages
for pkg in required_packages:
    if pkg.lower() not in [p.lower() for p in installed]:
        print(f'{pkg} not installed — installing...')
        jmputils.jpip('install', pkg)
    else:
        print(f'{pkg} is already installed.')

jmputils.jpip('list')

");&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 20 Nov 2025 04:40:34 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914391#M107436</guid>
      <dc:creator>zetaVagabond1</dc:creator>
      <dc:date>2025-11-20T04:40:34Z</dc:date>
    </item>
    <item>
      <title>Re: No Module named 'pandas'</title>
      <link>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914402#M107437</link>
      <description>&lt;P&gt;To my knowledge, in JMP18 that folder gets added when Python is "run" first time and you can most maybe force it by running something like&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Python Submit("import jmp");&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;in JMP Script Editor&lt;/P&gt;</description>
      <pubDate>Thu, 20 Nov 2025 05:35:23 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914402#M107437</guid>
      <dc:creator>jthi</dc:creator>
      <dc:date>2025-11-20T05:35:23Z</dc:date>
    </item>
    <item>
      <title>Re: No Module named 'pandas'</title>
      <link>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914531#M107456</link>
      <description>&lt;P&gt;An error message from Python is a clear sign that python is installed ; )&lt;BR /&gt;&lt;BR /&gt;to install Python packages from JSL, please use:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Python Install Packages( "numpy pandas" );&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="hogi_0-1763651182279.png" style="width: 400px;"&gt;&lt;img src="https://community.jmp.com/t5/image/serverpage/image-id/87425i7373F2E48948ED72/image-size/medium?v=v2&amp;amp;px=400" role="button" title="hogi_0-1763651182279.png" alt="hogi_0-1763651182279.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 21 Nov 2025 05:31:04 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914531#M107456</guid>
      <dc:creator>hogi</dc:creator>
      <dc:date>2025-11-21T05:31:04Z</dc:date>
    </item>
    <item>
      <title>Re: No Module named 'pandas'</title>
      <link>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914627#M107479</link>
      <description>&lt;P&gt;Thanks, yes it created the python directory and few packages. below:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-jsl"&gt;Python Submit("
import jmputils

required = ['pandas', 'numpy']

# Get installed packages safely
installed = jmputils.jpip('list')
if installed is None:
    installed = []

print('Installed packages:', installed)

# Install missing ones
for pkg in required:
    if pkg.lower() not in [p.lower() for p in installed]:
        print(f'{pkg} not installed — installing...')
        jmputils.jpip('install', pkg)
    else:
        print(f'{pkg} already installed.')



import pandas as pd
import numpy as np
print('pandas and numpy imported successfully!')

");&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 21 Nov 2025 02:39:50 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914627#M107479</guid>
      <dc:creator>zetaVagabond1</dc:creator>
      <dc:date>2025-11-21T02:39:50Z</dc:date>
    </item>
    <item>
      <title>Re: No Module named 'pandas'</title>
      <link>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914628#M107480</link>
      <description>&lt;P&gt;yes, that did help me to ensure the folder gets added. thanks&lt;/P&gt;</description>
      <pubDate>Fri, 21 Nov 2025 02:41:11 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914628#M107480</guid>
      <dc:creator>zetaVagabond1</dc:creator>
      <dc:date>2025-11-21T02:41:11Z</dc:date>
    </item>
    <item>
      <title>Re: No Module named 'pandas'</title>
      <link>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914634#M107482</link>
      <description>&lt;P&gt;Using that import is one of the checks we use in our JMP-Python applications to make sure everything has been setup.&lt;/P&gt;
&lt;P&gt;I'm still holding out from using JMP19 due to many reasons, but it will make using JMP-Python integration easier.&amp;nbsp;If I remember correctly in JMP19 it will be unnecessary, but I haven't verified it. JMP19 will also make it easier to check if packages have been installed as jmputils gets "is_installed" method.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 21 Nov 2025 05:26:02 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/914634#M107482</guid>
      <dc:creator>jthi</dc:creator>
      <dc:date>2025-11-21T05:26:02Z</dc:date>
    </item>
    <item>
      <title>Re: No Module named 'pandas'</title>
      <link>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/916294#M107661</link>
      <description>&lt;P&gt;In JMP 18, unpacking the site-packages.zip file and creation of the directory was done by the jsite.py script. JMP 19 does this internally in C++ code the first time Python is initiated. &amp;nbsp; The jsite.py script still exists as a backup for when the command line jpip.bat or jpip shell scripts are generated by Python Create JPIP CMD().&amp;nbsp;&lt;EM&gt;Or it's Python equivalent jmputils.create_jpip( dest_path ) .&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;JMP 19 improves scriptable package management by adding jmputils.is_installed( 'package_name' ), jmptuils.package_version( 'package_name' ) and pkg_dict = jmputils.packages(). &amp;nbsp;These were late additions to 19.0, they are present, but not documented in the scripting index. &amp;nbsp;Later updates do have examples in the scripting index.&lt;/P&gt;</description>
      <pubDate>Tue, 02 Dec 2025 19:28:19 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/No-Module-named-pandas/m-p/916294#M107661</guid>
      <dc:creator>Paul_Nelson</dc:creator>
      <dc:date>2025-12-02T19:28:19Z</dc:date>
    </item>
  </channel>
</rss>

