<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands in Data Management Questions</title>
    <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176054#M9939</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I see. Thanks for showing your organization. Each set of scenes corresponds to a particular flight path. My organization was a little different in that I had folders populated with multiple scenes as opposed to each scene being in a folder. for example: &lt;IMG alt="practice.jpg" class="image-1 jive-image" src="https://community.esri.com/legacyfs/online/85564_practice.jpg" style="width: 620px; height: 220px;" /&gt;&lt;/P&gt;&lt;P&gt;This is the case for multiple folders in a main directory:&lt;/P&gt;&lt;P&gt;&lt;IMG alt="practice1.jpg" class="image-2 jive-image" src="https://community.esri.com/legacyfs/online/85572_practice1.jpg" style="height: auto;" /&gt;&lt;/P&gt;&lt;P&gt;I could simply write a code that IDs each image number, places all three images to an individual folder, and then run the composite but I'd rather be able to simply specify the main directory where each point folder is located and have the composites produced for every scene in each folder. Not sure if my description makes sense but I will continue to test it out this afternoon and post something if I get it working. Any suggestions?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Apr 2015 19:15:58 GMT</pubDate>
    <dc:creator>CaseyCalamaio</dc:creator>
    <dc:date>2015-04-15T19:15:58Z</dc:date>
    <item>
      <title>Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176046#M9931</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="margin-bottom: 1em; color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; background-color: rgba(248, 248, 248, 0.6);"&gt;I have a large collection of single-band geotiffs (NIR, Green, and Red) that I would like to composite using a Python script. The goal is to iterate through multiple folders in a main directory, identify each tiff as band1, band2, band3 to input into CompositeBands_management, and do this for every raster scene. To clarify, each image number, i.e. scene, has three single-band tiffs associated. For example, the naming convention is: TTC2500_Green_Channel_8.TIF where TTC2500 is the image number.&lt;/P&gt;&lt;P style="margin-bottom: 1em; color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; background-color: rgba(248, 248, 248, 0.6);"&gt;So far, my script can go through each folder and identify the specific bands based on the filename but I am having difficulty bringing them into the tool. The attached script has the Composite tool commented out but the result is a printed list of each geotiff. Any thoughts on how to move from here into an automated processing method to output new false color composite geotiffs?&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import arcpy
import os
from arcpy.sa import *
from arcpy import env


env.workspace=(r"C:\Users\cc\Desktop\tcamPractice\point1_tif")
env.overwriteOutput = True


outws=(r"C:\Users\cc\Desktop\tcamPractice\false")
for root, dirs, files in os.walk(r"C:\Users\cc\Desktop\tcamPractice\point1_tif"):
&amp;nbsp;&amp;nbsp;&amp;nbsp; for raster in files:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rasterlist=arcpy.ListRasters("*", "TIF")
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outraster=outws+"comp.tif"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if raster.find("Green")&amp;gt;0:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; band1=raster
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print band1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif raster.find("Red")&amp;gt;0:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; band2=raster
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print band2
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif raster.find("Nir")&amp;gt;0:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; band3=raster
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print band3
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.CompositeBands_management(raster, outraster)



&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 09:04:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176046#M9931</guid>
      <dc:creator>CaseyCalamaio</dc:creator>
      <dc:date>2021-12-11T09:04:38Z</dc:date>
    </item>
    <item>
      <title>Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176047#M9932</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Casey,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You could use something along the lines of the below code:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import arcpy
from arcpy import env
env.overwriteOutput = 1

workspace = r"C:\temp\python\UserData"

