running an existing script

A

Adam Chapman

Hi,

I'm trying to put together a lot of pieces of source code in matlab,
java, perl and python.

Im an expert when it comes to matlab, but novice in all the others
listed above. However, I have integrated the java and perl code so
they can be called from matlab.

I know that there is a toolbox out there called Pymat but i think that
uses 32bit activex so rules my configuration out.

However I think I can hack in to the python command prompt from
matlab.

Basically I just want to run a single script from the python command
window. Once I know how to do that I can be off on my way to perform
the matlab interfacing.

there is an example of the command I need in the python prompt at
http://jboost.sourceforge.net/doc.html#cv .

however, I can't seem to run the python script by typing the command
on that link in the python prompt.

Can I please ask how to set the current duirectory in python?

the script I want to run is in a different directory to the one python
is installed to
 
B

Benjamin Kaplan

Hi,

I'm trying to put together a lot of pieces of source code in matlab,
java, perl and python.

Im an expert when it comes to matlab, but novice in all the others
listed above. However, I have integrated the java and perl code so
they can be called from matlab.

I know that there is a toolbox out there called Pymat but i think that
uses 32bit activex so rules my configuration out.

However I think I can hack in to the python command prompt from
matlab.

Basically I just want to run a single script from the python command
window. Once I know how to do that I can be off on my way to perform
the matlab interfacing.

there is an example of the command I need in the python prompt at
http://jboost.sourceforge.net/doc.html#cv .

however, I can't seem to run the python script by typing the command
on that link in the python prompt.

That command they show isn't run from a Python shell. It's run from
either a Unix shell (bash and friends) or a Windows command prompt
(cmd). If you want to run a script, you have to give the path to that
script. ./ means the current directory and .. is the parent directory
if you want to give relative paths, or you can just write out the
whole file path.
Can I please ask how to set the current duirectory in python?

os.chdir changes the current directory, but you probably don't need to do that.
 
E

Ethan Furman

Adam said:
Hi,
Howdy!

I'm trying to put together a lot of pieces of source code in matlab,
java, perl and python.
[snippety]

Basically I just want to run a single script from the python command
window. Once I know how to do that I can be off on my way to perform
the matlab interfacing.

there is an example of the command I need in the python prompt at
http://jboost.sourceforge.net/doc.html#cv .

That looks like a shell prompt, not a Python prompt
however, I can't seem to run the python script by typing the command
on that link in the python prompt.

Can I please ask how to set the current duirectory in python?

nfold.py is a python script -- you can't just type in the name once
inside python and have it work. It would require something like

--> import os
--> os.chdir('path/to/nfold.py') # don't include nfold.py ;)
--> import nfold
--> import sys
--> sys.argv = ["--folds=5", "--data=spambase.data",
.... "--spec=spambase.spec", "--rounds=500", "--tree=ADD_ALL",
.... "--generate" ]
....
--> nfold.main() # assuming it has a main function that can be called
# in this manner

and that probably won't work. What you probably want to do is execute
the command "python /path/to/nfold.py --fold=5 ..." (include the
nfold.py this time ). I have no idea how to do that from Matlab.

Good luck!

~Ethan~
 
E

Ethan Furman

Adam said:
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~
 
A

Adam Chapman

Adam said:
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
 
A

Adam Chapman

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!

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
 
C

Chris Rebert

On Wed, Jun 22, 2011 at 8:54 AM, Adam Chapman
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.

No, it's a syntax error in the script itself, at least under the
version of Python you're using.
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

You're probably running Python 3.x, which changed `print` from a
keyword to just a regular function; hence, `print foo` is illegal, and
one must write `print(foo)` instead.
Based on this, I'd say that nfold.py was written for Python 2.x rather
than Python 3.x; so you'll either need to port it to Python 3.x, or
install Python 2.x and run it under that.

Cheers,
Chris
 
A

Adam Chapman

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.
 
E

Ethan Furman

Adam said:
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

Looks like you are using Python 3, but nfold is Python 2. You're being
tripped up by one of the non-compatible changes -- namely, print is now
a function and so requires ().

What I dont understand is that some of the parameters in the syntax it
printed back are in <> brackets, and others in [] brackets.

Looking at nfold.py it seems that rounds and tree are optional, one of
generate or dir is required, if dir is not given then data and spec must
be, and booster and folds are required -- so I'm not really sure why
they chose the mixture of <> and [].


Also, on the version of jBoost I downloaded there is at least one error
on nfolds.py on line 134 -- it should be indented one more level.

Hope this helps.

~Ethan~
 
E

Ethan Furman

Adam said:
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~
 
A

Adam Chapman

Adam said:
On Jun 21, 9:12 pm, Adam Chapman <[email protected]>
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...
 
A

Adam Chapman

Adam said:
On Jun 22, 4:54 pm, Adam Chapman <[email protected]>
wrote:
On Jun 21, 9:12 pm, Adam Chapman <[email protected]>
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?

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?
 
E

Ethan Furman

Adam said:
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?

CLASSPATH is an environment variable, jboost.jar is a java file (which
I'm sure you know ;) -- so make sure CLASSPATH is set appropriately for
your system (e.g. 'set CLASSPATH=c:\java\source'), and jboost.jar is
whereever CLASSPATH points to. (I'm not a Java fan, so can't provide
much help in this area.)

~Ethan~
 
A

Adam Chapman

Adam Chapman wrote:
On Jun 22, 4:54 pm, Adam Chapman <[email protected]>
wrote:
On Jun 21, 9:12 pm, Adam Chapman <[email protected]>
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 pythoncommand
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
 
E

Ethan Furman

Adam said:
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


Looking at the batch file I see a line that modifies the CLASSPATH, so
try this before you run nfold.py (cut across two lines, but it's really
just one):
set CLASSPATH=
%CLASSPATH%;../dist/jboost.jar;../lib/jfreechart-1.0.10.jar;../lib/jcommon-1.0.8.jar



Good luck!

~Ethan~
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,767
Messages
2,569,572
Members
45,045
Latest member
DRCM

Latest Threads

Top