在 IPython 个笔记本中显示所有 pandas 个数据框

Show all pandas dataframes in an IPython Notebook

如何识别在当前笔记本会话中创建的所有 Pandas DataFrame?

像在 SAS 中看到 Work 库中的所有成员的东西是理想的。

谢谢。

如果你指的是内存,试试这样的东西:

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

或类似的。

解决方案

%who DataFrame

说明

所有对象

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

In [1]:

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

%who 显示所有使用过的名字:

In [2]:
%who
a    b   c   

方便地作为列表:

In [3]:
%who_ls

Out[3]:
['a', 'b', 'c']

或 table 数据类型:

In [4]:
%whos

Variable   Type    Data/Info
----------------------------
a          int     10
b          str     abs
c          list    n=3

DataFrame 过滤器

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']