# read.csv("~/gitData/orch/rawFilesSchemaAndSampleData/Amazon.txt") -> x


utilSource()
setProject("~/git/orch/", project="Intro", subl=FALSE)
.eWorking <- environment()


# grab all files in the data dir
files <- dir(as.path(dataDir, "SchemaAndSampleData"), recursive=TRUE, full=TRUE)
# Filter down to only .TXT files
files <- toupper(files)
files <- grep("\\.txt$", tolower(files), value=TRUE, ignore.case=FALSE)

objs <- gsub(".txt$", "", basename(files))

## remove duplicates
keep  <- !duplicated(objs)
files <- files[keep]
objs  <- objs[keep]


# Functions for reading the TXT file and then assigning to Object 
readDefaults  <- function(f)    read.table(f, header=TRUE, sep="\t", as.is=TRUE, stringsAsFactors=FALSE, colClasses="character", quote="\"", comment.char="")
readDefaults <- function(f) fread(f)
readAndAssign <- function(o, f) {cat("Processing ", o, "\n"); assign(o, readDefaults(f), envir=.eWorking) }
mapply(readAndAssign, o=objs, f=files)


i <- 4

i <- i+1
o <- objs[[i]]; f <- files[[i]]
readAndAssign(o, f)
get(o)

err <- 52
X <- readLines(f)
{
read.table(text=X[[err-1]], header=FALSE, sep="\t", as.is=TRUE, stringsAsFactors=FALSE, colClasses="character", quote="\"", comment.char="")
read.table(text=X[[err+0]], header=FALSE, sep="\t", as.is=TRUE, stringsAsFactors=FALSE, colClasses="character", quote="\"", comment.char="")
read.table(text=X[[err+1]], header=FALSE, sep="\t", as.is=TRUE, stringsAsFactors=FALSE, colClasses="character", quote="\"", comment.char="")
read.table(text=X[[err+2]], header=FALSE, sep="\t", as.is=TRUE, stringsAsFactors=FALSE, colClasses="character", quote="\"", comment.char="")
}

X[err+(-1:2)]