2016-04-27 14 views
20

Bir makinede dosyayı .pkl için sayısal dataframe yazmak indexes.base adında bir modül (df.to_pickle()), bazı nedenlerden dolayı, ben farklı bir makinede bu dosyayı (açmak zorunda pd.read_pickle()), alma hatası: "indexes.base adlı bir modül yok ve indeksleri almaya çalıştığımda, bir tane yok gibi görünüyor.Python - read_pickle ImportError:

Ben farklı birinde bir makine ve read_csv içinde to_csv denedik

, işe yaradı.

Çok teşekkürler!


ImportError        Traceback (most recent call last) 
<ipython-input-199-2be4778e3b0a> in <module>() 
----> 1 pd.read_pickle("test.pkl") 

C:\Users\AppData\Local\Continuum\Anaconda2\lib\site-packages\pandas\io\pickle.pyc in read_pickle(path) 
58 
59  try: 
---> 60   return try_read(path) 
61  except: 
62   if PY3: 

C:\Users\AppData\Local\Continuum\Anaconda2\lib\site-packages\pandas\io\pickle.pyc in try_read(path, encoding) 
55    except: 
56     with open(path, 'rb') as fh: 
---> 57      return pc.load(fh, encoding=encoding, compat=True) 
58 
59  try: 

C:\Users\AppData\Local\Continuum\Anaconda2\lib\site-packages\pandas\compat\pickle_compat.pyc in load(fh, encoding, compat, is_verbose) 
114   up.is_verbose = is_verbose 
115 
--> 116   return up.load() 
117  except: 
118   raise 

C:\Users\AppData\Local\Continuum\Anaconda2\lib\pickle.pyc in load(self) 
856    while 1: 
857     key = read(1) 
--> 858     dispatch[key](self) 
859   except _Stop, stopinst: 
860    return stopinst.value 

C:\Users\AppData\Local\Continuum\Anaconda2\lib\pickle.pyc in load_global(self) 
1088   module = self.readline()[:-1] 
1089   name = self.readline()[:-1] 
--> 1090   klass = self.find_class(module, name) 
1091   self.append(klass) 
1092  dispatch[GLOBAL] = load_global 

C:\Users\AppData\Local\Continuum\Anaconda2\lib\pickle.pyc in find_class(self, module, name) 
1122  def find_class(self, module, name): 
1123   # Subclasses may override this 
--> 1124   __import__(module) 
1125   mod = sys.modules[module] 
1126   klass = getattr(mod, name) 

ImportError: No module named indexes.base 
+0

"Bir makineye to_csv'yi denediğimde ve farklı bir read_csv denediğimde, o çalıştı. Çok teşekkürler!" bu bir düzenleme mi? –

cevap

28

hem makinelerde Python ve Pandalar sürümünü kontrol edin. sürümleri aynı olup olmadığını yine de inceledik böylece

Ayrıca, sen, sen to_pickle (kullanıldığında dataframe) paylaşabilir misiniz.

+7

Evet, diğer makinedeki pandalar "0.18.0" ve kullanıyorum "0.17.0", benim 0.18.0'a güncellendikten sonra çalışıyor! Çok teşekkürler! – Sapling