2014-06-11 1 views
2

프로그램 중에 여러 번 polyfit을 계산 중이며 입력 값 중 일부는 np.nan이며 알고리즘 문제가 발생합니다. 나는 이것을 알고 있으며,이 적용에서 나는 상관하지 않는다. 물건 난장판는이 콘솔에 인쇄Numpy/Polyfit - Intel MKL 인쇄를 억제합니다. 오류 메시지

:

Intel MKL ERROR: Parameter 4 was incorrect on entry to DELSD.

은 단순히이 오류를 억제합니다. 이미 시도했습니다 :

import warnings 
warnings.simplefilter('ignore', np.RankWarning) 
warnings.simplefilter('ignore', np.ComplexWarning) 
warnings.filterwarnings('ignore', "Intel MKL ERROR") 

경고는 표시하지만 Intel MKL은 표시하지 않습니다. 나는 단순히 콘솔에서 인쇄하지 않도록하고 싶다. (인쇄중인 다른 상태 메시지가 깨지기 때문에).

다음은 문제를 유발한다 다음

import numpy as np 
def line_fit(R, X): 
    num_rows = np.shape(R)[0] 
    p = np.zeros(num_rows) 
    for i in range(num_rows): 
     temp = np.polyfit(R[i, :], X[i, :], 1) 
     p[i] = temp[1] 
    return p 
temp = np.array((((198.652-76.1781j),(132.614-43.8134j),(115.042-41.2485j),(91.7754-39.1649j),(78.8538-37.389j),(67.8769-34.6342j)), 
((np.nan),(1671.79-796.522j),(1206.44-824.202j),(654.572-682.673j),(438.175-559.025j),(303.624-452.122j)), 
((np.nan-1j*np.nan),(1671.32-794.931j),(1198.71-803.533j),(649.574-624.276j),(443.286-530.36j),(308.609-438.738j)))) 
R = np.real(temp) 
X = np.imag(temp) 
coeff = line_fit(R, X) 

파이썬 2.7.6 (기본 11 월 10 2013 19시 24분 24초) MSC v.1500 64 비트 (AMD64)]를, NumPy와 1.8. 0

+0

http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy에서 MKL 연결 numpy를 사용한다고 가정합니다. – MattDMo

+0

나는 그렇게 생각한다. ('numpy .__ version__'이 단서를 제공하지 않는다는 것을 확인하는 방법이 있는지 모르겠다.) WinPython을 사용하고 있으며, 나는 스스로 컴파일하지 않을 것이다. – schodge

+0

우분투 12.10 파이썬 2.7.3 numpy 1.8.0에서 GCC로 컴파일 된 샘플을 실행했는데 오류가 조금 더 명확 해 보입니다. "ValueError : DLASCL 매개 변수 번호 4에 항목이 잘못되었습니다."- 희망 사항 당신을 도울 수 있습니다. – Louis

답변

2

함수가 정상적인 파이썬 오류보고 메커니즘 (예 : 예외 처리 및 경고)을 사용하지 않고 stdout/stderr에 직접 오류 메시지를 인쇄하기로 결정한 경우 그렇게하지 못하도록 할 수있는 방법은 거의 없습니다. 그것이 정말로 당신을 괴롭 히면, 분명히 stderr에게 글쓰기를 모두 억제 할 수 있습니다. 일시적으로 (예 :이 기능 만) 수행하는 방법에 대한 다른 SO 질문에 대한 해결책이 있습니다 : Suppress stdout/stderr print from Python functions. 분명히 이것을한다면,이 함수의 모든 관련 출력도 놓칠 것이므로주의해서 사용해야합니다. 당신이 당신의 입력에 할머니 또는 Inf를 값을 가질 때

+0

나는 운을하지 않고 다른 의문에서 제기 된 해결책을 시도했다. 나는 여전히 오류가 발생합니다. –

1

오류

Intel MKL ERROR: Parameter 4 was incorrect on entry to DELSD

가 발생합니다. 확인하고 그것을 대신하십시오.

관련 문제