2015-11-21 12 views
5

मेरे पास 2 मीट्रिक हैं और 100*(m1+m2)/m1 जैसे प्रतिशत में उनके बीच औसत मूल्य का अंतर खोजने का प्रयास करें, लेकिन यह NaN का उत्पादन करता है यदि m1 शून्य हो जाता है।Bosun में NaN को कैसे संभालें?

अगर मैट्रिक्स शून्य हो जाए तो मैं इस चेतावनी को कैसे संभालना चाहूंगा?

उत्तर

3

बूल बोसुन के साथ व्यवहार की तरह short-circuit है।

$foo = 0 
$foo && 1/$foo 

के बाद से $ foo शून्य है, बयान "सच नहीं" तो 1/$ foo है: चूंकि Bosun की अभिव्यक्ति भाषा बयान करता है, तो अभाव है, आप अगर भाजक 0 पहले एक bool आपरेशन उपयोग करने के लिए देखने की जरूरत अंतिम गणना में फिक्स्ड नहीं:

enter image description here

+0

धन्यवाद! मेरे लिये कार्य करता है। मैंने कभी उस अर्थ में अभिव्यक्ति संपादक का उपयोग करने का विचार नहीं किया है। वास्तव में नियमों के रूप में कोशिश करने से पहले इसे वास्तव में अभिव्यक्ति के साथ खेलने में मदद करने में मदद करनी चाहिए। – timurb

+0

@timurb: हाँ क्रेग ने कहा कि लगभग एक महीने पहले, वर्कफ़्लो में पहले चर करने के लिए अच्छा –

+0

यदि आप इस दृष्टिकोण का उपयोग करते हैं तो आप 1/$ foo मान खो देते हैं जब $ foo 0: $ foo = 5 $ foo && 1/$ foo परिणाम: 1 (यानी सत्य) यदि आप $ foo = = 0 लेकिन 0 अगर $ foo == 0 अगर 1/$ foo रखना चाहते हैं तो क्या होगा? – andresp

संबंधित मुद्दे