Tenho um conjunto de dados muito grande e não posso me dar ao luxo de ler todo o conjunto de dados. Portanto, estou pensando em ler apenas um pedaço dele para treinar, mas não tenho ideia de como fazê-lo. Qualquer pensamento será apreciado.
Respostas:
Se você deseja ler apenas as primeiras 999.999 linhas (sem cabeçalho):
read_csv(..., nrows=999999)
Se você deseja apenas ler as linhas 1.000.000 ... 1.999.999
read_csv(..., skiprows=1000000, nrows=999999)
nrows : int, padrão Nenhum Número de linhas do arquivo para ler. Útil para ler pedaços de arquivos grandes *
skiprows : semelhante a uma lista ou números inteiros de linha a pular (indexado em 0) ou número de linhas a pular (int) no início do arquivo
e para arquivos grandes, você provavelmente também desejará usar chunksize:
chunksize : int, default None Return TextFileReader objeto para iteração
nstart=,nend=.... Você tem que fazer a aritmética emskiprows = nend - nrows
LIMIT nstart, skiprows: /
header=n/list
chunksizeé um pouco chato, você tem que lidar com pedaços de tamanhos desiguais. Também pré-aloque seus arrays / dataframes com o tamanho fixo que você sabe que vai precisar, não faça concat / append dinamicamente sempre que puder evitá-lo.