Datasets documentation

Classes de Tabela

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v4.8.4).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Classes de Tabela

Cada objeto Dataset é suportado por uma Tabela PyArrow. Uma Tabela pode ser carregada do disco (mapeada em memória) ou na memória. Vários tipos de Tabela estão disponíveis, e todos herdam de table.Table.

Tabela

classe datasets.table.Table

< >

( table: Table )

Envolve uma tabela pyarrow usando composição. Esta é a classe base para InMemoryTable, MemoryMappedTable e ConcatenationTable.

Ele implementa todos os atributos/métodos básicos da classe Table do pyarrow, exceto as transformações de Table: slice, filter, flatten, combine_chunks, cast, add_column, append_column, remove_column, set_column, rename_columns e drop.

A implementação desses métodos difere para as subclasses.

validate

< >

( *args**kwargs )

Parâmetros

  • full (bool, padrão False) — Se True, executa verificações caras; caso contrário, executa apenas verificações baratas.

Exceções

pa.lib.ArrowInvalid

  • pa.lib.ArrowInvalid — se a validação falhar

Execute verificações de validação. Uma exceção é lançada se a validação falhar.

Por padrão, apenas verificações de validação de baixo custo são executadas. Passe full=True para verificações de validação completas (potencialmente O(n)).

equals

< >

( *args**kwargs ) → bool

Parâmetros

  • other (Tabela) — Tabela para comparação.
  • check_metadata bool, padrão False) — Se a igualdade dos metadados do esquema também deve ser verificada.

Retorna

bool

Verifique se o conteúdo de duas tabelas é igual.

to_batches

< >

( *args**kwargs )

Parâmetros

  • max_chunksize (int, padrão None) — Tamanho máximo para os blocos de RecordBatch. Blocos individuais podem ser menores, dependendo do layout dos blocos das colunas individuais.

Converte uma Tabela em uma lista de objetos RecordBatch (contíguos).

to_pydict

< >

( *args**kwargs ) → dict

Retorna

dict

Converta a Table em um dict ou OrderedDict.

to_pandas

< >

( *args**kwargs ) → pandas.Series or pandas.DataFrame

Parâmetros

  • memory_pool (MemoryPool, padrão None) — Arrow MemoryPool a ser usado para alocações. Usa o pool de memória padrão se nenhum for passado.
  • strings_to_categorical (bool, padrão False) — Codifica tipos de string (UTF8) e binário para pandas.Categorical.
  • categories (list, padrão empty) — Lista de campos que devem ser retornados como pandas.Categorical. Aplica-se apenas a estruturas de dados tabulares.
  • zero_copy_only (bool, padrão False) — Lança uma ArrowException se esta chamada de função exigir a cópia dos dados subjacentes.
  • integer_object_nulls (bool, padrão False) — Converte inteiros com nulos em objetos.
  • date_as_object (bool, padrão True) — Converte datas em objetos. Se False, converte para o dtype datetime64[ns].
  • timestamp_as_object (bool, padrão False) — Converte timestamps que não estão em nanossegundos (np.datetime64) em objetos. Isso é útil se você tiver timestamps que não se encaixam no intervalo de datas normal de timestamps em nanossegundos (1678 d.C.-2262 d.C.). Se False, todos os timestamps são convertidos para o dtype datetime64[ns].
  • use_threads (bool, padrão True) — Se a conversão deve ser paralelizada usando múltiplas threads.
  • deduplicate_objects (bool, padrão False) — Não cria múltiplas cópias de objetos Python ao serem criados, para economizar uso de memória. A conversão será mais lenta.
  • ignore_metadata (bool, padrão False) — Se True, não usa os metadados do ‘pandas’ para reconstituir o índice do DataFrame, se presente.
  • safe (bool, padrão True) — Para certos tipos de dados, é necessário um cast para armazenar os dados em um DataFrame ou Series do pandas (por exemplo, timestamps são sempre armazenados como nanossegundos no pandas). Esta opção controla se o cast é seguro ou não.
  • split_blocks (bool, padrão False) — Se True, gera um “bloco” interno para cada coluna ao criar um pandas.DataFrame a partir de um RecordBatch ou Table. Embora isso possa reduzir temporariamente a memória, observe que várias operações do pandas podem acionar a “consolidação”, o que pode aumentar drasticamente o uso de memória.
  • self_destruct (bool, padrão False) — EXPERIMENTAL: Se True, tenta desalocar a memória Arrow de origem ao converter o objeto Arrow para pandas. Se você usar o objeto após chamar to_pandas com esta opção, seu programa será interrompido.
  • types_mapper (function, padrão None) — Uma função que mapeia um DataType do pyarrow para um ExtensionDtype do pandas. Isso pode ser usado para substituir o tipo padrão do pandas na conversão de tipos embutidos do pyarrow ou na ausência de pandas_metadata no esquema da Tabela. A função recebe um DataType do pyarrow e é esperado que retorne um ExtensionDtype do pandas ou None se a conversão padrão deve ser usada para aquele tipo. Se você tiver um dicionário de mapeamento, pode passar dict.get como função.

Retorna

pandas.Series ou pandas.DataFrame

pandas.Series ou pandas.DataFrame, dependendo do tipo de objeto

Converta para um array NumPy ou um DataFrame compatível com pandas, conforme apropriado.

to_string

< >

( *args**kwargs )

campo

< >

( *args**kwargs )

Parâmetros

  • i (Union[int, str]) — O índice ou nome do campo a ser recuperado.

Selecione um campo do esquema pelo nome da coluna ou pelo índice numérico.

