<div class="section-label"><span class="num">01</span> Arrays</div> <div class="section-title">How to send <em>y</em>, <em>X</em>, and <em>theta</em>.</div> Every prediction needs outcomes <span class="mono">y</span> and attributes <span class="mono">X</span>. Circumstances <span class="mono">theta</span> are optional. Language clients accept ordinary vectors and matrices; they encode JSON for you. | Field | Shape | Meaning | | --- | --- | --- | | <span class="mono">y</span> | N numbers | Observed outcomes | | <span class="mono">X</span> | N rows of K numbers | Attributes aligned with y | | <span class="mono">theta</span> | K numbers, or M rows of K | Circumstances for this task | ```json { "y": [0.1, 0.2, 0.3], "X": [[1.0, 0.0], [0.0, 1.0], [1.0, 1.0]], "theta": [0.0, 1.0] } ``` N is observations, K is variables, M is how many circumstance rows you send at once. Values are 64-bit floating point. If you omit `theta`, the engine uses the last row of `X`. If you send several circumstance rows (`M > 1`), one call becomes that many jobs. The client waits for all of them; see [[API/Endpoints/Results#Experiments|several circumstances]]. ## Related - [[API/Introduction|API]] - [[API/Limits/Payload Limits|Payload size]] · [[API/Clients/Introduction|Clients]]