User Tools

Site Tools


howtos:workwithdata:import_quick_reference

Examples of common import/create calls are provided below.

It is convenient to set up one or more import directory paths up front. For example:

string $importDir= $modelHome + "/V1/primaryData"

Specifying data directly through a parameter

hhVehOwnRelProp_hhs[hhs] = import (; data="1.03 2.01 2.32 2.38 2.41 2.41 2.31")

csv file

basic import

This is an example of importing into a very simple mask variable, zoneMask[z], indexed by a single pre-defined informant, zone. Here is the top of the source data file zonesMask.csv:

"zone","maskValue"
201,1
202,1
211,0
212,1
213,0
214,1
.
.
.

And here is the code:

zoneMask[z] = import (; dataFormat=coordinate, fileFormat=text, \
	allCoord=on, delimiter=",", firstLine=2, \
	file=$importDir/zonesMask.csv)

Note:

  • the use of the firstLine=2 parameter to skip over the header row
  • no element name modification is required

Alternatively one may use the heading parameter to skip over the first line:

zoneMask[z] = import (; dataFormat=coordinate, fileFormat=text, \
    allCoord=on, delimiter=",", heading=on, \
    file=$importDir/zonesMask.csv)

advanced import examples

local occPrivDwellCustSC_1[pzans,dtd] = create (; \
	dim=PLUMzoneAllNS, dim=dwellType_data, \
	entityFrom=occPrivDwellCustSC[pzans,dt,byrs][$index], \
	dataFormat=coordinate, fileFormat=text, \
	allCoord=off, delimiter=",", firstLine=2, \
	searchElemName1=",", replaceElemName1="", \
	searchElemName2="/", replaceElemName2="_", \
	searchElemName3="-", replaceElemName3="_", \
	replaceWhiteSpaceInElemName="_", \
	stripLeadingWhiteSpace=off, \
	searchData=",", replaceData="" , \
	file=$importDir/dwellUnitsByType.csv)

read localinformants

Read informant definition from column:

localinformant age_0510002[] = create (; object=set, delimiter=",", \
	allowDuplicate=on, \
	elemNamesFromColNum=3, firstLine=2, \
	searchElemName1=",", replaceElemName1="", \
	searchElemName2="/", replaceElemName2="_", \
	searchElemName3="-", replaceElemName3="_", \
	replaceWhiteSpaceInElemName="_", \
	stripLeadingWhiteSpace=off, \
	file=$importDir/051-0002.csv)

Read informant definition from line:

localinformant date_0510002[] = create (; object=set, delimiter=",", \
	allowDuplicate=off, \
	elemNamesFromLineNum=1, firstCol=4, \
	searchElemName1=",", replaceElemName1="", \
	searchElemName2="/", replaceElemName2="_", \
	searchElemName3="-", replaceElemName3="_", \
	replaceWhiteSpaceInElemName="_", \
	stripLeadingWhiteSpace=off, \
	file=$importDir/051-0002.csv)

tab delimited text odometer (block) format

This format is useful for migrating data between models in a human-readable format, as opposed to binary tool-format files.

immigration[s,ts1,a][$index] = import (; dataFormat=odometer, fileFormat=text, \
	firstCol=2, file=$importDir_V3/immigration.txt)

reads from the following (header not shown):

!	sex=male
! 	0		1		2	
"1977"	1.049407e+02	1.314661e+02	1.317941e+02
"1978"	9.129648e+01	1.133035e+02	1.212180e+02
"1979"	8.643492e+01	9.573391e+01	9.366822e+01
"1980"	9.673356e+01	9.806976e+01	9.806976e+01

Note the use of the firstCol=2 for objects of rank 2 or greater. See the corresponding export call.

TOOL file

USUseComByInd_19982008[com_du,indio_du,t_19982008] = import (; \
	format=tool, dataFile=$importDir_ind/USUseComByInd_19982008)
howtos/workwithdata/import_quick_reference.txt · Last modified: 2017/05/18 14:51 by marcus.williams