coluna

< >

( *args**kwargs )

Parâmetros

  • i (Union[int, str]) — O índice ou o nome da coluna a ser recuperada.

Selecione uma coluna pelo nome da coluna ou pelo índice numérico.

itercolumns

< >

( *args**kwargs )

Itera sobre todas as colunas em ordem numérica.

esquema

< >

( )

Esquema da tabela e de suas colunas.

colunas de

< >

( )

Lista de todas as colunas em ordem numérica.

num_columns

< >

( )

Número de colunas nesta tabela.

num_rows

< >

( )

Número de linhas nesta tabela.

Devido à definição de uma tabela, todas as colunas têm o mesmo número de linhas.

forma

< >

( ) → (int, int)

Retorna

(int, int)

Número de linhas e número de colunas.

Dimensões da tabela: (#linhas, #colunas).

nbytes

< >

( )

Número total de bytes consumidos pelos elementos da tabela.

InMemoryTable

classe datasets.table.InMemoryTable

< >

( table: Table )

A tabela é considerada em memória quando é carregada na RAM do usuário.

Ao fazer o pickling, ele copia todos os dados usando memória. Sua implementação é simples e usa diretamente os métodos da classe Table do pyarrow subjacente.

Isso é diferente da tabela MemoryMapped, para a qual o pickling não copia todos os dados na memória. Para uma MemoryMapped, o unpickling recarrega a tabela do disco.

InMemoryTable deve ser usado quando os dados cabem na memória, enquanto MemoryMapped são reservados para dados maiores que a memória ou quando você deseja que a pegada de memória do seu aplicativo permaneça baixa.

validate

< >

( *args**kwargs )

Parâmetros

  • full (bool, padrão False) — Se True, executa verificações caras; caso contrário, executa apenas verificações baratas.

Exceções

pa.lib.ArrowInvalid

  • pa.lib.ArrowInvalid — se a validação falhar

Execute verificações de validação. Uma exceção é lançada se a validação falhar.

Por padrão, apenas verificações de validação de baixo custo são executadas. Passe full=True para verificações de validação completas (potencialmente O(n)).

equals

< >

( *args**kwargs ) → bool

Parâmetros

  • other (Tabela) — Tabela para comparação.
  • check_metadata bool, padrão False) — Se a igualdade dos metadados do esquema também deve ser verificada.

Retorna

bool

Verifique se o conteúdo de duas tabelas é igual.

to_batches

< >

( *args**kwargs )

Parâmetros

  • max_chunksize (int, padrão None) — Tamanho máximo para os blocos de RecordBatch. Blocos individuais podem ser menores, dependendo do layout dos blocos das colunas individuais.

Converte uma Tabela em uma lista de objetos RecordBatch (contíguos).

to_pydict

< >

( *args**kwargs ) → dict

Retorna

dict

Converta a Table em um dict ou OrderedDict.

to_pandas

< >

( *args**kwargs ) → pandas.Series or pandas.DataFrame

Parâmetros

  • memory_pool (MemoryPool, padrão None) — Arrow MemoryPool a ser usado para alocações. Usa o pool de memória padrão se nenhum for passado.
  • strings_to_categorical (bool, padrão False) — Codifica tipos de string (UTF8) e binário para pandas.Categorical.
  • categories (list, padrão empty) — Lista de campos que devem ser retornados como pandas.Categorical. Aplica-se apenas a estruturas de dados tabulares.
  • zero_copy_only (bool, padrão False) — Lança uma ArrowException se esta chamada de função exigir a cópia dos dados subjacentes.
  • integer_object_nulls (bool, padrão False) — Converte inteiros com nulos em objetos.
  • date_as_object (bool, padrão True) — Converte datas em objetos. Se False, converte para o dtype datetime64[ns].
  • timestamp_as_object (bool, padrão False) — Converte timestamps que não estão em nanossegundos (np.datetime64) em objetos. Isso é útil se você tiver timestamps que não se encaixam no intervalo de datas normal de timestamps em nanossegundos (1678 d.C.-2262 d.C.). Se False, todos os timestamps são convertidos para o dtype datetime64[ns].
  • use_threads (bool, padrão True) — Se a conversão deve ser paralelizada usando múltiplas threads.
  • deduplicate_objects (bool, padrão False) — Não cria múltiplas cópias de objetos Python ao serem criados, para economizar uso de memória. A conversão será mais lenta.
  • ignore_metadata (bool, padrão False) — Se True, não usa os metadados do ‘pandas’ para reconstituir o índice do DataFrame, se presente.
  • safe (bool, padrão True) — Para certos tipos de dados, é necessário um cast para armazenar os dados em um DataFrame ou Series do pandas (por exemplo, timestamps são sempre armazenados como nanossegundos no pandas). Esta opção controla se o cast é seguro ou não.
  • split_blocks (bool, padrão False) — Se True, gera um “bloco” interno para cada coluna ao criar um pandas.DataFrame a partir de um RecordBatch ou Table. Embora isso possa reduzir temporariamente a memória, observe que várias operações do pandas podem acionar a “consolidação”, o que pode aumentar drasticamente o uso de memória.
  • self_destruct (bool, padrão False) — EXPERIMENTAL: Se True, tenta desalocar a memória Arrow de origem ao converter o objeto Arrow para pandas. Se você usar o objeto após chamar to_pandas com esta opção, seu programa será interrompido.
  • types_mapper (function, padrão None) — Uma função que mapeia um DataType do pyarrow para um ExtensionDtype do pandas. Isso pode ser usado para substituir o tipo padrão do pandas na conversão de tipos embutidos do pyarrow ou na ausência de pandas_metadata no esquema da Tabela. A função recebe um DataType do pyarrow e é esperado que retorne um ExtensionDtype do pandas ou None se a conversão padrão deve ser usada para aquele tipo. Se você tiver um dicionário de mapeamento, pode passar dict.get como função.