walk = arcpy.da.Walk(workspace, datatype="RasterDataset", type="TIF")
for dirpath, dirnames, filenames in walk:
&amp;nbsp;&amp;nbsp;&amp;nbsp; env.workspace = dirpath
&amp;nbsp;&amp;nbsp;&amp;nbsp; green = ''
&amp;nbsp;&amp;nbsp;&amp;nbsp; red = ''
&amp;nbsp;&amp;nbsp;&amp;nbsp; nir = ''
&amp;nbsp;&amp;nbsp;&amp;nbsp; for raster in filenames:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if "green" in raster.lower():
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; green = env.workspace + "\\" + raster
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif "red" in raster.lower():
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; red = env.workspace + "\\" + raster
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif "nir" in raster.lower():
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nir = env.workspace + "\\" + raster
&amp;nbsp;&amp;nbsp;&amp;nbsp; if green != '' and red != '' and nir != '':
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; compBands = '"' + nir + ';' + green + ';' + red + ';"'
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outputRaster = env.workspace + "\\comp.tif"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.CompositeBands_management(compBands, outputRaster)&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 09:04:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176047#M9932</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2021-12-11T09:04:41Z</dc:date>
    </item>
    <item>
      <title>Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176048#M9933</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Jake. This allows me to specify the tiffs to be used as either Nir, red, or green band in the CompositeBands tool. Defining those input objects will help with inputs for other tools too. My next goal is to modify this code to iterate through all images in the directory and create a unique composite band for each scene. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there a way to manipulate image number from the filename and append it to each composite image? For example, the Nir, red, and green image from TTC2500_Nir_Channel_8.TIF to comp_2500.TIF, where 2500 is the image number? &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Apr 2015 15:34:37 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176048#M9933</guid>
      <dc:creator>CaseyCalamaio</dc:creator>
      <dc:date>2015-04-15T15:34:37Z</dc:date>
    </item>
    <item>
      <title>Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176049#M9934</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Do all of the TIFFs follow the same naming convention, i.e. three characters followed by the image number?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Apr 2015 15:44:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176049#M9934</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2015-04-15T15:44:41Z</dc:date>
    </item>
    <item>
      <title>Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176050#M9935</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;That's right. For example:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif;"&gt;TTC2500_Nir_Channel_8., &lt;SPAN style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif;"&gt;TTC2500_Red_Channel_8.TIF, &lt;SPAN style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif;"&gt;TTC2500_Green_Channel_8.TIF&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif;"&gt;TTC2501_Nir_Channel_8.TIF, &lt;SPAN style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif;"&gt;TTC2501_Red_Channel_8.TIF, &lt;SPAN style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif;"&gt;TTC2501_Green_Channel_8.TIF&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif;"&gt;&lt;SPAN style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif;"&gt;TTC2502_Nir_Channel_8.TIF, &lt;/SPAN&gt;&lt;SPAN style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif;"&gt;TTC2502_Red_Channel_8.TIF, &lt;SPAN style="font-family: arial, helvetica, 'helvetica neue', verdana, sans-serif;"&gt;TTC2502_Green_Channel_8.TIF&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Apr 2015 15:52:40 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176050#M9935</guid>
      <dc:creator>CaseyCalamaio</dc:creator>
      <dc:date>2015-04-15T15:52:40Z</dc:date>
    </item>
    <item>
      <title>Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176051#M9936</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can update a couple lines of code.&amp;nbsp; Try the following:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;if green != '' and red != '' and nir != '':
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; compBands = '"' + nir + ';' + green + ';' + red + ';"'
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; compRasterName = "comp_" + raster.split("_")[0][3:] + ".tif"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outputRaster = env.workspace + "\\" + compRasterName
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.CompositeBands_management(compBands, outputRaster)&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 09:04:44 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176051#M9936</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2021-12-11T09:04:44Z</dc:date>
    </item>
    <item>
      <title>Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176052#M9937</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Excellent, renaming the output works like a charm. I can see where this coding technique to can be frequently used in Arc tools. I am still having a problem with the iteration. After running the script there is only one resulting composite image. It appears to iterate through all of the images because the result is named for the last image in the list. Would a save or copy raster tool help in this case to output each composite or would&amp;nbsp; an additional loop be necessary? Thanks by the way for you help!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Apr 2015 17:33:39 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176052#M9937</guid>
      <dc:creator>CaseyCalamaio</dc:creator>
      <dc:date>2015-04-15T17:33:39Z</dc:date>
    </item>
    <item>
      <title>Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176053#M9938</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I could not reproduce this.&amp;nbsp; Here is how I have my data structured for testing.&amp;nbsp; You will see the composite TIFFs created correctly in each directory after the script is executed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;IMG alt="" class="image-1 jive-image" src="https://community.esri.com/legacyfs/online/85560_pastedImage_0.png" style="max-width: 1200px; max-height: 900px;" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Apr 2015 18:49:44 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176053#M9938</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2015-04-15T18:49:44Z</dc:date>
    </item>
    <item>
      <title>Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176054#M9939</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I see. Thanks for showing your organization. Each set of scenes corresponds to a particular flight path. My organization was a little different in that I had folders populated with multiple scenes as opposed to each scene being in a folder. for example: &lt;IMG alt="practice.jpg" class="image-1 jive-image" src="https://community.esri.com/legacyfs/online/85564_practice.jpg" style="width: 620px; height: 220px;" /&gt;&lt;/P&gt;&lt;P&gt;This is the case for multiple folders in a main directory:&lt;/P&gt;&lt;P&gt;&lt;IMG alt="practice1.jpg" class="image-2 jive-image" src="https://community.esri.com/legacyfs/online/85572_practice1.jpg" style="height: auto;" /&gt;&lt;/P&gt;&lt;P&gt;I could simply write a code that IDs each image number, places all three images to an individual folder, and then run the composite but I'd rather be able to simply specify the main directory where each point folder is located and have the composites produced for every scene in each folder. Not sure if my description makes sense but I will continue to test it out this afternoon and post something if I get it working. Any suggestions?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Apr 2015 19:15:58 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176054#M9939</guid>
      <dc:creator>CaseyCalamaio</dc:creator>
      <dc:date>2015-04-15T19:15:58Z</dc:date>
    </item>
    <item>
      <title>Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176055#M9940</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The below should work.&amp;nbsp; You can create a list of all the flights, i.e. TCC2500.&amp;nbsp; Then, remove the duplicates from this list.&amp;nbsp; Next, you can iterate through this list and create the composite based on the flight. &lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import arcpy
