it looks like a very small mistake. You call the enableDefaultReport() function to port the report information to your report file before you call the Report.clear() function. Try swapping those calls...
from pci.mlr import mlr from pci.nspio import Report, enableDefaultReport rep = 'my_rep.txt' Report.clear() enableDefaultReport(your_report) for ls in landsat: for pix in ls: mlr(file=pix, dbic=, dbsa=, dbs1=range(2, 6+ 1), matrix='yes') enableDefaultReport('term')
Just a few notes, you can use keywords to pass arguments to Geomatica functions and therefore you do not need to define every argument (just forget about the default args :)). Also, with the way you setup your code, it will write the report information to the same report file for all images in your ls list and append the results to EOF.