row
row: one row of a CSV or Parquet file as a mapping, read once at load. A cell of digits is read as a number, so a postal code with leading zeros loses them; write them with {gen: format, template: "{n:05d}"}. where is an expression over the row's columns that keeps some rows; weight names a column of weights; order is random (the default), sequential, shuffle (every row once, in a random order) or circular (in file order, again from the first); on_end says what a sequential or shuffle order does when the rows run out: error (the default), loop or stop, which ends the run.
Use it for a whole row of a CSV or Parquet file, such as a product from a price list.
Keys
| Key | Type | Default |
|---|---|---|
gen |
row |
required |
file |
text | required |
where |
text | none |
weight |
text | none |
order |
random or sequential or shuffle or circular |
"random" |
on_end |
stop or loop or error |
"error" |
Every kind also accepts null_rate, unique, omit_rate and omit_when, which Generators describes.
Example
product is one row of products.csv, and shuffle gives every row once, in a random order. An order starts every 60 seconds for 200 seconds, with the seed 42, so three orders start.
All three print the same records:
JSON Schema
The schema of Row, from desflow schema.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 | |