2016-07-02 24 views
3

Von Wes:Pandas: kann nicht Namen importieren angrenzen

def side_by_side(*objs, **kwds): 
    from pandas.core.common import adjoin 
    space = kwds.get('space', 4) 
    reprs = [repr(obj).split('\n') for obj in objs] 
    print adjoin(space, *reprs) 

unter Anwenden:

import pandas as pd 

    df1 = pd.DataFrame(np.random.rand(10,3)) 
    df2 = pd.DataFrame(np.random.rand(10,3)) 


side_by_side(df1, df2) 

Wirft Fehler:

ImportError        Traceback (most recent call last) 
<ipython-input-25-2674cd8a228c> in <module>() 
     3 
     4 
----> 5 side_by_side(df1, df2) 

<ipython-input-24-9f441ebc9cb3> in side_by_side(*objs, **kwds) 
     1 def side_by_side(*objs, **kwds): 
----> 2  from pandas.core.common import adjoin 
     3  space = kwds.get('space', 4) 
     4  reprs = [repr(obj).split('\n') for obj in objs] 
     5  print adjoin(space, *reprs) 

ImportError: cannot import name adjoin 

Antwort

4

Ich denke, diese Funktion zu pandas.formats.printing verschoben wurde:

In [69]: from pandas.formats.printing import adjoin 

UPDATE: as already mentioned by @debo für Pandas 0.20.0+ Gebrauch.

from pandas.io.formats.printing import adjoin 
+0

'Import Pandas als pd' ausfällt, muss ‚Import Pandas – Merlin

1

Changed für Pandas Version 0,20 *

from pandas.io.formats.printing import adjoin