JMP 14 Python 기능 - 작동? 혼란스러워Python을 실행하기 위해 JMP 14의 새로운 기능을 사용하려고 하는데 작동하지 않습니다.기본적으로 내 파이썬 설치를 찾지 못하지만 어떤 상황에서는 충돌이 발생한다고 생각합니다.
나는 보았다 다른 토론 14.1에 문제가 있다고 말하고 환경 변수 설정 및 사용에 대한 해결 방법을 제안합니다. Python 버전("3.6") 사용 에 대한 인수로 파이썬 초기화() (둘 다 시도했지만 실패했습니다).
그런 다음 관련 환경 변수의 다른 이름을 포함하여 이에 대한 자세한 내용을 14.2의 릴리스 노트에서 보았습니다...
https://www.jmp.com/support/help/14-2/how-jmp-finds-python-on-windows.shtml
그래서 저는 14.1에서 업그레이드하러 갔고 이제 14.3이 있는 것을 보고 얻었습니다. 14.2 게시물에서 환경 변수 지침을 시도하면 더 이상 사용되지 않으며 이제 JMP_PYTHON_MODULE_PATH여야 한다는 메시지가 표시됩니다.그래서 나는 그것을 시도했다, 나는 생각하다 14.2 게시물과 동일한 형식을 사용하지만 여전히 작동하지 않는 올바른 파일에 대한 유효한 경로가 있습니다.내 JMP15 얼리 어답터 버전에서도 이것을 시도해 보았고 동일한 결과를 얻었습니다. 환경 변수를 JMP_PYTHON_MODULE_PATH라고 해야 한다는 동일한 메시지입니다.
모든 경우(14.1, 14.3, 15 얼리어답터, 다양한 버전의 환경 변수)에서 Python Init()에 인수가 없으면 JMP가 해당 행에서 바로 충돌합니다.거기에 UsePythonVersion("3.6") 이 있으면 Python을 전혀 찾을 수 없다는 오류가 표시됩니다.
이 시스템에서 Python 설치를 찾을 수 없습니다. JMP Python 지원에는 Python 버전 3.0 이상이 필요합니다. 'Python Init' 액세스 또는 평가에서 Python Init/*###*/(Python 버전 사용( "3.6" ))
누구든지 이것을 성공적으로 사용하고 있습니까?그렇다면 Python Init() 안에 무언가를 넣고 있습니까?
또는 환경 변수 설정을 사용한 경우 이름과 모양은 무엇입니까?추가 문제 해결 조언이 있습니까?
환경 변수에 대한 나의 최근 시도는 다음과 같습니다. 이것이 올바른 형식이 아닙니까? (이전 게시물은 환경 변수에 중괄호가 있고 JMP와 같은 큰따옴표가 JSL 목록 형식인 것처럼 보였지만 이것은 4.2 게시물이 하려는 것과 다른 형식이 나에게 적합하지 않은 것처럼 보입니다.python36.dll 파일은 정말 하다 이 위치에 있는 듯...
기술 지원이 필요한 내 시스템 고유의 이상한 문제가 있는지 또는 이것이 어떻게 작동하는지에 대한 최신 버전을 얻지 못한 것인지 확실하지 않습니다.
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워환경 변수를 사용하는 것은 결코 선호되는 경로가 아닙니다. Python Init() 또는 Python Connect()에 대한 JSL 스크립트 매개변수는 항상 최종 값으로 '가정'되었습니다. 모든 매개 변수는 선택 사항이지만 python3x.dll에 대한 경로를 지정하고 마지막 수단으로 sys.path에 추가하면 Python을 완전히 지정해야 합니다. Python 통합은 JMP 14 이후 Python 감지를 크게 개선했습니다. 이 시점에서 환경 변수를 사용하는 것은 비생산적일 수 있으므로 사용해서는 안 됩니다(노브를 만지작거릴 시간이 있고 다른 모든 것이 실패하지 않는 한 대체 코드 경로입니다). JMP 16.1 이상에서는 JSL 스크립트 매개변수가 '무엇보다 우선'해야 합니다...
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워응답이 조금 늦었다는 것을 알고 있지만 JMP 및 Anaconda의 최신 버전에 맞게 이 항목을 편집 및 업데이트해야 합니다.2021년 8월 24일에 Python 3.8과 JMP 16을 통합하는 데 성공했습니다.
이 스레드에 게시된 "솔루션"과 정반대로 환경 변수를 전혀 변경하지 마십시오.
하다.
아니다.
이 "솔루션"으로 인해 몇 주 동안 통합 및 개발에 실패했습니다.JMP를 설치하거나 JMP를 업데이트한 후에는 새로운 버전의 Anaconda(Anaconda Navigator를 사용할 수 있음)를 설치하고 Anaconda의 기본(루트) 환경이 3.8.3 이상인지 확인해야 합니다.나는 또한 3.8.8에서 성공적으로 테스트했습니다.
다음을 수행하여 경로 및 설치를 확인할 수 있습니다.
- C:\Program Files\SAS\JMP\\(여기에 표시되지 않으면 C:\Program Files (x86)\SAS\JMP\\)로 이동합니다.
- InstallChecker.exe를 두 번 클릭합니다(검사기 설치라고만 표시될 수 있음).
- 보고서가 표시되면 "브라우저에서 열기"를 선택합니다.
그러면 XML 파일이 표시되고 끝에 다음이 표시되어야 합니다.
-
"/>
"/>
<항목 이름="PYTHONHOME" 값="<설정되지 않음>"/>
"/>
"/>
제 경우에는 환경 변수를 다음과 같이 변경한 후 통합에 성공했습니다.
"/>
"/>
이것이 도움이 되기를 바라며 단순히 작동하지 않으므로 이 스레드의 솔루션을 제거할 것을 강력히 제안합니다.
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워JMP 15.0은 여전히 같은 문제를 겪고 있습니다. PATH 옵션 없이 연결된 Anaconda를 설치했는데 제대로 작동했습니다.
이 패키지는 상당히 오래되었으므로 Python 자체를 3.6.5로 업데이트하지 않도록 주의하면서 패키지를 업데이트해야 합니다(3.6.9는 저에게 적합하지 않음).
다음 릴리스에서 수정되기를 바랍니다.
@FN 쓴 :
다음과 같은 경우 Windows 10 및 JMP 14.2에서 즉시 작동함을 확인할 수 있습니다.
Anaconda Python 3.6* 64비트 설치 > https://repo.continuum.io/archive/Anaconda3-5.2.0-Windows-x86_64.exe ;
PATH 옵션이 활성화됩니다(관리자 권한 필요 없음).

내 요점은 사용자가 Anaconda 설치, 환경 및 버전 관리로 번거롭게 할 필요가 없도록 휴대용 Python 버전으로 추가 기능을 배포하는 기능에 관한 것입니다.
도와 주셔서 감사합니다. 다음 업데이트에서 훌륭한 Python 통합을 기대합니다.
(*) 현재 버전의 Anaconda에서는 JMP가 이 구성과 충돌합니다.
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워배포에 관해서는 Python이 다른 사용자 설치를 방해하지 않는 한 괜찮을 것이라고 생각합니다.
예를 들어 특정 폴더 하나에 있는 JMP 15 EA8에서 Python을 호출하려고 합니다.
이 폴더에는 제거하기 전에 폴더에 복사한 Anaconda/miniconda의 모든 설치 파일이 포함되어 있습니다. 코드는 설치될 때 작동했습니다. 이제 JMP는 내가 지정한 경로를 사용하지 않는 것 같습니다.
Set Environment Variable( "JMP_PYTHON_MODULE_PATH",
"\["", "C:/Users/xxx/JMP_scripting/python/miniconda3/python36.zip",
"C:/Users/xxx/JMP_scripting/python/miniconda3/DLLs",
"C:/Users/xxx/JMP_scripting/python/miniconda3/lib",
"C:/Users/xxx/JMP_scripting/python/miniconda3",
"C:/Users/xxx/JMP_scripting/python/miniconda3/lib/site-packages",
"C:/Users/xxx/JMP_scripting/python/miniconda3/lib/site-packages/win32",
"C:/Users/xxx/JMP_scripting/python/miniconda3/lib/site-packages/win32/lib",
"C:/Users/xxx/JMP_scripting/python/miniconda3/lib/site-packages/Pythonwin"]\"
);
Python Init (Path("C:\Users\xxx\JMP_scripting\python\miniconda3"),
Init Trace("TRUE"),
Debug Print Statements ("TRUE"),
Debug Print Output("TRUE") );
Python Submit( "\[basket = ["apple", "orange", "pear"]
print(basket)]\" );
Python Term();
JMP 15 EA8의 오류

