Show all pandas dataframes in an IPython Notebook

后端 未结 2 1738
情深已故
情深已故 2021-02-04 09:51

How could I identify all the Pandas DataFrames created in my current notebook session?

Something like in SAS seeing all the members in the Work library would be ideal.

相关标签:
2条回答
  • 2021-02-04 10:24

    If you mean memory try something like:

    for i in dir():
        if type(globals()[i]) == pandas.DataFrame:
            print(i)
    

    or some such.

    0 讨论(0)
  • 2021-02-04 10:37

    Solution

    %who DataFrame
    

    Explanation

    All objects

    ... seeing all the members in the Work library would be ideal.

    In [1]:
    
    a = 10
    b = 'abs'
    c = [1, 2, 3]
    

    %who shows all used names:

    In [2]:
    %who
    a    b   c   
    

    Conveniently as a list:

    In [3]:
    %who_ls
    
    Out[3]:
    ['a', 'b', 'c']
    

    Or as table with data types:

    In [4]:
    %whos
    
    Variable   Type    Data/Info
    ----------------------------
    a          int     10
    b          str     abs
    c          list    n=3
    

    Filter for DataFrames

    In [5]:
    import pandas as pd
    df1 = pd.DataFrame({'a': [100, 200, 300]})
    df2 = pd.DataFrame({'b': [100, 200, 300]})
    
    In [6]:
    %whos DataFrame
    
    Variable   Type         Data/Info
    ---------------------------------
    df1        DataFrame         a\n0  100\n1  200\n2  300
    df2        DataFrame         b\n0  100\n1  200\n2  300
    
    In [7]:
    
    %who DataFrame
    df1  df2
    
    In [8]:
    %who_ls DataFrame
    
    Out[8]:
    ['df1', 'df2']
    
    0 讨论(0)
提交回复
热议问题