Retorna

pandas.Series ou pandas.DataFrame

pandas.Series ou pandas.DataFrame, dependendo do tipo de objeto

Converta para um array NumPy ou um DataFrame compatível com pandas, conforme apropriado.

to_string

< >

( *args**kwargs )

campo

< >

( *args**kwargs )

Parâmetros

  • i (Union[int, str]) — O índice ou nome do campo a ser recuperado.

Selecione um campo do esquema pelo nome da coluna ou pelo índice numérico.

coluna

< >

( *args**kwargs )

Parâmetros

  • i (Union[int, str]) — O índice ou o nome da coluna a ser recuperada.

Selecione uma coluna pelo nome da coluna ou pelo índice numérico.

itercolumns

< >

( *args**kwargs )

Itera sobre todas as colunas em ordem numérica.

esquema

< >

( )

Esquema da tabela e de suas colunas.

colunas de

< >

( )

Lista de todas as colunas em ordem numérica.

num_columns

< >

( )

Número de colunas nesta tabela.

num_rows

< >

( )

Número de linhas nesta tabela.

Devido à definição de uma tabela, todas as colunas têm o mesmo número de linhas.

forma

< >

( ) → (int, int)

Retorna

(int, int)

Número de linhas e número de colunas.

Dimensões da tabela: (#linhas, #colunas).

nbytes

< >

( )

Número total de bytes consumidos pelos elementos da tabela.

column_names

< >

( )

Nomes das colunas da tabela.

slice

< >

( offset = 0length = None )

Parâmetros

  • offset (int, padrão 0) — Deslocamento a partir do início da tabela para o recorte.
  • length (int, padrão None) — Comprimento do slice (padrão é até o final da tabela a partir do offset).

Compute fatia sem cópia desta Table.

filtro

< >

( *args**kwargs )

Selecione registros de uma Table. Consulte pyarrow.compute.filter para o uso completo.

flatten

< >

( *args**kwargs )

Parâmetros

  • memory_pool (MemoryPool, padrão None) — Para alocações de memória, se necessário; caso contrário, usa o pool padrão.

Achatar esta tabela. Cada coluna com tipo struct é achatada em uma coluna por campo do struct. As outras colunas permanecem inalteradas.

combine_chunks

< >

( *args**kwargs )

Parâmetros

  • memory_pool (MemoryPool, padrão None) — Para alocações de memória, se necessário; caso contrário, usa o pool padrão.

Crie uma nova tabela combinando os blocos desta tabela.

Todos os blocos subjacentes no ChunkedArray de cada coluna são concatenados em zero ou um bloco.

cast

< >

( *args**kwargs )

Parâmetros

  • target_schema (Schema) — Schema para o qual fazer o cast; os nomes e a ordem dos campos devem corresponder.
  • safe (bool, padrão True) — Verifica estouro de capacidade ou outras conversões inseguras.

Converte valores de tabela para outro esquema.

replace_schema_metadata

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • metadata (dict, padrão None) —

Retorna

datasets.table.Table

shallow_copy

EXPERIMENTAL: Cria uma cópia rasa da tabela substituindo os metadados chave-valor do esquema pelos novos metadados indicados (que podem ser None, o que remove quaisquer metadados existentes).

add_column

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • i (int) — Índice para posicionar a coluna.
  • field_ (Union[str, pyarrow.Field]) — Se uma string for passada, o tipo é deduzido a partir dos dados da coluna.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — Dados da coluna.

Retorna

datasets.table.Table

Nova tabela com a coluna passada adicionada.

Adicionar coluna à Tabela na posição.

Uma nova tabela é retornada com a coluna adicionada, o objeto de tabela original permanece inalterado.

append_column

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • field_ (Union[str, pyarrow.Field]) — Se uma string for passada, o tipo é deduzido a partir dos dados da coluna.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — Dados da coluna.

Retorna

datasets.table.Table

Nova tabela com a coluna passada adicionada.

Adiciona a coluna no final das colunas.

remove_column

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • i (int) — Índice da coluna a ser removida.

Retorna

datasets.table.Table

Nova tabela sem a coluna.

Crie uma nova Table com a coluna indicada removida.

set_column

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • i (int) — Índice para posicionar a coluna.
  • field_ (Union[str, pyarrow.Field]) — Se uma string for passada, o tipo é deduzido a partir dos dados da coluna.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — Dados da coluna.

Retorna

datasets.table.Table

Nova tabela com o conjunto de colunas passado.

Substituir coluna na Tabela na posição.

rename_columns

< >

( *args**kwargs )

Crie uma nova tabela com as colunas renomeadas para os nomes fornecidos.

selecionar

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • columns (Union[List[str], List[int]]) — Os nomes das colunas ou os índices inteiros a serem selecionados.

Nova tabela com as colunas especificadas e metadados preservados.

Selecione as colunas da tabela.

Retorna uma nova tabela com as colunas especificadas e metadados preservados.

drop

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • columns (List[str]) — Lista de nomes de campos que fazem referência a colunas existentes.

Retorna

datasets.table.Table

Nova tabela sem as colunas.

Exceções

KeyError

  • KeyError — : se algum dos nomes de colunas passados não existir.

Remova uma ou mais colunas e retorne uma nova tabela.

from_file

< >

( filename: str )

from_buffer

< >

( buffer: Buffer )

from_pandas

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • df (pandas.DataFrame) —
  • schema (pyarrow.Schema, opcional) — O esquema esperado da Tabela Arrow. Isso pode ser usado para indicar o tipo das colunas caso não seja possível inferi-lo automaticamente. Se fornecido, a saída terá exatamente esse esquema. Colunas especificadas no esquema que não forem encontradas nas colunas do DataFrame ou em seu índice causarão um erro. Colunas adicionais ou níveis de índice no DataFrame que não forem especificados no esquema serão ignorados.
  • preserve_index (bool, opcional) — Se deve armazenar o índice como uma coluna adicional na Table resultante. O padrão de None armazenará o índice como uma coluna, exceto para RangeIndex, que é armazenado apenas como metadados. Use preserve_index=True para forçar que ele seja armazenado como uma coluna.
  • nthreads (int, padrão None (pode usar até o número de CPUs do sistema)) — Se for maior que 1, converte as colunas para Arrow em paralelo usando o número indicado de threads.
  • columns (List[str], opcional) — Lista de colunas a serem convertidas. Se None, usa todas as colunas.
  • safe (bool, padrão True) — Verifica estouro de capacidade ou outras conversões inseguras,

Retorna

datasets.table.Table

Converte um pandas.DataFrame para uma Tabela Arrow.

Os tipos de coluna na Tabela Arrow resultante são inferidos a partir dos dtypes das pandas.Series no DataFrame. No caso de Series não-object, o dtype do NumPy é traduzido para seu equivalente no Arrow. No caso de object, precisamos inferir o tipo de dados examinando os objetos Python presentes nesta Series.

Observe que Series do dtype object não carregam informações suficientes para sempre levar a um tipo Arrow significativo. No caso em que não podemos inferir um tipo, por exemplo, porque o DataFrame tem comprimento 0 ou a Series contém apenas objetos None/nan, o tipo é definido como null. Esse comportamento pode ser evitado construindo um esquema explícito e passando-o para esta função.

Exemplos:

>>> import pandas as pd
>>> import pyarrow as pa
>>> df = pd.DataFrame({
    ...     'int': [1, 2],
    ...     'str': ['a', 'b']
    ... })
>>> pa.Table.from_pandas(df)
<pyarrow.lib.Table object at 0x7f05d1fb1b40>

from_arrays

< >

( *args**kwargs )

Parâmetros

  • arrays (List[Union[pyarrow.Array, pyarrow.ChunkedArray]]) — Arrays de comprimento igual que devem formar a tabela.
  • names (List[str], opcional) — Nomes para as colunas da tabela. Se não for passado, o schema deve ser passado.
  • schema (Schema, padrão None) — Esquema para a tabela criada. Se não for passado, os nomes devem ser passados.
  • metadata (Union[dict, Mapping], padrão None) — Metadados opcionais para o esquema (se inferido).

Construa uma Tabela a partir de arrays Arrow.

from_pydict

< >

( *args**kwargs )

Parâmetros

  • mapping (Union[dict, Mapping]) — Um mapeamento de strings para Arrays ou listas Python.
  • schema (Schema, padrão None) — Se não for fornecido, será inferido a partir dos valores do Mapping
  • metadata (Union[dict, Mapping], padrão None) — Metadados opcionais para o esquema (se inferido).

Construa uma Table a partir de arrays ou colunas Arrow.

from_batches

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • batches (Union[Sequence[pyarrow.RecordBatch], Iterator[pyarrow.RecordBatch]]) — Sequência de RecordBatch a ser convertida; todos os esquemas devem ser iguais.
  • schema (Schema, padrão None) — Se não for fornecido, será inferido a partir do primeiro RecordBatch.

Retorna

datasets.table.Table

Construa uma Table a partir de uma sequência ou iterador de RecordBatches do Arrow.

MemoryMappedTable

classe datasets.table.MemoryMappedTable

< >

( table: Tablepath: strreplays: typing.Optional[list[tuple[str, tuple, dict]]] = None )

A tabela é considerada mapeada em memória quando não utiliza a RAM do usuário, mas carrega os dados do disco.

Ao fazer o pickling, os dados não são copiados para a memória. Em vez disso, apenas o caminho para o arquivo arrow mapeado em memória é picklado, bem como a lista de transforms para “reproduzir” ao recarregar a tabela do disco.

Sua implementação requer armazenar um histórico de todas as transformações aplicadas à tabela pyarrow subjacente, para que possam ser “reexecutadas” ao recarregar a tabela do disco.

Isso é diferente da tabela InMemoryTable, para a qual o pickling copia todos os dados na memória.

InMemoryTable deve ser usado quando os dados cabem na memória, enquanto MemoryMapped são reservados para dados maiores que a memória ou quando você deseja que a pegada de memória do seu aplicativo permaneça baixa.

validate

< >

( *args**kwargs )

Parâmetros

  • full (bool, padrão False) — Se True, executa verificações caras; caso contrário, executa apenas verificações baratas.

Exceções

pa.lib.ArrowInvalid

  • pa.lib.ArrowInvalid — se a validação falhar

Execute verificações de validação. Uma exceção é lançada se a validação falhar.

Por padrão, apenas verificações de validação de baixo custo são executadas. Passe full=True para verificações de validação completas (potencialmente O(n)).

equals

< >

( *args**kwargs ) → bool

Parâmetros

  • other (Tabela) — Tabela para comparação.
  • check_metadata bool, padrão False) — Se a igualdade dos metadados do esquema também deve ser verificada.

