Ich möchte das folgende Integral in R berechnen:Nicht endlicher Funktionswert mit integrieren() R obwohl Lösung existiert
print(integrate(function(x){((1.-x)^2)/(abs(1.-x))^(1/3)},lower = 0, upper = 1.6, abs.tol = 1E-7)$value)
Und ich bekomme diese Fehlermeldung:
Error in integrate(function(x) { : non-finite function value
Wenn jedoch Ich integriere bis zu 1.600001 oder 1.599999, es funktioniert und ergibt 0.4710365 und 0.4710357.
Aber es ist nichts Besonderes mit dieser Funktion an dem Punkt 1.6 ... So sollte es einige seltsame numerische Problem in R.
Irgendwelche Ideen sein?
Schöne Lösung. Aber Sie können alles, was Sie mögen, für das dritte Argument von "ifelse" verwenden. Versuchen Sie z.B. '10.99' anstelle von' 0'. – Bhas
@Bhas, das stimmt, aber 0 ist die einzige richtige Grenze bei 1 für diese Funktion ;-) Außerdem kann das Einstecken von 10.99 zu falschen Ergebnissen führen, wenn 'integrate' aufgerufen wird. – DeeCeeDelux