from arcpy import env
env.overwriteOutput = 1

workspace = r"C:\temp\python\UserData"

#create list
list = []

#populate list with flight, i.e. TTC2500
walk = arcpy.da.Walk(workspace, datatype="RasterDataset", type="TIF")
for dirpath, dirnames, filenames in walk:
&amp;nbsp;&amp;nbsp;&amp;nbsp; for raster in filenames:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; list.append(raster.split("_")[0])

#remove duplicates from list
list = dict.fromkeys(list)
list = list.keys()

for n in list:
&amp;nbsp;&amp;nbsp;&amp;nbsp; walk = arcpy.da.Walk(workspace, datatype="RasterDataset", type="TIF")
&amp;nbsp;&amp;nbsp;&amp;nbsp; for dirpath, dirnames, filenames in walk:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; env.workspace = dirpath
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for raster in filenames:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if n + "_Green" in raster:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; green = env.workspace + "\\" + raster
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif n + "_Red" in raster:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; red = env.workspace + "\\" + raster
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif n + "_Nir" in raster:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nir = env.workspace + "\\" + raster
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if green != '' and red != '' and nir != '':
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; compBands = '"' + nir + ';' + green + ';' + red + ';"'
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; compRasterName = "comp_" + str(n[3:]) + ".tif"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outputRaster = env.workspace + "\\" + compRasterName
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.CompositeBands_management(compBands, outputRaster)&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 09:04:47 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176055#M9940</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2021-12-11T09:04:47Z</dc:date>
    </item>
    <item>
      <title>Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176056#M9941</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jake, thanks for your help. Below is the script that iterates through all of the folders and rasters in a main directory, defines each single band TIF as the respective Nir, Red, and Green band for the CompositeBand tool, and finally outputs a false color composite for each scene, i.e. flight number. Some slight modifications to your suggestion but it works great! I have a few more organizational things to do, namely to save the composites from each flight path to a unique folder but I think I can handle that. Some of the techniques you've shown me will help in the future as I continue to learn Python georpocessing. I'm going to add to this script today a second tool that compiles an NDVI from the same datasets. Out of curiosity, is it generally more efficient to simply use raster objects and Python math operators as opposed to using the RasterCalculator tool from arcpy? Thanks again for you help!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import arcpy&amp;nbsp; 
from arcpy import env&amp;nbsp; 
env.overwriteOutput = 1&amp;nbsp; 
&amp;nbsp; 
workspace = r"C:\Users\\Desktop\tcamPractice"&amp;nbsp; 
&amp;nbsp; 
#create list&amp;nbsp; 
list = []&amp;nbsp; 
&amp;nbsp; 
#populate list with flight, i.e. TTC2500&amp;nbsp; 
walk = arcpy.da.Walk(workspace, datatype="RasterDataset", type="TIF")&amp;nbsp; 
for dirpath, dirnames, filenames in walk:&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; for raster in filenames:&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; list.append(raster.split("_")[0])&amp;nbsp; 
&amp;nbsp; 
#remove duplicates from list&amp;nbsp; 
list = dict.fromkeys(list)&amp;nbsp; 
list = list.keys()&amp;nbsp; 
&amp;nbsp; 
for n in list:&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; walk = arcpy.da.Walk(workspace, datatype="RasterDataset", type="TIF")&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; for dirpath, dirnames, filenames in walk:&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; env.workspace = dirpath
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outws=r"C:\Users\\Desktop\falseColors"
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for raster in filenames:&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if n + "_Green" in raster:&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; green = env.workspace + "\\" + raster&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif n + "_Red" in raster:&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; red = env.workspace + "\\" + raster&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif n + "_Nir" in raster:&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nir = env.workspace + "\\" + raster&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; if green != '' and red != '' and nir != '':&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; compBands = '"' + nir + ';' + red + ';' + green + ';"'&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; compRasterName = "comp_" + str(n[3:]) + ".tif"&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; outputRaster = outws + "\\" + compRasterName&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.CompositeBands_management(compBands, outputRaster) &lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 09:04:50 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176056#M9941</guid>
      <dc:creator>CaseyCalamaio</dc:creator>
      <dc:date>2021-12-11T09:04:50Z</dc:date>
    </item>
    <item>
      <title>Re: Python Script to iterate numerous, single-band rasters for arcpy.CompositeBands</title>
      <link>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176057#M9942</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I won't be able to comment about the raster objects vs raster calculator as I don't have much experience in this area.&amp;nbsp; You may want to start a new thread about that discussion.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 Apr 2015 15:40:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/data-management-questions/python-script-to-iterate-numerous-single-band/m-p/176057#M9942</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2015-04-16T15:40:38Z</dc:date>
    </item>
  </channel>
</rss>