Retorna

bool

Verifique se o conteúdo de duas tabelas é igual.

to_batches

< >

( *args**kwargs )

Parâmetros

  • max_chunksize (int, padrão None) — Tamanho máximo para os blocos de RecordBatch. Blocos individuais podem ser menores, dependendo do layout dos blocos das colunas individuais.

Converte uma Tabela em uma lista de objetos RecordBatch (contíguos).

to_pydict

< >

( *args**kwargs ) → dict

Retorna

dict

Converta a Table em um dict ou OrderedDict.

to_pandas

< >

( *args**kwargs ) → pandas.Series or pandas.DataFrame

Parâmetros

  • memory_pool (MemoryPool, padrão None) — Arrow MemoryPool a ser usado para alocações. Usa o pool de memória padrão se nenhum for passado.
  • strings_to_categorical (bool, padrão False) — Codifica tipos de string (UTF8) e binário para pandas.Categorical.
  • categories (list, padrão empty) — Lista de campos que devem ser retornados como pandas.Categorical. Aplica-se apenas a estruturas de dados tabulares.
  • zero_copy_only (bool, padrão False) — Lança uma ArrowException se esta chamada de função exigir a cópia dos dados subjacentes.
  • integer_object_nulls (bool, padrão False) — Converte inteiros com nulos em objetos.
  • date_as_object (bool, padrão True) — Converte datas em objetos. Se False, converte para o dtype datetime64[ns].
  • timestamp_as_object (bool, padrão False) — Converte timestamps que não estão em nanossegundos (np.datetime64) em objetos. Isso é útil se você tiver timestamps que não se encaixam no intervalo de datas normal de timestamps em nanossegundos (1678 d.C.-2262 d.C.). Se False, todos os timestamps são convertidos para o dtype datetime64[ns].
  • use_threads (bool, padrão True) — Se a conversão deve ser paralelizada usando múltiplas threads.
  • deduplicate_objects (bool, padrão False) — Não cria múltiplas cópias de objetos Python ao serem criados, para economizar uso de memória. A conversão será mais lenta.
  • ignore_metadata (bool, padrão False) — Se True, não usa os metadados do ‘pandas’ para reconstituir o índice do DataFrame, se presente.
  • safe (bool, padrão True) — Para certos tipos de dados, é necessário um cast para armazenar os dados em um DataFrame ou Series do pandas (por exemplo, timestamps são sempre armazenados como nanossegundos no pandas). Esta opção controla se o cast é seguro ou não.
  • split_blocks (bool, padrão False) — Se True, gera um “bloco” interno para cada coluna ao criar um pandas.DataFrame a partir de um RecordBatch ou Table. Embora isso possa reduzir temporariamente a memória, observe que várias operações do pandas podem acionar a “consolidação”, o que pode aumentar drasticamente o uso de memória.
  • self_destruct (bool, padrão False) — EXPERIMENTAL: Se True, tenta desalocar a memória Arrow de origem ao converter o objeto Arrow para pandas. Se você usar o objeto após chamar to_pandas com esta opção, seu programa será interrompido.
  • types_mapper (function, padrão None) — Uma função que mapeia um DataType do pyarrow para um ExtensionDtype do pandas. Isso pode ser usado para substituir o tipo padrão do pandas na conversão de tipos embutidos do pyarrow ou na ausência de pandas_metadata no esquema da Tabela. A função recebe um DataType do pyarrow e é esperado que retorne um ExtensionDtype do pandas ou None se a conversão padrão deve ser usada para aquele tipo. Se você tiver um dicionário de mapeamento, pode passar dict.get como função.

