2014-12-11 2 views
0

일부 NaN을 포함하는 목록의 평균값을 얻는 방법을 알고 싶습니다. 사용 :파이썬에서 NaN을 포함하는 목록의 평균값을 구하십시오.

np.mean(mylist) 

예상대로 결과가 잘못된 NaN을 제공합니다. 평균을 얻으려면 어떻게해야합니까?

+2

아니, 완벽하게 맞습니다. 10, 99, 1.56, Fish 및 20의 평균은 얼마입니까? 아무 대답도 없다, 그것은 비 감각적 인 질문이다. – Crisfole

+0

@ gelazari Christopher가 맞습니다. 그것은 당신이 어떤 방법을 모르는 것이 아니라 NaN 결과가 잘못되었다는 주장에 관한 것입니다. 피연산자 중 하나 인 NaN을 갖는 표준 산술 연산은 항상 NaN이됩니다. 따라서 평균이있는 경우 (즉, 모든 것을 합산하고 사물의 수로 나누면) NaN이됩니다. – zegkljan

+0

나는 numpy를 사용하지 않는다. 그것은 완전히 개인적인 것이 아니었다. 그렇게되면 미안해. 나는 왜'평균'이 당신에게 그 결과를 주 었는지 설명하고 있었다. 인터넷은 때로는 의미있는 장소이지만, 그런 식으로하려고하는 사람들의 목록에서 벗어날 수 있습니다. – Crisfole

답변

4

사용 np.nanmean는 NaN을 무시하기 : 예를 들어

np.nanmean(mylist) 

,

In [108]: np.nanmean([np.nan, 1, 2, np.nan, 3]) 
Out[108]: 2.0 
+0

감사합니다. 내가 허락하자 마자 당신의 대답을 받아 들일 것입니다. :) – gelazari

관련 문제