Lecture dans un fichier csv comme dataframe de hdfs
Je suis en utilisant pydoop à lire dans un fichier de hdfs, et quand j'utilise:
import pydoop.hdfs as hd
with hd.open("/home/file.csv") as f:
print f.read()
Il me montre le fichier de sortie standard (stdout).
Est-il de toute façon pour moi de lire dans ce fichier comme dataframe? J'ai essayé d'utiliser des pandas read_csv("/home/fichier.csv"), mais il me dit que le fichier ne peut pas être trouvé. Le code exact et l'erreur est:
>>> import pandas as pd
>>> pd.read_csv("/home/file.csv")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python2.7/site-packages/pandas/io/parsers.py", line 498, in parser_f
return _read(filepath_or_buffer, kwds)
File "/usr/lib64/python2.7/site-packages/pandas/io/parsers.py", line 275, in _read
parser = TextFileReader(filepath_or_buffer, **kwds)
File "/usr/lib64/python2.7/site-packages/pandas/io/parsers.py", line 590, in __init__
self._make_engine(self.engine)
File "/usr/lib64/python2.7/site-packages/pandas/io/parsers.py", line 731, in _make_engine
self._engine = CParserWrapper(self.f, **self.options)
File "/usr/lib64/python2.7/site-packages/pandas/io/parsers.py", line 1103, in __init__
self._reader = _parser.TextReader(src, **kwds)
File "pandas/parser.pyx", line 353, in pandas.parser.TextReader.__cinit__ (pandas/parser.c:3246)
File "pandas/parser.pyx", line 591, in pandas.parser.TextReader._setup_parser_source (pandas/parser.c:6111)
IOError: File /home/file.csv does not exist
OriginalL'auteur lordingtar | 2016-02-26
Vous devez vous connecter pour publier un commentaire.
Je sais rien à propos de
hdfs
, mais je me demande si on peut travailler:Je suppose
read_csv
fonctionne avec un descripteur de fichier, ou en fait un objet iterable qui va nourrir les lignes. Je sais que lenumpy
csv lecteurs à faire.pd.read_csv("/home/file.csv")
si la régulière fichier Pythonopen
œuvres - c'est à dire qu'il lit le fichier régulière d'un fichier local.Mais évidemment
hd.open
est à l'aide d'un autre endroit ou de protocole, de sorte que le fichier n'est pas local. Si ma suggestion ne fonctionne pas, alors vous (ou nous) faut creuser de plus en plus dans lahdfs
de la documentation.OriginalL'auteur hpaulj