메인 콘텐츠로 건너뛰기
GitHub 소스 코드

class Table

Table 클래스는 표 형식 데이터를 표시하고 분석하는 데 사용됩니다. 기존 스프레드시트와 달리, Table은 스칼라 값, 문자열, NumPy 배열, 그리고 대부분의 wandb.data_types.Media 하위 클래스를 포함한 다양한 데이터 타입을 지원합니다. 이를 통해 Images, Video, Audio와 같은 다양한 형태의 주석이 달린 리치 미디어를, 다른 전통적인 스칼라 값들과 함께 Table 안에 직접 포함할 수 있습니다. 이 클래스는 W&B Tables를 생성할 때 사용하는 기본 클래스입니다. https://docs.wandb.ai/guides/models/tables/

메서드 Table.__init__

__init__(
    columns=None,
    data=None,
    rows=None,
    dataframe=None,
    dtype=None,
    optional=True,
    allow_mixed_types=False,
    log_mode: Optional[Literal['IMMUTABLE', 'MUTABLE', 'INCREMENTAL']] = 'IMMUTABLE'
)
Table 객체를 초기화합니다. rows 인자는 이전 버전과의 호환성만을 위해 제공되며 사용하지 않는 것을 권장합니다. Table 클래스는 Pandas API를 흉내 내기 위해 data를 사용합니다. Args:
  • columns: (List[str]) 테이블의 열 이름입니다. 기본값은 [“Input”, “Output”, “Expected”]입니다.
  • data: (List[List[any]]) 행 중심의 2차원 값 배열입니다.
  • dataframe: (pandas.DataFrame) 테이블을 생성하는 데 사용되는 DataFrame 객체입니다. 이 인자가 설정되면 datacolumns 인자는 무시됩니다.
  • rows: (List[List[any]]) 행 중심의 2차원 값 배열입니다.
  • optional: (Union[bool,List[bool]]) None 값을 허용할지 여부를 결정합니다. 기본값은 True입니다.
    • 단일 bool 값인 경우, 생성 시 지정된 모든 열에 동일한 옵션이 적용됩니다.
    • bool 값 리스트인 경우, 각 열에 대해 개별적으로 옵션이 적용됩니다. columns와 길이가 같아야 하며, 각 열에 대응하는 값이 됩니다.
  • allow_mixed_types: (bool) 열에 서로 다른 타입의 값이 섞여 있어도 되는지(타입 검증 비활성화)를 결정합니다. 기본값은 False입니다.
  • log_mode: Optional[str] Table이 변경(mutation)될 때 어떻게 로깅할지 제어합니다. 옵션:
    • “IMMUTABLE” (기본값): Table은 한 번만 로깅할 수 있으며, 이후 Table이 변경된 뒤 다시 로깅을 시도해도 아무 작업도 수행되지 않습니다.
    • “MUTABLE”: 변경 후에도 Table을 다시 로깅할 수 있으며, 로깅할 때마다 새로운 아티팩트 버전이 생성됩니다.
    • “INCREMENTAL”: Table 데이터가 증분 방식으로 로깅되며, 각 로그는 마지막 로그 이후 추가된 새 데이터를 포함하는 새로운 아티팩트 엔트리를 생성합니다.

메서드 Table.add_column

add_column(name, data, optional=False)
테이블에 데이터 열을 추가합니다. Args:
  • name: (str) - 열의 고유한 이름
  • data: (list | np.array) - 동일한 타입으로 이루어진 데이터 열
  • optional: (bool) - null 유사 값이 허용되는지 여부

메서드 Table.add_computed_columns

add_computed_columns(fn)
기존 데이터를 기반으로 하나 이상의 계산된 열을 추가합니다. Args:
  • fn: 하나 또는 두 개의 인수 ndx (int)와 row (dict)를 받는 함수로, 새 열 이름을 키로 하고 해당 행의 새 열을 나타내는 dict를 반환해야 합니다.
    • ndx는 행의 인덱스를 나타내는 정수입니다. include_ndxTrue로 설정된 경우에만 포함됩니다.
    • row는 기존 열 이름을 키로 하는 딕셔너리입니다.

메서드 Table.add_data

add_data(*data)
테이블에 새로운 데이터 행을 추가합니다. 테이블의 최대 행 수는 wandb.Table.MAX_ARTIFACT_ROWS에 의해 결정됩니다. 데이터의 길이는 테이블의 열 개수와 일치해야 합니다.

메서드 Table.add_row

add_row(*row)
더 이상 사용되지 않습니다. 대신 Table.add_data 메서드를 사용하세요.

메서드 Table.cast

cast(col_name, dtype, optional=False)
열을 특정 자료형으로 캐스팅합니다. 일반적인 Python 클래스, 내부 W&B 타입, 또는 wandb.Image나 wandb.Classes 인스턴스와 같은 예시 객체일 수 있습니다. Args:
  • col_name (str): 캐스팅할 열의 이름.
  • dtype (class, wandb.wandb_sdk.interface._dtypes.Type, any): 대상 dtype.
  • optional (bool): 열에서 None 값을 허용할지 여부.

method Table.get_column

get_column(name, convert_to=None)
테이블에서 열을 가져오며, 필요에 따라 NumPy 객체로 변환합니다. Args:
  • name: (str) - 열 이름
  • convert_to: (str, optional)
    • “numpy”: 내부 데이터를 numpy 객체로 변환합니다

method Table.get_dataframe

get_dataframe()
테이블을 나타내는 pandas.DataFrame을 반환합니다.

메서드 Table.get_index

get_index()
다른 테이블에서 링크를 생성하는 데 사용할 행 인덱스 배열을 반환합니다.