2016-12-17 4 views
2

Ich versuchte all.equal(1,2) und es ergab eine mittlere Differenz von 1.Warum all.equal (1,2,3) TRUE zurück

Warum all.equal(1,2,3)TRUE zeigen?

Ist es, weil, wenn es mehr als zwei Variablen geliefert wird es auf seine verschiedenen Elemente is.numeric() läuft ihre Art statt numerische Unterschiede zu überprüfen?

Antwort

6

Da 1 gleich 2 ist innerhalb einer Toleranz von 3. Aus der Dokumentation:

target: R object. 

current: other R object, to be compared with ‘target’. 

    ...: Further arguments for different methods, notably the 
      following two, for numerical comparison: 

tolerance: numeric >= 0. Differences smaller than ‘tolerance’ are not 
      reported. The default value is close to ‘1.5e-8’. 

Ihre 3 ist das dritte Argument, und wird so die Toleranz.

+2

'all.equal (2 + 2, 5, 1)' - Statistiker Witz –

Verwandte Themen