running an existing script

Adam Chapman adamchapman1985 at hotmail.co.uk
Wed Jun 22 13:54:50 EDT 2011


On Jun 22, 6:13 pm, Adam Chapman <adamchapman1... at hotmail.co.uk>
wrote:
> On Jun 22, 5:51 pm, Adam Chapman <adamchapman1... at hotmail.co.uk>
> wrote:
>
>
>
>
>
>
>
>
>
> > On Jun 22, 5:51 pm, Ethan Furman <et... at stoneleaf.us> wrote:
>
> > > Adam Chapman wrote:
> > > > On Jun 22, 4:54 pm, Adam Chapman <adamchapman1... at hotmail.co.uk>
> > > > wrote:
> > > >> On Jun 21, 9:12 pm, Adam Chapman <adamchapman1... at hotmail.co.uk>
> > > >> wrote:
>
> > > >>> On Jun 21, 8:00 pm, Ethan Furman <et... at stoneleaf.us> wrote:
> > > >>>> Adam Chapman wrote:
> > > >>>>> Thanks Ethan
> > > >>>>> No way could I have worked that out in my state of stress!
> > > >>>>> For your second idea, would I need to type that into the python command
> > > >>>>> line interface (the one that looks like a DOS window?
> > > >>>> If you are actually in a python CLI, at the top of that screen does it
> > > >>>> say something like
> > > >>>> Python 2.5.4 (r254:67916, Dec 23 2008, 15:10:54) [MSC v.1310 32 bit
> > > >>>> (Intel)] on win32
> > > >>>> Type "help", "copyright", "credits" or "license" for more information.
> > > >>>> ?
> > > >>>> If yes, then what I wrote earlier should actually work (I downloaded
> > > >>>> jBoost and looked at the nfold.py script).  Here it is again:
> > > >>>> --> import os
> > > >>>> --> os.chdir('path/to/nfold.py') # don't include nfold.py  ;)
> > > >>>> --> import nfold
> > > >>>> --> import sys
> > > >>>> --> sys.argv = ["nfold.py", "--folds=5", "--data=spambase.data",
> > > >>>> ... "--spec=spambase.spec", "--rounds=500", "--tree=ADD_ALL",
> > > >>>> ... "--generate" ]
> > > >>>> ...
> > > >>>> --> nfold.main()
> > > >>>> I fixed the sys.argv line from last time.
> > > >>>> Good luck!
> > > >>>> ~Ethan~
> > > >>> Thanks to both of you for your help.
> > > >>> It's getting late here, I'll give it another try tomorrow
> > > >> I've added the python directories to the environment variable "path"
> > > >> in my computer (http://showmedo.com/videotutorials/video?
> > > >> name=960000&fromSeriesID=96), which means I can now call python from
> > > >> the windows DOS-style command prompt.
>
> > > >> My formatting must be wrong when calling the nfold.py script to run.
> > > >> My connad prompt call and the computer's response look like this:
>
> > > >> C:\Users\Adam\Desktop\JBOOST\jboost-2.2\jboost-2.2\scripts>nfold.py
> > > >> nfold.py
> > > >>   File "C:\Users\Adam\Desktop\JBOOST\jboost-2.2\jboost-2.2\scripts
> > > >> \nfold.py", line 13
> > > >>     print 'Usage: nfold.py <--booster=boosttype> <--folds=number> [--
> > > >> generate | --dir=dir] [--data=file --spec=file] [--rounds=number --
> > > >> tree=treetype]'
>
> > > >> ^
> > > >> SyntaxError: invalid syntax
>
> > > >> What I dont understand is that some of the parameters in the syntax it
> > > >> printed back are in <> brackets, and others in [] brackets.
>
> > > >> I assume this is something a regular python user could notice straight
> > > >> away.
>
> > > >> Please let me know, I'd be very grateful
>
> > > > I just tried
>
> > > > nfold.py --booster=Adaboost --folds=5 --data=spambase.data --
> > > > spec=spambase.spec --rounds=500 --tree=ADD_ALL --generate --dir=C:
> > > > \Users\Adam\Desktop\cvdata
>
> > > > in the dos-style command prompt. It didn'g vive a syntax error this
> > > > time, it just repeated my command back to me in text. I assume I
> > > > called code correctly, but it didn't make a new folder full of data
> > > > like it should have.
>
> > > Which version of jBoost, and which version of Python?
>
> > > ~Ethan~
>
> > jboost 2.2, python 2.7
>
> > somehow I've just managed to delete all of the code in nfold.py, now
> > downloading it again...
>
> Thanks a lot, must be getting close now...
> I changed the indentation one lines 136-168, and put in the command
> window:
>
> nfold.py --booster=Adaboost --folds=5 --data=spambase.data --
> spec=spambase.spec --rounds=500 --tree=ADD_ALL --generate
>
> no syntax errors this time, it just said:
> nfold.py: Your CLASSPATH is not set. You must place jboost.jar in your
> CLASSPATH.
>
> is that the chdir() command in python? and can I somehow set that in
> the dos command window?

Thanks again Ethan, It did begin to run nfold.py this time, after I
added the environment variable "CLASSPATH" to my system. It threw back
a java error, but I guess this isn;t the right place to be asking
about that

C:\Users\Adam\Desktop\JBOOST\jboost-2.2\jboost-2.2\scripts>nfold.py --
booster=Adaboost --folds=5 --data=spambase.data --spec=spambase.spec --
rounds=500 --tree=ADD_ALL --generate
nfold.py --booster=Adaboost --folds=5 --data=spambase.data --
spec=spambase.spec --rounds=500 --tree=ADD_ALL --generate
java.lang.NoClassDefFoundError: jboost/controller/Controller
Caused by: java.lang.ClassNotFoundException:
jboost.controller.Controller
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: jboost.controller.Controller.  Program
will exit.
Exception in thread "main" k: 0 start:0 end:920
k: 1 start:920 end:1840
k: 2 start:1840 end:2760
k: 3 start:2760 end:3680
k: 4 start:3680 end:4600
*=---------------------------------------------------------------------
=-*
* Fold 0     |
*============
java -Xmx1000M -cp C:\Users\Adam\\Desktop\JBOOST
\jboost-2.2\jboost-2.2\dist jboost.controller.Controller -b Adaboost -
p 3 -a -1 -S trial0 -n trial.spec -ATreeType ADD_ALL -numRounds 500




More information about the Python-list mailing list