Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • running same do file across different folder

    Hello all,
    I am extracting data from .txt file format using do file and the same do file has to run for different folders with names 2008, 2009... 2013. How can I create a loop to do the same. As of now, I am doing like this:

    Code:
    global pathin "D:/My Disc/2008/rawdata"
    global pathout "D:/My Disc/2008/data/extracted"
    
    infix
    ...
    using "$pathin/as1.txt",clear
    save "$pathout/as1.dta", replace
    
    global pathin "D:/My Disc/2009/rawdata"
    global pathout "D:/My Disc/2009/data/extracted"
    
    infix
    ...
    using "$pathin/as2.txt",clear
    save "$pathout/as2.dta", replace
    Thanks

  • #2
    Something like this?

    Code:
    local Pathin D:/My Disc/2008/rawdata D:/My Disc/2009/rawdata
    local Pathout D:/My Disc/2008/data/extracted D:/My Disc/2009/data/extracted
    
    foreach pathin of local Pathin { 
        gettoken pathout Pathout : Pathout 
    
        infix
        ...
        using `pathin'/as1.txt,clear
        save `pathout'/as1.dta, replace
    }

    Comment


    • #3

      or probably this? local knjp=0 foreach dddd=2008/2009 { local mydir "D:/My Disc/`dddd'/data/extracted" local knjp=`knjp'+1 infix ... using "`mydir'/as`knjp'.txt",clear save "`mydir'/as`knjp'.dta", replace }

      Comment


      • #4
        local knjp=0

        foreach dddd=2008/2009 {

        local mydir "D:/My Disc/`dddd'/data/extracted"

        local knjp=`knjp'+1

        infix

        ...

        using "`mydir'/as`knjp'.txt",clear

        save "`mydir'/as`knjp'.dta", replace

        }

        Comment


        • #5
          Here

          Code:
          foreach dddd=2008/2009 {
          looks like a typo for

          Code:
          forval dddd=2008/2009 {

          Comment


          • #6
            Thanks a lot

            Comment

            Working...
            X