| | |
Problem with Deviation function
![]() |
•
•
Join Date: Sep 2005
Posts: 2
Reputation:
Solved Threads: 0
Hello,
I'm very new to python script and I am attempting to understand a part of a program developed at my work place because the have the most computer knowledge here, though still very little and the person who developed the program is no longer accesible. Here's the problem i'm attempting to solve:
I have a .txt file that I believe is converted to an array by a comma delinated string. there is then a tab delinated string of the first four terms as floats. the program is supposed to compare the values in the array to desired values given by the program and find a value closest to the desired value given in the array based on a user inputed allowed percentage deviation. The program is working properly, however, rather than pulling the closest value to the given desired value from the array it is pulling something else that I am assuming is one of three things.
a. it's pulling the first value that it finds in the interval
b. it's pulling all the values in the interval and then averaging the value
c. it's pulling the first in the interval, the last, and finding the midpoint
what i would like it to do is either find the the exact integer in the deviation that is closest to the given, or pull the highest value in the range, either would work, it's just whichever is easiest.
so here's what the code looks like: (I think this is where the program is sorting this list)
i could not find the value for "ideal" anywhere in the program, and perhaps that is the very problem.
D=[abs(ref[i]-read[0][2]),abs(ref[i]-read[1][2]),abs(ref[i]-read[2][2])]
ref[i] is the matrix of ideal values chosen by the user
read=[split_s(current.readline()),split_s(current.readline()),split_s(current.readline())]
dev=the allowed deviation percentage entered in float form by user.
I greatly appreciate any help that could be provided!
Thank you,
Michael Morris
Edit: code tags added by vegaseat 09/30/05
I'm very new to python script and I am attempting to understand a part of a program developed at my work place because the have the most computer knowledge here, though still very little and the person who developed the program is no longer accesible. Here's the problem i'm attempting to solve:
I have a .txt file that I believe is converted to an array by a comma delinated string. there is then a tab delinated string of the first four terms as floats. the program is supposed to compare the values in the array to desired values given by the program and find a value closest to the desired value given in the array based on a user inputed allowed percentage deviation. The program is working properly, however, rather than pulling the closest value to the given desired value from the array it is pulling something else that I am assuming is one of three things.
a. it's pulling the first value that it finds in the interval
b. it's pulling all the values in the interval and then averaging the value
c. it's pulling the first in the interval, the last, and finding the midpoint
what i would like it to do is either find the the exact integer in the deviation that is closest to the given, or pull the highest value in the range, either would work, it's just whichever is easiest.
so here's what the code looks like: (I think this is where the program is sorting this list)
i could not find the value for "ideal" anywhere in the program, and perhaps that is the very problem.
D=[abs(ref[i]-read[0][2]),abs(ref[i]-read[1][2]),abs(ref[i]-read[2][2])]
ref[i] is the matrix of ideal values chosen by the user
read=[split_s(current.readline()),split_s(current.readline()),split_s(current.readline())]
dev=the allowed deviation percentage entered in float form by user.
Python Syntax (Toggle Plain Text)
def sort(ideal,D,dev): if D[0] > D[1]: if D[1] > D[2]: if D[2] < ideal*dev: return 2 else: return -1 else: if D[1] < ideal*dev: return 1 else: return -1 else: if D[0] < D[2]: if D[0] < ideal*dev: return 0 else: return -1 else: if D[2] < ideal*dev: return 2 else: return -1
Thank you,
Michael Morris
Edit: code tags added by vegaseat 09/30/05
•
•
Join Date: Sep 2005
Posts: 2
Reputation:
Solved Threads: 0
ok, so I tried assigning a value "ideal=ref[i]", but that didn't fix the problem, though I suppose that it could have been one of the problems anyways. I did a little test I i think i've narrowed down the problem to the program only looking for values close to the ideal value that exceed the ideal value, but not potential values that preceed the ideal.
in short, the program looks for the ideal and if it can't find it then it looks for the next best value past it. this is bad because sometimes the best value is actually the before the ideal.
does that help my case at all? ^_^
in short, the program looks for the ideal and if it can't find it then it looks for the next best value past it. this is bad because sometimes the best value is actually the before the ideal.
does that help my case at all? ^_^
Please put your Python code between code tags
[ code]your code here[/code]
Removed the space between [ and c for this to work!
Python needs the proper indentation and with the amount of if and else groupings you have, it is almost impossible to figure out what belongs to what!
[ code]your code here[/code]
Removed the space between [ and c for this to work!
Python needs the proper indentation and with the amount of if and else groupings you have, it is almost impossible to figure out what belongs to what!
May 'the Google' be with you!
![]() |
Similar Threads
- factoring function for large numbers (C++)
- problem with system() function... (C++)
- "Save Target As.." isn't working in IE6 (Web Browsers)
- Problem in displaying returned value from function (C#)
- Function[Array] in combination with cin>> (C++)
- Stuck on Mail() Function (PHP)
Other Threads in the Python Forum
- Previous Thread: duplicate entry through web form into oracle
- Next Thread: File Handling with Python
| Thread Tools | Search this Thread |
alarm app beginner cipher cmd coordinates cx-freeze data decimals development dictionary directory dynamic error examples feet file float format function generator getvalue gui halp homework http images import input ip itunes java keycontrol leftmouse line linux list lists loop maintain maze millimeter module mouse mysqldb number numbers output parsing path port prime programming projects push py2exe pygame pyglet pymailer pyqt python queue random recursion schedule screensaverloopinactive script scrolledtext slicenotation split sqlite ssh string strings sudokusolver terminal text thread threading time tlapse tooltip tuple tutorial ubuntu unicode url urllib urllib2 variable variables ventrilo verify vigenere web webservice wikipedia wx.wizard wxpython xlwt