JMP Pro 14.2의 오류:
이 시스템에서 Python 설치를 찾을 수 없습니다. JMP Python 지원에는 Python 버전 3.0 이상이 필요합니다. 'Python Init' 액세스 또는 평가에서 Python Init/*###*/(Path(
"C:\Users\xxx\JMP_scripting\python\miniconda3"
))
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워멋진! 훌륭한 사용 사례입니다.
이상적인 JMP + Python 작업 흐름을 검색할 때 JMP(Pro)가 JMP 모델에 대한 Python 채점 코드를 생성할 수 있다는 점은 주목할 가치가 있습니다. 이는 JMP 기능을 Python 세계로 밀어 넣는 다른 방향으로의 통합을 지원합니다.
예를 들어 JMP 모델을 Oracle의 대규모 데이터 테이블에 적용하고 싶다고 가정하면 모델을 Python으로 변환하고 UDF를 사용하여 데이터베이스에서 점수를 매길 수 있습니다(지원은 실험적인 것 같습니다).
https://oracle.github.io/oracle-db-mle/python/
또는 JMP 모델을 Python 동료와 공유하여 Jupyter 노트북 등에서 실행할 수 있도록 할 수 있습니다.
또한 JMP 15.0에서는 데이터 시각화 툴팁에 외부 이미지를 축소판으로 더 쉽게 표시할 수 있습니다. 이렇게 하면 JMP 테이블로 직접 가져와야 할 필요성이 줄어들거나 없어져 크기가 작아집니다. 물론 성능 비용이 있지만 가치 있는 절충안이 될 수 있습니다. 그것을 주시하십시오.
공유해주셔서 감사합니다! 당신의 여정에 우리를 계속 게시하십시오!
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워멋지네요 - 감사합니다!적어도 몇 주 동안 테스트할 시간이 없지만(가상 환경 없이 Python 설치를 완전히 다시 수행하므로 이를 시도하는 데 시간이 좀 걸릴 것입니다) 곧 이것을 테스트하고 싶습니다.
Python 사용을 실제로 시작한 것은 tensorflow와 keras로 이미지를 분류하는 것입니다.관련 이미지를 쿼리하고 Python을 호출하여 내 모델을 실행한 다음 결과를 Oracle에 푸시하는 JMP 스크립트를 실행하고 있습니다.그 전체 작업은 아마도 Python에서 수행하게 될 것이지만 JSL에서 수행하는 작업은 지금까지 Python에서 배우는 것보다 훨씬 더 능숙하고 JSL 자동화 작업을 실행하기 위한 전체 체계가 이미 있기 때문에 JSL에서 수행하고 있습니다. , Oracle 등으로 테이블을 푸시하기 위해 구축된 기능이 있습니다.
그러나 전체 프로젝트가 본질적으로 JMP와 관련이 없을 것이라고 생각했지만 실제로 JMP 테이블에 이미지를 다른 데이터와 함께 두는 것이 모든 일반적인 JMP 방식으로 상호 작용할 수 있다는 것을 알게 되었습니다. 데이터 열 등 그로 인해 다른 많은 이미지 관련 추가 기능을 수행하게 되었습니다.결국 내 프로젝트에서 라이브 대화형 JMP 세션 중에 Python을 호출해야 하는 진정한 필요성이 있는지 또는 분리될 수 있는지 여부를 확인해야 합니다(tf 모델 결과를 대화식으로 검토하는 도구는 직접 호출하지 않고 Oracle에서 결과를 쿼리하기만 함). 모델을 라이브로 실행하는 Python?) 하지만 현재 함께 사용하고 있습니다.
어쨌든, 그것은 제가 현재 Python을 사용하고 있는 JMP에 포함되지 않은 것입니다. 나는 더 많은 Python을 배우려고 노력하고 있고 그것에 대해 전문가인 동료를 두고 있고 실제로 Python을 호출하여 JMP와 그 기능을 결합하고 싶은 더 많은 것을 찾을 것 같습니다.
감사해요!
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워안녕하세요 @하드너 ,
JMP와 함께 Python을 더 많이 사용하고 있다는 사실을 알게 되어 기쁩니다. 당신이 하고 있는 일을 공유할 수 있다면, 우리는 알고 싶습니다!
가상 환경에 대한 지원과 관련하여 귀하의 의견을 듣고 있습니다. 종속성을 체계적으로 유지하고 동료가 추가 기능을 실행하기 위해 환경을 재현하도록 돕는 측면에서 큰 차이를 만듭니다.
그래서 바로 그 문제를 해결하는 데 도움이 되는 작은 라이브러리를 구성했습니다. 확인해주십시오:
https://community.jmp.com/t5/JMP-Scripts/Anaconda-Environments-Integration/ta-p/221565
14.3 및 15.1에서 테스트된 많은 예제. 그러나 적어도 현재로서는 Windows 전용 및 Anaconda 전용입니다.
그것이 당신에게 효과가 있는지 알려주세요!
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워안녕하세요!
그냥 OP로 이 스레드에 다시 끼어들면...
- 원래 게시물 이후로 Python을 더 많이 사용하고 있으며 저에게 효과가 있다고 말한 것이 계속 작동합니다.:)
- Python을 지원하기 위한 노력에 감사하며 이제는 Python을 사용할 특정 항목을 찾았습니다. 감사해요!
- FN과 마찬가지로 Python을 호출하는 공유 애드인이 문제가 있음을 발견했습니다. 나는 많은 추가 기능을 공유합니다.나는 지금 이것을 나 자신과 내가 실행하는 작업을 위해 사용하고 있으며 결과를 다른 사람과 공유하지만 다른 사람이 실행할 스크립트에서는 사용하지 않습니다.Python 및 패키지 설치에 대한 복잡한 지침을 제공하고 함께 작동하는 특정 버전에 대해 걱정해야 합니다(공유 스크립트가 아닌 내가 사용하는 R에서도 동일한 문제가 발생함).그러나 특정 버전이 JMP 내에 캡슐화되어 있으면 우리가 할 수 있는 일이 제한됩니다.여전히 가상 환경을 지원하는 것이 도움이 될 수 있다고 생각하면 사용자가 사용하려는 특정 도구에 대해 내 사양에 맞게 설치를 설정하도록 지시하고 지원할 수 있으며 컴퓨터의 다른 Python 활동을 방해하지 않을 수 있습니다.그러나 무엇이 최선인지 확실하지 않으며 사용자 Python 설치 문제를 해결하는 데 그다지 열성적이지 않습니다.그래서 그것이 이상적이지 않다는 데 동의하고 이 능력을 더 많이 사용하는 데 약간의 관심이 있다는 점에 주목합니다.
감사해요!
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워다음과 같은 경우 Windows 10 및 JMP 14.2에서 즉시 작동함을 확인할 수 있습니다.
Anaconda Python 3.6* 64비트 설치 > https://repo.continuum.io/archive/Anaconda3-5.2.0-Windows-x86_64.exe ;
PATH 옵션이 활성화됩니다(관리자 권한 필요 없음).

