numpy
과학 응용 프로그램의 경우 Python 패키지 , scipy
및 의 특정 버전을 사용해야 합니다 brian2
. 랩톱에 올바른 버전을 설치하고 다음과 같이 테스트 제품군을 실행했습니다.
>>> import numpy as np
>>> import scipy
>>> import brian2
>>> np.test()
>>> scipy.test()
>>> brian2.test()
모든 테스트가 통과되었습니다.
이제 저는 제 연구실의 컴퓨팅 클러스터에서 동일한 작업을 수행하고 싶습니다. 올바른 버전을 모두 다시 설치했습니다. 그러나 이 새로운 환경에서는 numpy
및 brian2
테스트만 통과합니다. 의 경우 scipy
단일 테스트가 실패합니다.
======================================================================
FAIL: test_decomp_update.TestQRdelete_f.test_delete_last_p_col
----------------------------------------------------------------------
Traceback (most recent call last): File
"/usr/local/anaconda/lib/python2.7/site-packages/nose/case.py", line
197, in runTest
self.test(*self.arg) File "/home/despo/dbliss/lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.py",
line 328, in test_delete_last_p_col
assert_unitary(q1) File "/home/despo/dbliss/lib/python2.7/site-packages/scipy/linalg/tests/test_decomp_update.py",
line 21, in assert_unitary
assert_allclose(aTa, np.eye(a.shape[1]), rtol=rtol, atol=atol) File
"/home/despo/dbliss/.local/lib/python2.7/site-packages/numpy/testing/utils.py",
line 1297, in assert_allclose
verbose=verbose, header=header) File "/home/despo/dbliss/.local/lib/python2.7/site-packages/numpy/testing/utils.py",
line 665, in assert_array_compare
raise AssertionError(msg) AssertionError: Not equal to tolerance rtol=0.0001, atol=2.38419e-07
(mismatch 100.0%) x: array([[ 9.999999e-01, 1.746230e-08,
-1.490116e-08, 1.490116e-08,
-6.146729e-08, -6.332994e-08, 3.352761e-08, 7.450581e-08,
3.352761e-08, 2.142042e-08, -4.097819e-08, 4.656613e-08],... y: array([[ 1., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
[ 0., 1., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.],
[ 0., 0., 1., 0., 0., 0., 0., 0., 0., 0., 0., 0.],...
----------------------------------------------------------------------
Ran 18599 tests in 253.381s
FAILED (KNOWNFAIL=97, SKIP=1165, failures=1)
내 컴퓨팅 클러스터와 노트북 사이의 유일한 관련 차이점은 실행 중인 Python 버전인 것 같습니다. 내 노트북에는 버전 2.7.6이 있고 클러스터에는 2.7.10이 있습니다.
제 질문은 어떻게 버전 2.7.6을 클러스터에 로컬로(즉, 내 계정에 로컬로) 설치한 다음 IPython을 열 때 해당 버전을 사용할 수 있느냐는 것입니다.
답변1
귀하의 질문에 대한 직접적인 답변: 여기에 설명된 대로 virtualenv를 사용하십시오.https://stackoverflow.com/questions/5506110/is-it-possible-to-install-another-version-of-python-to-virtualenv
그러나 numpy, scipy 및 brian2는 Python 버전뿐만 아니라 시스템의 다른 많은 비트에 의존하고 해당 비트도 다르기 때문에 결론이 틀렸을 수 있습니다.
당신이 해야 할 일은 아나콘다 파이썬 배포판과 함께 제공되는 numpy와 scipy를 사용하는 것입니다. 아마도 테스트를 거쳤을 것입니다. brian2는 포함되어 있지 않습니다. 그건 직접 테스트해 보아야 할 것입니다.