Solucionado (ver solução)
Solucionado
(ver solução)
8
respostas

Leitura do "tmdb_5000_movies.csv" - Data Science: Aula 03

Não consigo rodar o arquivo no Colab, segue erro:

tmdb = pd.read_csv("tmdb_5000_movies.csv")
tmdb.head()

ParserError Traceback (most recent call last) in () ----> 1 tmdb = pd.read_csv("tmdb_5000_movies.csv") 2 tmdb.head()

3 frames /usr/local/lib/python3.6/dist-packages/pandas/io/parsers.py in read(self, nrows) 2035 def read(self, nrows=None): 2036 try: -> 2037 data = self.reader.read(nrows) 2038 except StopIteration: 2039 if self.first_chunk:

pandas/libs/parsers.pyx in pandas.libs.parsers.TextReader.read()

pandas/libs/parsers.pyx in pandas.libs.parsers.TextReader.readlow_memory()

pandas/libs/parsers.pyx in pandas.libs.parsers.TextReader.readrows()

pandas/libs/parsers.pyx in pandas.libs.parsers.TextReader.tokenizerows()

pandas/libs/parsers.pyx in pandas.libs.parsers.raise_parser_error()

ParserError: Error tokenizing data. C error: Expected 20 fields in line 23, saw 29

8 respostas

Olá Paula,

Testei aqui e consegui rodar o arquivo no Colab. Meu palpite é que você deveria ter esperado um pouco mais para rodar o comando. Esse arquivo tmdb_5000_movies.csv é meio grande e se rodarmos o comando antes do arquivo subir totalmente aparece esse tipo de erro. A solução é tentar novamente e esperar aquela bolinha laranja que fica rodando na parte inferior ao lado do nome do arquivo desaparecer.

Oi Allan, Obrigada! Mas o erro ainda persiste, mesmo aguardando o carregamento completo e ainda dando com CTRL+S antes da execução. Consigo rodar qualquer outro arquivo das aulas anteriores, menos este. Já tentei baixar o arquivo direto do Kaggle ou da pasta zipada, mesmo erro.

Tente alterar o comando do read_csv para:

tmdb = pd.read_csv("tmdb_5000_movies.csv",sep=',')

Agora que reparei nesta parte do erro:

ParserError: Error tokenizing data. C error: Expected 20 fields in line 23, saw 29

Ele parece estar lendo os arquivos esperando um separador diferente. Como baixou o arquivo também de uma fonte diferente o ideal é abrir no seu pc com o bloco de notas e verificar o que esta sendo usando para separar as colunas. Se for tab vai ter que usar sep='\t' se for ; , sep=';' e assim por diante.

Avise se o erro persistir. Vamos até corrigir :)

Oi Allan, obrigada pela dica, estamos quase lá! Consigo rodar o arquivo agora utilizando o sep=';' , mas os títulos se acumularam na primeira coluna separados por vírgula. As demais colunas ficaram com "Unnamed" nos títulos, e as linhas abaixo desses títulos estão como "NaN".

Oi Paula,

Pode disponibilizar o link do arquivo que baixou e está usando? Se fossem apenas as colunas seria simples, mas quero entender melhor como o arquivo está escrito. Assim, consigo te dar uma resposta mais definitiva.

Aproveitando, segue o código que inseri pra rodar: tmdb = pd.read_csv("tmdb_5000_movies.csv",sep=';') tmdb.head()

solução!

Oi Paula,

Em determinado momento pensei que estivesse usando uma base de dados de uma fonte diferente. Essa do link que passou está separada por vírgula. Eu consegui ler ele fazendo apenas:

 pd.read_csv(db_5000_movies.csv)

Se não conseguindo ler assim é porque está acontecendo algum problema na hora do upload do seu pc para o colab.

Uma outra forma que consegui ler o arquivo evitando o upload foi indo na url: https://github.com/alura-cursos/introducao-a-data-science/blob/aula3/aula3.1/tmdb_5000_movies.csv

E clicando em View raw

Após isso eu copiei este endereço onde aparece o arquivo.

Assim eu consegui ler o arquivo com o seguinte código:

import pandas as pd

url='https://raw.githubusercontent.com/alura-cursos/introducao-a-data-science/aula3/aula3.1/tmdb_5000_movies.csv'

tmdb = pd.read_csv(url)

tmdb.head()

Espero que dê certo desta vez. Sugiro que comece a formação python para data science. Assim, vai pegar um curso onde o instrutor começa do zero com o colab e acho que vai te ajudar bastante com dúvidas futuras também.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software