Retorna

pandas.Series ou pandas.DataFrame

pandas.Series ou pandas.DataFrame, dependendo do tipo de objeto

Converta para um array NumPy ou um DataFrame compatível com pandas, conforme apropriado.

to_string

< >

( *args**kwargs )

campo

< >

( *args**kwargs )

Parâmetros

  • i (Union[int, str]) — O índice ou nome do campo a ser recuperado.

Selecione um campo do esquema pelo nome da coluna ou pelo índice numérico.

coluna

< >

( *args**kwargs )

Parâmetros

  • i (Union[int, str]) — O índice ou o nome da coluna a ser recuperada.

Selecione uma coluna pelo nome da coluna ou pelo índice numérico.

itercolumns

< >

( *args**kwargs )

Itera sobre todas as colunas em ordem numérica.

esquema

< >

( )

Esquema da tabela e de suas colunas.

colunas de

< >

( )

Lista de todas as colunas em ordem numérica.

num_columns

< >

( )

Número de colunas nesta tabela.

num_rows

< >

( )

Número de linhas nesta tabela.

Devido à definição de uma tabela, todas as colunas têm o mesmo número de linhas.

forma

< >

( ) → (int, int)

Retorna

(int, int)

Número de linhas e número de colunas.

Dimensões da tabela: (#linhas, #colunas).

nbytes

< >

( )

Número total de bytes consumidos pelos elementos da tabela.

column_names

< >

( )

Nomes das colunas da tabela.

slice

< >

( offset = 0length = None )

Parâmetros

  • offset (int, padrão 0) — Deslocamento a partir do início da tabela para o recorte.
  • length (int, padrão None) — Comprimento do slice (padrão é até o final da tabela a partir do offset).

Compute fatia sem cópia desta Table.

filtro

< >

( *args**kwargs )

Selecione registros de uma Table. Consulte pyarrow.compute.filter para o uso completo.

flatten

< >

( *args**kwargs )

Parâmetros

  • memory_pool (MemoryPool, padrão None) — Para alocações de memória, se necessário; caso contrário, usa o pool padrão.

Achatar esta tabela. Cada coluna com tipo struct é achatada em uma coluna por campo do struct. As outras colunas permanecem inalteradas.

combine_chunks

< >

( *args**kwargs )

Parâmetros

  • memory_pool (MemoryPool, padrão None) — Para alocações de memória, se necessário; caso contrário, usa o pool padrão.

Crie uma nova tabela combinando os blocos desta tabela.

Todos os blocos subjacentes no ChunkedArray de cada coluna são concatenados em zero ou um bloco.

cast

< >

( *args**kwargs )

Parâmetros

  • target_schema (Schema) — Schema para o qual fazer o cast; os nomes e a ordem dos campos devem corresponder.
  • safe (bool, padrão True) — Verifica estouro de capacidade ou outras conversões inseguras.

Converter valores de tabela para outro esquema

replace_schema_metadata

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • metadata (dict, padrão None) —

Retorna

datasets.table.Table

shallow_copy

EXPERIMENTAL: Cria uma cópia rasa da tabela substituindo os metadados chave-valor do esquema pelos novos metadados indicados (que podem ser None, o que remove quaisquer metadados existentes.

add_column

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • i (int) — Índice para posicionar a coluna.
  • field_ (Union[str, pyarrow.Field]) — Se uma string for passada, o tipo é deduzido a partir dos dados da coluna.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — Dados da coluna.

Retorna

datasets.table.Table

Nova tabela com a coluna passada adicionada.

Adicionar coluna à Tabela na posição.

Uma nova tabela é retornada com a coluna adicionada, o objeto de tabela original permanece inalterado.

append_column

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • field_ (Union[str, pyarrow.Field]) — Se uma string for passada, o tipo é deduzido a partir dos dados da coluna.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — Dados da coluna.

Retorna

datasets.table.Table

Nova tabela com a coluna passada adicionada.

Adiciona a coluna no final das colunas.

remove_column

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • i (int) — Índice da coluna a ser removida.

Retorna

datasets.table.Table

Nova tabela sem a coluna.

Crie uma nova Table com a coluna indicada removida.

set_column

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • i (int) — Índice para posicionar a coluna.
  • field_ (Union[str, pyarrow.Field]) — Se uma string for passada, o tipo é deduzido a partir dos dados da coluna.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — Dados da coluna.

Retorna

datasets.table.Table

Nova tabela com o conjunto de colunas passado.

Substituir coluna na Tabela na posição.

rename_columns

< >

( *args**kwargs )

Crie uma nova tabela com as colunas renomeadas para os nomes fornecidos.

selecionar

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • columns (Union[List[str], List[int]]) — Os nomes das colunas ou os índices inteiros a serem selecionados.

Nova tabela com as colunas especificadas e metadados preservados.

Selecione as colunas da tabela.

Retorna uma nova tabela com as colunas especificadas e metadados preservados.

drop

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • columns (List[str]) — Lista de nomes de campos que fazem referência a colunas existentes.

Retorna

datasets.table.Table

Nova tabela sem as colunas.

Exceções

KeyError

  • KeyError — : se algum dos nomes de colunas passados não existir.

Remova uma ou mais colunas e retorne uma nova tabela.

from_file

< >

( filename: strreplays = None )

ConcatenationTable

classe datasets.table.ConcatenationTable

< >

( table: Tableblocks: list )

A tabela é obtida pela concatenação de várias tabelas chamadas blocos. Ela permite a concatenação tanto no eixo 0 (adicionar linhas) quanto no eixo 1 (adicionar colunas).

As tabelas subjacentes são chamadas de “blocos” e podem ser objetos InMemoryTable ou MemoryMappedTable. Isso permite combinar tabelas que vêm da memória ou que são mapeadas em memória. Quando um ConcatenationTable é serializado com pickle, cada bloco é serializado:

  • os objetos InMemoryTable são serializados copiando todos os dados na memória.
  • os objetos MemoryMappedTable são serializados com pickle sem copiar os dados para a memória. Em vez disso, apenas o caminho para o arquivo arrow mapeado em memória é serializado, bem como a lista de transforms para “reproduzir” ao recarregar a tabela do disco.

Sua implementação requer armazenar cada bloco separadamente. O atributo blocks armazena uma lista de listas de blocos. O primeiro eixo concatena as tabelas ao longo do eixo 0 (adiciona linhas), enquanto o segundo eixo concatena as tabelas ao longo do eixo 1 (adiciona colunas).

Se algumas colunas estiverem ausentes ao concatenar no eixo 0, elas são preenchidas com valores nulos. Isso é feito usando pyarrow.concat_tables(tables, promote=True).

Você pode acessar a tabela totalmente combinada acessando o atributo ConcatenationTable.table, e os blocos acessando o atributo ConcatenationTable.blocks.

validate

< >

( *args**kwargs )

Parâmetros

  • full (bool, padrão False) — Se True, executa verificações caras; caso contrário, executa apenas verificações baratas.

Exceções

pa.lib.ArrowInvalid

  • pa.lib.ArrowInvalid — se a validação falhar

Execute verificações de validação. Uma exceção é lançada se a validação falhar.

Por padrão, apenas verificações de validação de baixo custo são executadas. Passe full=True para verificações de validação completas (potencialmente O(n)).

equals

< >

( *args**kwargs ) → bool

Parâmetros

  • other (Tabela) — Tabela para comparação.
  • check_metadata bool, padrão False) — Se a igualdade dos metadados do esquema também deve ser verificada.

Retorna

bool

Verifique se o conteúdo de duas tabelas é igual.

to_batches

< >

( *args**kwargs )

Parâmetros

  • max_chunksize (int, padrão None) — Tamanho máximo para os blocos de RecordBatch. Blocos individuais podem ser menores, dependendo do layout dos blocos das colunas individuais.

Converte uma Tabela em uma lista de objetos RecordBatch (contíguos).

to_pydict

< >

( *args**kwargs ) → dict

Retorna

dict

Converta a Table em um dict ou OrderedDict.

to_pandas

< >

( *args**kwargs ) → pandas.Series or pandas.DataFrame

Parâmetros

  • memory_pool (MemoryPool, padrão None) — Arrow MemoryPool a ser usado para alocações. Usa o pool de memória padrão se nenhum for passado.
  • strings_to_categorical (bool, padrão False) — Codifica tipos de string (UTF8) e binário para pandas.Categorical.
  • categories (list, padrão empty) — Lista de campos que devem ser retornados como pandas.Categorical. Aplica-se apenas a estruturas de dados tabulares.
  • zero_copy_only (bool, padrão False) — Lança uma ArrowException se esta chamada de função exigir a cópia dos dados subjacentes.
  • integer_object_nulls (bool, padrão False) — Converte inteiros com nulos em objetos.
  • date_as_object (bool, padrão True) — Converte datas em objetos. Se False, converte para o dtype datetime64[ns].
  • timestamp_as_object (bool, padrão False) — Converte timestamps que não estão em nanossegundos (np.datetime64) em objetos. Isso é útil se você tiver timestamps que não se encaixam no intervalo de datas normal de timestamps em nanossegundos (1678 d.C.-2262 d.C.). Se False, todos os timestamps são convertidos para o dtype datetime64[ns].
  • use_threads (bool, padrão True) — Se a conversão deve ser paralelizada usando múltiplas threads.
  • deduplicate_objects (bool, padrão False) — Não cria múltiplas cópias de objetos Python ao serem criados, para economizar uso de memória. A conversão será mais lenta.
  • ignore_metadata (bool, padrão False) — Se True, não usa os metadados do ‘pandas’ para reconstituir o índice do DataFrame, se presente.
  • safe (bool, padrão True) — Para certos tipos de dados, é necessário um cast para armazenar os dados em um DataFrame ou Series do pandas (por exemplo, timestamps são sempre armazenados como nanossegundos no pandas). Esta opção controla se o cast é seguro ou não.
  • split_blocks (bool, padrão False) — Se True, gera um “bloco” interno para cada coluna ao criar um pandas.DataFrame a partir de um RecordBatch ou Table. Embora isso possa reduzir temporariamente a memória, observe que várias operações do pandas podem acionar a “consolidação”, o que pode aumentar drasticamente o uso de memória.
  • self_destruct (bool, padrão False) — EXPERIMENTAL: Se True, tenta desalocar a memória Arrow de origem ao converter o objeto Arrow para pandas. Se você usar o objeto após chamar to_pandas com esta opção, seu programa será interrompido.
  • types_mapper (function, padrão None) — Uma função que mapeia um DataType do pyarrow para um ExtensionDtype do pandas. Isso pode ser usado para substituir o tipo padrão do pandas na conversão de tipos embutidos do pyarrow ou na ausência de pandas_metadata no esquema da Tabela. A função recebe um DataType do pyarrow e é esperado que retorne um ExtensionDtype do pandas ou None se a conversão padrão deve ser usada para aquele tipo. Se você tiver um dicionário de mapeamento, pode passar dict.get como função.

Retorna

pandas.Series ou pandas.DataFrame

pandas.Series ou pandas.DataFrame, dependendo do tipo de objeto

Converta para um array NumPy ou um DataFrame compatível com pandas, conforme apropriado.

to_string

< >

( *args**kwargs )

campo

< >

( *args**kwargs )

Parâmetros

  • i (Union[int, str]) — O índice ou nome do campo a ser recuperado.

Selecione um campo do esquema pelo nome da coluna ou pelo índice numérico.

coluna

< >

( *args**kwargs )

Parâmetros

  • i (Union[int, str]) — O índice ou o nome da coluna a ser recuperada.

Selecione uma coluna pelo nome da coluna ou pelo índice numérico.

itercolumns

< >

( *args**kwargs )

Itera sobre todas as colunas em ordem numérica.

esquema

< >

( )

Esquema da tabela e de suas colunas.

colunas de

< >

( )

Lista de todas as colunas em ordem numérica.

num_columns

< >

( )

Número de colunas nesta tabela.

num_rows

< >

( )

Número de linhas nesta tabela.

Devido à definição de uma tabela, todas as colunas têm o mesmo número de linhas.

forma

< >

( ) → (int, int)

Retorna

(int, int)

Número de linhas e número de colunas.

Dimensões da tabela: (#linhas, #colunas).

nbytes

< >

( )

Número total de bytes consumidos pelos elementos da tabela.

column_names

< >

( )

Nomes das colunas da tabela.

slice

< >

( offset = 0length = None )

Parâmetros

  • offset (int, padrão 0) — Deslocamento a partir do início da tabela para o recorte.
  • length (int, padrão None) — Comprimento do slice (padrão é até o final da tabela a partir do offset).

Compute fatia sem cópia desta Table.

filtro

< >

( mask*args**kwargs )

Selecione registros de uma Table. Consulte pyarrow.compute.filter para o uso completo.

flatten

< >

( *args**kwargs )

Parâmetros

  • memory_pool (MemoryPool, padrão None) — Para alocações de memória, se necessário; caso contrário, usa o pool padrão.

Achatar esta tabela. Cada coluna com tipo struct é achatada em uma coluna por campo do struct. As outras colunas permanecem inalteradas.

combine_chunks

< >

( *args**kwargs )

Parâmetros

  • memory_pool (MemoryPool, padrão None) — Para alocações de memória, se necessário; caso contrário, usa o pool padrão.

Crie uma nova tabela combinando os blocos desta tabela.

Todos os blocos subjacentes no ChunkedArray de cada coluna são concatenados em zero ou um bloco.

cast

< >

( target_schema*args**kwargs )

Parâmetros

  • target_schema (Schema) — Schema para o qual fazer o cast; os nomes e a ordem dos campos devem corresponder.
  • safe (bool, padrão True) — Verifica estouro de capacidade ou outras conversões inseguras.

Converte valores de tabela para outro esquema.

replace_schema_metadata

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • metadata (dict, padrão None) —

Retorna

datasets.table.Table

shallow_copy

EXPERIMENTAL: Cria uma cópia rasa da tabela substituindo os metadados chave-valor do esquema pelos novos metadados indicados (que podem ser None, o que remove quaisquer metadados existentes).

add_column

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • i (int) — Índice para posicionar a coluna.
  • field_ (Union[str, pyarrow.Field]) — Se uma string for passada, o tipo é deduzido a partir dos dados da coluna.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — Dados da coluna.

Retorna

datasets.table.Table

Nova tabela com a coluna passada adicionada.

Adicionar coluna à Tabela na posição.

Uma nova tabela é retornada com a coluna adicionada, o objeto de tabela original permanece inalterado.

append_column

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • field_ (Union[str, pyarrow.Field]) — Se uma string for passada, o tipo é deduzido a partir dos dados da coluna.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — Dados da coluna.

Retorna

datasets.table.Table

Nova tabela com a coluna passada adicionada.

Adiciona a coluna no final das colunas.

remove_column

< >

( i*args**kwargs ) → datasets.table.Table

Parâmetros

  • i (int) — Índice da coluna a ser removida.

Retorna

datasets.table.Table

Nova tabela sem a coluna.

Crie uma nova Table com a coluna indicada removida.

set_column

< >

( *args**kwargs ) → datasets.table.Table

Parâmetros

  • i (int) — Índice para posicionar a coluna.
  • field_ (Union[str, pyarrow.Field]) — Se uma string for passada, o tipo é deduzido a partir dos dados da coluna.
  • column (Union[pyarrow.Array, List[pyarrow.Array]]) — Dados da coluna.

Retorna

datasets.table.Table

Nova tabela com o conjunto de colunas passado.

Substituir coluna na Tabela na posição.

rename_columns

< >

( names*args**kwargs )

Crie uma nova tabela com as colunas renomeadas para os nomes fornecidos.

selecionar

< >

( columns*args**kwargs ) → datasets.table.Table

Parâmetros

  • columns (Union[List[str], List[int]]) — Os nomes das colunas ou os índices inteiros a serem selecionados.

Nova tabela com as colunas especificadas e metadados preservados.

Selecione as colunas da tabela.

Retorna uma nova tabela com as colunas especificadas e metadados preservados.

drop

< >

( columns*args**kwargs ) → datasets.table.Table

Parâmetros

  • columns (List[str]) — Lista de nomes de campos que fazem referência a colunas existentes.

Retorna

datasets.table.Table

Nova tabela sem as colunas.

Exceções

KeyError

  • KeyError — : se algum dos nomes de colunas passados não existir.

Remova uma ou mais colunas e retorne uma nova tabela.

from_blocks

< >

( blocks: ~TableBlockContainer )

from_tables

< >

( tables: listaxis: int = 0 )

Parâmetros

  • tables (lista de Table ou lista de pyarrow.Table) — Lista de tabelas.
  • axis ({0, 1}, padrão é 0, o que significa ao longo das linhas) — Eixo de concatenação, onde 0 significa ao longo das linhas (verticalmente) e 1 significa ao longo das colunas (horizontalmente).

    Adicionado na 1.6.0

Crie ConcatenationTable a partir de uma lista de tabelas.

Utilitários

datasets.table.concat_tables

< >

( tables: listaxis: int = 0 ) → datasets.table.Table

Parâmetros

  • tables (lista de Table) — Lista de tabelas a serem concatenadas.
  • axis ({0, 1}, padrão é 0, o que significa ao longo das linhas) — Eixo de concatenação, onde 0 significa ao longo das linhas (verticalmente) e 1 significa ao longo das colunas (horizontalmente).

    Adicionado na 1.6.0

Retorna

datasets.table.Table

Se o número de tabelas de entrada for > 1, a tabela retornada será uma datasets.table.ConcatenationTable. Caso contrário, se houver apenas uma tabela, ela é retornada como está.

Concatene tabelas.

datasets.table.list_table_cache_files

< >

( table: Table ) → List[str]

Retorna

List[str]

Uma lista de caminhos para os arquivos de cache carregados pela tabela.

Obtenha os arquivos de cache carregados pela tabela. Os arquivos de cache são usados quando partes da tabela vêm do disco por meio de mapeamento de memória.

Update on GitHub