2016-10-20 8 views
2

나는이 곡선에 내 데이터에 맞게하려고 해요 :GNUplot을 사용하여보다 우수한 지수 적합성을 얻으려면 어떻게해야합니까?

image of bad automatic fit

가 그럼 난 이론 및없이 초기 매개 변수를 사용

f(x) = b + n*exp(-x/u) 
fit f(x) "data1" using 2:3 via b,n,u 

나는 이론에 가까운되지 않습니다 적합을 얻을 피팅을 다시 계산하면 훨씬 좋은 결과를 얻을 수 있습니다.

적합도를 다시 계산하면 첫 번째 반복 이후 처음 매개 변수가 무시되고 첫 번째 결과로 돌아갑니다.

나는 두 가지 시도를한다. 나는 FIT_LIMIT를 20 배 정도 줄이지 만, 아무 것도 변하지 않습니다. 또한 데이터를 오류로 바이어스하여 처음 몇 데이터 포인트에 더 많은 가중치를 부여한 다음 약간 더 나은 결과를 얻지 만 여전히 나쁘다.

image of output of values

질문 : 그것은 문제가 수학적 또는 GNUPLOT 여부를 그냥 로컬 중지하여 잘못된 일을하고 있는지 여부를 나에게 분명하지 않다

  1. 는 출력 최소 또는 약간의 한계 또는 그런 물건을 치는 것. 나는 카이 제곱 적합성이 어떻게 작용하는지 모두 잊었다.

  2. 내 데이터에 오류를 포함하기로 결정하기 전에 자동으로 더 잘 맞는 방법이 있습니까?

답변

3

두 아이디어 :

  1. 당신은 주위 데이터 포인트 유물처럼 아마 당신의 적합에 영향을주는 (0,0)의 상당한 수를 갖고있는 것 같다.

  2. 은 큰 값이 적합을 지배하는 경우이 트릭은 일반적으로 작동

    f(x) = b + n*exp(-x/u) 
    fit log(f(x)) "data1" using 2:(log($3)) via b,n,u 
    

    :, 즉를 대수 영역에서 피팅 시도 - 피팅 곡선에서 자신의 편차가 로그 영역에서 적은 무게로. 아직 실용적이지는 않지만 1 점을 주소 지정 한 후에도 나타날 수 있습니다.

2

적합도가 나쁜 것으로 추정하는 근거는 무엇입니까? 당신은 당신의 시각적이고 주관적인 인상 이상을 필요로합니다.

는 여기에 귀하의 가정 기능의 :

y = b + n*exp(-x/u) 

이 기능 피팅보십시오 :

ln(z) = ln(n*exp(-x/u)) = ln(n) - x/u 

이 단순 선형 회귀와는 다음과 같습니다 양쪽의 자연 로그를 촬영

z = y-b = n*exp(-x/u) 

을 종속 변수 x, 독립 변수 ln(z), 절편 ln(n) 및 기울기 -1/u.

문제는 데이터가 x = 0에서 점근 적으로 나타나는 것입니다. 이는 내게 1/x 형식의 기능을 제안합니다. 어쩌면 가난한 사람들이 기능의 선택과 관련이 있을지도 모릅니다.

당신은 "이론"이라고 말했습니다. 데이터가 나타내는 현상은 무엇입니까?

+0

고마워요! 실제로 셋업의 나머지 부분을 시작하기 전에 카운터를 돌리는 것은 유물이었습니다! 나는 그것을 완전히 놓쳤다. – PeterD

+0

Wrzlprmft의 답변을 받아 들였어야합니다. – duffymo