본문으로 건너뛰기

px.Table

구현 상태 · contract_only

px.Table, decorator @px.recordpx.field는 현재 공개 pipelinexlab.px facade에 없습니다. 이 페이지는 후속 typed-row collection 계약을 위한 planned SSOT이며 현재 설치본에서 실행할 API reference가 아닙니다. current collection port에는 지원되는 원소 annotation의 list[T]를, record schema에는 px.Record subclass를 사용합니다.

현재 사용할 collection 문법

현재 list 전체가 input value 하나이며 target은 한 번 실행됩니다.

python
from pipelinexlab import px


class SummaryResults(px.Results):
    count: int


@px.function(
    key="summarize_cases",
    version="1.0.0",
    description="Counts scalar load cases.",
)
def summarize_cases(
    cases: list[float],
) -> SummaryResults:
    return SummaryResults(count=len(cases))

같은 계산을 여러 scalar input set으로 반복 실행하는 기능은 collection value와 다릅니다. 반복 실행은 caller가 Batch를 요청합니다.

계획된 역할

px.Table[RecordType]은 같은 Record schema의 여러 row를 하나의 typed input 또는 result로 전달합니다. 계획 계약에서도 Table 전체가 값 하나이고 row마다 Canvas Node가 생기지 않습니다.

계획된 spelling · 실행 불가

text
px.Table[RecordType]

계획된 매개변수

이름계획된 의미
RecordType@px.record로 등록한 row schema

경계

  • current facade에는 public Table type이 없습니다. Record type은 px.Record가 소유합니다.
  • current list[T]에서 T는 facade가 지원하는 annotation이어야 합니다.
  • planned Table result를 Report table에 안정적으로 투영하려면 Record의 row_key가 필요합니다.
  • collection Run 하나와 case별 Run N개를 같은 실행 의미로 취급하지 않습니다.
  • planned 이름을 current runtime type처럼 import하거나 자체 compatibility class로 대체하지 않습니다.

다음