내 요점은 사용자가 Anaconda 설치, 환경 및 버전 관리로 번거롭게 할 필요가 없도록 휴대용 Python 버전으로 추가 기능을 배포하는 기능에 관한 것입니다.
도와 주셔서 감사합니다. 다음 업데이트에서 훌륭한 Python 통합을 기대합니다.
(*) 현재 버전의 Anaconda에서는 JMP가 이 구성과 충돌합니다.
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워귀하의 질문을 이해하지 못했습니다. 모든 사용자를 위해 Python을 설치하려면 실제로 관리자 액세스가 필요하지만 설치된 Python을 사용하려면 관리자 액세스가 필요하지 않습니다. Python을 호출하는 JMP 추가 기능은 설치 또는 실행을 위해 관리자 액세스 권한이 필요하지 않습니다. 예, 모든 사용자에 대해 설치되는 추가 Python 패키지에는 관리자 액세스가 필요합니다. 관리자가 설치하지 않아도 되는 사용자 단위로 사이트 로컬 패키지를 설치할 수 있어야 합니다. 이것은 내가 테스트하려고 의도했지만 시도해 볼 기회가 있었던 것입니다. 사이트 로컬 패키지의 위치를 추가하려면 sys.path를 업데이트해야 할 수 있습니다.
JMP 15 설명서에 관해서는 이 논의 중 일부가 포함된 것으로 알고 있습니다. 불행히도 모든 것이 마감 전에 문서화되지는 않았습니다. 우리는 유지 관리 릴리스를 통해 나머지 부분을 가져오는 작업을 할 것입니다.
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워모든 사용자에 대해 설치하려면 관리자 권한도 필요하므로 Python을 호출하는 추가 기능을 배포할 때 편리하지 않습니다.
여기에서 논의된 내용이 JMP 15 문서에 포함됩니까?
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워Python 3.7을 로드하려고 할 때 JMP가 갑자기 종료되는 현상을 개발 시스템에서 복제할 수 있었습니다.Python 3.7, 특히 내장된 경우 Python 3.8에 문제가 있는 것은 우리(JMP)만이 아닙니다.Python에서 얻은 오류는 다음과 같습니다.
치명적인 Python 오류: 파일 시스템 코덱을 로드할 수 없습니다.
Jmp.exe의 0x00007FFE84F9B64E(ucrtbase.dll)에서 처리되지 않은 예외: 치명적인 프로그램 종료가 요청되었습니다.
그만큼 현재 해결책은 Python 3.6.5 또는 최신 3.6.x를 사용하거나 로컬 사용자뿐만 아니라 모든 사용자를 위한 설치로 Windows에 Python 3.7.x를 설치해야 하며 다음 옵션을 선택해야 합니다. PATH의 Python.이것은 Anaconda3의 설치 대화 상자와 직접적으로 모순되며 경로에 넣지 말라고 경고합니다.
내 개발 머신은 시스템 전체 설치로 설치된 3.7.1에서 잘 작동하며 경로의 기본 Python입니다.JMP의 갑작스러운 중단을 복제할 수 있었던 동료의 컴퓨터에서 경로에 로컬 설치가 아닌 기본 설치 옵션을 사용하여 Python 3.7.1을 설치했습니다.우리는 환경 변수 PYTHONHOME= 'the anaconda3 directory'를 설정하여 JMP가 종료되지 않도록 할 수 있었습니다. 내 컴퓨터에서 모두 예상대로 작동합니다.
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워유용한 경우를 대비하여 UsePythonVersion("3.6")에 대해 자세히 알아보십시오....
이 줄은 JMP를 처음 열 때 작동하지 않습니다...
Python Init(Python 버전 사용( "3.6" ), InitTrace( "True" ));
InitTrace()에서 로그에 표시된 내용은 다음과 같습니다.
OpPythonInit 연산자 처리
JMP에서 Python 인터페이스 초기화 시작
쿼리 HKEY_CURRENT_USER
읽기 hKey=0XFFFFFFFF80000001 kname=SOFTWARE\Python\PythonCore bits=64
찾은 hKey=0xFFFFFFFF80000001 kname=SOFTWARE\Python\PythonCore 비트=64
하위 키 수=1
하위 키 검색 중 #=0
하위 키=3.6 길이=3
열기 하위 키=3.6
열기 키=3.6 하위 키=InstallPath
쿼리 값 키=3.6 하위 키=InstallPath
쿼리 값 키=3.6 하위 키=InstallPath 값=C:\Users\12470\AppData\Local\Continuum\anaconda3
열기 키=3.6 하위 키=PythonPath
쿼리 값 키=3.6 하위 키=PythonPath
Python DLL의 버전=3.6에 대한 빌드 경로
이 시스템에서 Python 설치를 찾을 수 없습니다. JMP Python 지원에는 Python 버전 3.0 이상이 필요합니다. 'Python Init' 액세스 또는 평가에서 Python Init/*###*/(Python 버전 사용( "3.6" ), InitTrace( "True" ))
줄을 반복해서 실행하면 반복적으로 발생하지만 UsePythonVersion 없이 이 버전을 수행하면...
Python Init(InitTrace( "True" ));
작동할 뿐만 아니라 이 JMP 세션이 열려 있는 동안 UsePythonVersion("3.6") 인수가 있는 원래 버전도 작동하기 시작합니다.이 경우 해당 초기화 추적에서 로그에 표시되는 내용은 다음과 같습니다.두 경우 모두 나에게 동일하고 올바른 모양을 보여주는 경로 ....
쿼리 HKEY_CURRENT_USER
읽기 hKey=0XFFFFFFFF80000001 kname=SOFTWARE\Python\PythonCore bits=64
찾은 hKey=0xFFFFFFFF80000001 kname=SOFTWARE\Python\PythonCore 비트=64
하위 키 수=1
하위 키 검색 중 #=0
하위 키=3.6 길이=3
열기 하위 키=3.6
열기 키=3.6 하위 키=InstallPath
쿼리 값 키=3.6 하위 키=InstallPath
쿼리 값 키=3.6 하위 키=InstallPath 값=C:\Users\12470\AppData\Local\Continuum\anaconda3
열기 키=3.6 하위 키=PythonPath
쿼리 값 키=3.6 하위 키=PythonPath
Python DLL의 버전=3.6에 대한 빌드 경로
Python DLL 경로=C:\Users\12470\AppData\Local\Continuum\anaconda3\python36.dll
sys.path entry.jstr:C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\Lib
sys.path entry.jstr:C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\DLLs
전에:
/************/
인쇄(_JMPsys.경로)
/************/
['C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\python36.zip', 'C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3 \\Lib', 'C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\DLLs', 'C:\\Program Files\\SAS\\JMP\\14', ' C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3', 'C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\lib\\site- 패키지', 'C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\lib\\site-packages\\Babel-2.5.0-py3.6.egg', 'C: \\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\lib\\site-packages\\win32', 'C:\\Users\\12470\\AppData\\Local\\Continuum\ \anaconda3\\lib\\site-packages\\win32\\lib', 'C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\lib\\site-packages\\Pythonwin ']
후에:
/************/
인쇄(_JMPsys.경로)
/************/
['', 'C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\python36.zip', 'C:\\Users\\12470\\AppData\\Local\\Continuum \\anaconda3\\Lib', 'C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\DLLs', 'C:\\Users\\12470\\AppData\\Local\ \Continuum\\anaconda3', 'C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\lib\\site-packages', 'C:\\Users\\12470\\AppData \\Local\\Continuum\\anaconda3\\lib\\site-packages\\win32', 'C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\lib\\site- packages\\win32\\lib', 'C:\\Users\\12470\\AppData\\Local\\Continuum\\anaconda3\\lib\\site-packages\\Pythonwin']
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워일하고 있는!
나를 위해 일한 것은 다음과 같습니다.
Python 3.6용 아카이브를 사용하여 Anaconda를 다시 설치했습니다(3.6용 가상 환경 사용을 피하기 위해).anaconda3 폴더 아래에 가상 환경을 위한 레이어가 2개 더 없는 이전과 동일하게 설치된 위치는 다음과 같습니다.
C:\Users\12470\AppData\Local\Continuum\anaconda3\python36.dll
환경 변수 JMP_PYTHON_MODULE_PATH를 python36.dll의 위 경로로 설정합니다.
"설치를 찾을 수 없음" 오류가 발생하는 Python init()에서 UsePythonVersion("3.6") 인수를 사용하지 않았습니다.
재설치 후 시도하는 것은 지금까지 충돌을 일으키는 것이 아닙니다.분명히 많은 작업을 수행하지 않았지만 충돌(?)을 유발한 가상 환경과 관련된 것으로 보입니다.지금까지 수행한 제한된 테스트는 14.3과 15EA 모두에서 작동합니다.
감사해요!
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워@폴_넬슨 & @제프_퍼킨슨 ,
JMP를 14.3으로 업데이트했으며 여전히 충돌이 계속되는 것을 확인할 수 있습니다. 필요한 추가 정보가 있으면 알려주십시오.
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워가장 먼저 해야 할 일은 최신 버전의 JMP 14로 업데이트하는 것입니다. 원래 14.0.0은 적절한 Python 설치를 자동으로 감지할 수 있으면 제대로 작동했습니다. 그러나 Python을 올바르게 찾을 수 없으면 다른 방법이 전혀 제대로 작동하지 않습니다. 연속 업데이트 14.1, 14.2,…의 작업으로 인해 다른 대안, 검사 환경 변수, Python Init() 변수 사용이 더 잘 작동했습니다. 여전히 특정 환경에서 작동하지 않을 수 있지만 이것이 가장 먼저 시작하는 것입니다.
JMP의 기술 지원과 계속 협력해야 합니다. 기술 지원을 통해 모든 JMP 고객은 이 문제에 대해 우리가 해결하는 이점을 누릴 수 있습니다. 지금은 코드를 좀 더 파헤치고, 코드를 추가로 계측하고, 코드를 완벽하게 보호하고, 테스트 또는 진단 프로그램을 작성해야 할 수도 있습니다.
기다려 주셔서 감사합니다.
폴
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워내 가치는 확실히 64 비트이고 충돌도 발생합니다.Python Init()에서 광산이 충돌하지 않는 유일한 경우는 "찾을 수 없음" 메시지가 표시될 때 Use Python Version() 인수를 사용할 때입니다.Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워@하드너 그리고 @폴_넬슨 ,
폴, 나도 동의할 수 있어 @하드너 의 관찰. 내일이나 다음 주에 우리와 함께 webex를 해달라고 요청해도 괜찮습니까? 우리의 설치를 보고 왜 작동하지 않는지 알려줄 수 있습니다. 그런 다음 회의에서 얻은 정보를 기반으로 커뮤니티에 업데이트된 블로그 기사를 게시할 수 있습니다. 이게 당신이 할 수 있는 일인가요?
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워내 가치는 확실히 64 비트이고 충돌도 발생합니다.Python Init()에서 광산이 충돌하지 않는 유일한 경우는 "찾을 수 없음" 메시지가 표시될 때 Use Python Version() 인수를 사용할 때입니다.
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워또한 최신 버전의 JMP 14로 업데이트하겠습니다. JMP 14.x의 각 버전에서 Python을 찾고 적절하게 로드하는 작업을 개선하기 위해 추가 작업이 수행되었습니다.Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워나는 불일치를 바라고 있었고 당신의 문제는 갑자기 해결될 것입니다.
Python을 로드하려고 할 때 예외를 포착하는 추가 코드를 방금 추가했습니다. 또한 Python 초기화를 위한 실행 경로의 일부 추적을 얻을 수 있도록 Init Trace("TRUE")가 파일과 로그에 기록하도록 코드를 추가하는 방법도 살펴보겠습니다. 바라건대 둘 다 다음 JMP 15 EA에 포함되어야 합니다. (다음 일정이 언제인지 확실하지 않음).
폴
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워@폴_넬슨 ,
물론. JMP와 Python이 모두 64비트인지 확인하고 검증했습니다.


Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워Python과 JMP가 동일한 비트인지 확인했습니까? 32비트 또는 64비트. 덤프 파일이 없다는 것은 JMP가 Python을 공유 라이브러리로 로드하려고 할 때 아마도 다운되고 있음을 나타냅니다. 32비트 JMP/64비트 Python 또는 64비트 JMP/32비트 Python이 일치하지 않는 경우 충돌이 거의 보장됩니다.
이는 JMP가 로드를 시도하기 전에 검증해야 하는 것이고 우리가 포착하려고 시도해야 하는 것이지만 여전히 복구할 수 없는 상태일 수 있습니다. 하지만 JMP가 알림을 줄 수 있다면 좋을 것입니다.
폴
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워@폴_넬슨 ,
이 문제에 대한 기술 지원 케이스(SAS 7612709398)를 진행 중입니다.
나는 당신이 제안한대로 추적을 포함하려고 시도했으며 Jmp를 충돌시킵니다. 그러나 기술 지원에 제공할 수 있는 .dmp 파일 또는 .jer 파일이 생성되지 않습니다.
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워Python 가상 환경 지원은 우리가 보고 있는 것입니다.
이면은 이 질문입니다.
Python의 다양한 사용자 설치 버전을 지원하는 것이 실행하고 계속 실행하기가 너무 어렵습니까?
그렇다면 해결책은 문제 없이 JMP와 함께 작동하는 것으로 테스트되고 알려진 Python의 JMP 제공 및 설치 버전일 수 있습니다. 가져오는 문제에는 JMP 제공 Python 환경에 대한 로컬 패키지 및 확장 설치 지원이 포함됩니다.
현재 우리는 사용자가 설치한 Python을 지원하는 것을 선호하지만, 야생에서 다양성을 경험한 것처럼 그것은 도전이 될 수 있습니다.
감사해요,
폴
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워이 모든 것에 감사드립니다.
제 문제에 대해 말씀하신 내용 중 "현재 JMP는 가상 환경을 인식하지 못합니다"라는 점은 확실합니다.
Python 3.7이 포함된 최신 Anaconda를 설치한 후 3.6이 필요한 tensorflow를 사용하고 싶다는 것을 알았고 여기에 설명된 첫 번째 옵션을 수행했습니다. python3.6 환경을 설정했습니다.
https://docs.anaconda.com/anaconda/user-guide/faq/#anaconda-faq-35
내가 파이썬을 사용하고 있고 3.7에 대한 특별한 필요가 없다는 점을 감안할 때-내가 아는 것-모든 것을 제거하고 보관 된 Anaconda 설치 패키지와 같은 다른 옵션으로 다시 시작할 수 있다고 생각합니다. 3.6 . 어떻게 되는지 보겠습니다.
그러나 이런 종류의 "다른 항목에 대해 다른 버전이 필요함"은 R의 경우와 마찬가지로 일반적인 것 같습니다. 더 복잡해 보이는 옵션에 뛰어들게 만든 경우를 읽었고 위의 링크는 유일한 것이 아닙니다. 가상 환경을 사용하라는 조언을 보았습니다.따라서 특정 가상 환경에서 작동하도록 말할 수 있는 계획에 대해 더 말할 수 있는지 궁금합니다.
InitTrace("TRUE")로 인해 JMP가 충돌합니다.그러나 가상 환경과 관련된 경로가 없다면 다를 것입니다. 이에 대해 작업하고 추가 지원을 위해 기술 지원 케이스를 엽니다.감사해요!
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워나는 그것이 당신에게 그러하듯이 우리에게도 실망스럽다는 것을 압니다. 시스템에서 문제를 복제하는 데 어려움을 겪고 있지만 일부 고객에게 문제가 있음을 알고 있습니다. 우리의 대부분의 기계는 회사 이미지가 동일하고 유사합니다 ... 한 가지 중요한 점은 JMP와 Python의 비트 수가 일치해야 한다는 것입니다. JMP는 Python을 공유 라이브러리로 로드하기 때문에 JMP와 Python을 서로 다른 비트로 혼합할 수 없습니다. 32비트 JMP가 있는 경우 32비트 Python 3.6.1 이상을 가리켜야 합니다. 64비트 JMP가 있는 경우 64비트 Python 3.6.1 이상이어야 합니다. 시스템에 Python이 하나만 설치되어 있는 경우 성공 가능성이 가장 높습니다. JMP 14.1에서는 시스템에 둘 이상이 있으면 Python을 로드하려고 시도조차 하지 않았습니다. 현재 JMP는 가상 환경을 인식하지 못합니다.
문제가 있는 경우 다음 옵션을 시도하십시오. 파이썬 초기화()
파이썬 초기화( 초기 추적("참") );
문서화되지 않은(죄송합니다) 이 옵션을 사용하면 JMP가 발견한 Python의 레지스트리 항목과 발견한 경로를 포함하여 Python이 있다고 생각하는 위치에 대한 많은 세부 정보를 덤프하게 됩니다. 기술 지원에 문의할 때 출력을 포함하십시오.
환경에서 다음 Python 스크립트를 실행하는 비트 수를 확인할 수 있습니다.
가져오기 구조체
print( struct.calcsize("P") *8)
실행 중인 Python의 비트 수에 따라 32 또는 64를 인쇄해야 합니다.
참고: JMP 14는 버전에 따라 32비트 또는 64비트일 수 있습니다. 수축 포장은 항상 32비트입니다.
JMP 15는 64비트입니다.
Python Init() 및 환경 변수를 최대한 문서화하려고 합니다.
JMP 15는 찾고 있는 2개의 새로운 환경 변수를 추가합니다.
JMP_LIB_PYTHON_PATH - 공유 라이브러리의 전체 경로입니다.
JMP_PYTHON_MODULE_PATH - Windows 또는 MacOS 환경 변수에서 예상되는 Python의 sys.path입니다. Windows에서는 세미콜론으로 구분된 목록, MacOS에서는 JSL 목록이 아닌 콜론으로 구분된 목록입니다.
내 컴퓨터에는 C:\ProgramData\Anaconda3에 Anaconda 3.7.1 64비트가 설치되어 있습니다.
그것은 다음과 같이 보일 것입니다
JMP_LIB_PYTHON_PATH=C:\ProgramData\Anaconda3\python37.dll
dll에 대한 경로는 충분해야 합니다... 그리고 매개변수 없이 Python Init()를 사용할 수 있을 만큼 충분해야 합니다. JMP_LIB_PYTHON_PATH 및 JMP_PYTHON_MODULE_PATH를 지정하면 Python 인터프리터가 둘 이상 있어도 Python을 완전히 지정해야 하며 Python Init()이 작동해야 합니다.
'Python sys path'에 대해 논의한 바와 같이 환경변수 Windows 또는 MacOS에서 셸 환경 변수에 대한 일반적인 규칙을 따르지 않기 때문에 더 이상 사용되지 않습니다. 변수 이름에 공백이 있고 UNIX에서 예상되는 콜론으로 구분된 경로나 Windows에서 예상되는 세미콜론으로 구분된 경로가 아닌 경로 구성 요소 { , }의 JSL 목록을 예상합니다.
우리는 Python 환경 변수 PYTHONPATH 및 PYTHONHOME에 더 주의를 기울이려고 시도했습니다. Python 문서에서 이러한 변수에 대한 설명은 다음과 같습니다.
파이톤홈
표준 Python 라이브러리의 위치를 변경합니다. 기본적으로 라이브러리는 다음에서 검색됩니다.
prefix/lib/pythonversion 및 exec_prefix/lib/pythonversion, 여기서 prefix 및 exec_prefix는 다음과 같습니다.
설치 종속 디렉토리, 둘 다 기본값은 /usr/local입니다.
PYTHONHOME이 단일 디렉터리로 설정되면 해당 값이 접두사와 exec_prefix를 모두 대체합니다.
이들에 대해 다른 값을 지정하려면 PYTHONHOME을 prefix:exec_prefix로 설정합니다.
파이톤패스
모듈 파일의 기본 검색 경로를 늘리십시오. 형식은 쉘과 동일합니다.
PATH: os.pathsep로 구분된 하나 이상의 디렉토리 경로 이름(예: Unix의 콜론 또는
Windows에서는 세미콜론). 존재하지 않는 디렉토리는 자동으로 무시됩니다.
일반 디렉토리 외에도 개별 PYTHONPATH 항목은 zip 파일을 참조할 수 있습니다.
순수한 Python 모듈(소스 또는 컴파일된 형식)을 포함합니다. 확장 모듈
zip 파일에서 가져올 수 없습니다.
기본 검색 경로는 설치에 따라 다르지만 일반적으로 접두사/lib/pythonversion으로 시작합니다.
(위의 PYTHONHOME 참조). 항상 PYTHONPATH에 추가됩니다.
위에서 설명한 대로 PYTHONPATH 앞의 검색 경로에 추가 디렉토리가 삽입됩니다.
인터페이스 옵션에서. 검색 경로는 Python 프로그램 내에서 변수 sys.path로 조작할 수 있습니다.
JMP 15가 환경 변수를 찾는 선례의 순서는 다음과 같습니다.
환경 변수 및 JSL 스크립트의 우선순위가 높은 순서에서 낮은 순서
- JSL 스크립트 내에서 지정됨 파이썬 초기화( 길("") , Python 버전("") 사용 , 파이썬 시스템 경로( { "",... } ), ... )
- 시스템/쉘 환경 변수에 지정
- 자동 위치
- Python 또는 conda를 실행하기 위한 PATH var 또는 시스템 셸에 있는 레지스트리, ... 로컬에 설치된 Python을 선호해야 합니다.
둘 다 존재하는 경우 시스템 전체에서 Python을 설치합니다.
JMP 14
dll에 대한 경로이거나 JSL 목록 {"","",... }
PYTHONINSTALLPATH = Python 설치가 포함된 최상위 디렉터리 또는 Python 공유 라이브러리가 포함된 디렉터리의 경로입니다.
그만큼 파이썬 초기화() 성명
매개변수:
Path() - dll의 전체 경로 또는 dll이 포함된 Python 최상위 디렉터리입니다.
Python Version() 사용 - major.minor 파이썬 버전의 인용 문자열입니다. 하나 이상의 Python이 발견될 때 종종 자체적으로 충분합니다.
Python sys path() - Python sys.path 값에 해당하는 인용된 문자열 경로의 JSL 목록입니다. 이 3개를 지정하면 Python 설치를 완전히 지정해야 하며 모든 환경 또는 레지스트리 값을 재정의해야 합니다.
초기화 추적("TRUE") - JMP의 로그에 대한 JMP의 Python 초기화 중 디버깅 출력
디버그 인쇄 문("TRUE"); - Python 문을 JMP 로그에 직접 인쇄
디버그 인쇄 출력("TRUE"); - Python 출력을 JMP 로그에 직접 출력
JMP 14 Python Init()도 선택적으로 다음을 허용합니다. 또는 다른 하나는 JMP 설치의 비트 수와 일치합니다. 32비트 JMP는 64비트 Python을 사용할 수 없고 64비트 JMP는 32비트 Python을 사용할 수 없습니다.
32비트 Python 사용("TRUE")
64비트 Python 사용("TRUE")
JMP 15는 64비트이므로 JMP 15는 위의 선택적 매개변수를 제거했으며 오직 64비트 Python을 사용합니다. 에 대한 모든 매개변수 파이썬 초기화() 선택 사항입니다. 레지스트리의 자동 감지 또는 환경 변수가 유효한 Python을 가리키는 경우 더 이상 아무것도 없습니다. ~해야 한다 당신에게 필요한 파이썬 초기화()
주저하지 말고 JMP 기술 지원팀에 문의하세요. JMP의 Python 기능이 유용하고 JMP가 제공하는 기능을 강화하기를 바랍니다. 우리는 이러한 문제를 해결하여 제대로 작동하도록 하고 싶습니다.
폴
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워수행원...
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워감사해요! 할 것이다. 나는 또한 python init() 내부에 dll의 path()를 넣으려고 시도했으며 적어도 그것을 찾을 수 없다고 불평하는 대신 충돌한다고 덧붙일 수 있습니다. 전반적으로 기술 지원의 도움이 필요할 수도 있지만 다른 사람들에게도 유용할 수 있는 몇 가지 설명이 있기를 바랐습니다.Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워아나콘다 배포판을 C:\에 설치하고 환경 변수를 설정했음에도 불구하고 확인할 수 있습니다. 우편 , 나는 그것을 작동시킬 수 없습니다. 여전히 JMP와 충돌합니다. 기술 지원에서 답변을 받으면 업데이트하겠습니다. 알아내시면 똑같이 해주세요.
Re: JMP 14 Python 기능 - 작동합니까? 혼란스러워@하드너 ,
나는 당신과 같은 배에 있습니다. 지금까지 약 2주 동안 Python용 JMP를 구성하려고 했습니다. 저는 JMP의 SAS 및 R과 성공적으로 통합했지만 Python 통합은 매우 불분명하고 최소한으로 설명했습니다. JMP 15 얼리 어답터가 이 통합을 수정할 수 있는 개선 사항이 없다는 사실에 실망했습니다. 나도 이거 열심히 따라했는데 우편 그리고 JMP 15에서 수정되어 더 원활하게 통합되기를 바랐습니다.
현재 JMP 14와 Python 3.7.1을 사용하고 있습니다. C:/ 루트 바로 아래에 Python/Anaconda 배포판을 설치하라는 조언을 받았고 이제 한 번 해보겠습니다. 작동하는 경우 작동한 내용에 대한 사전 정보를 제공하고 여기에서 업데이트합니다.