Я запускаю эту ячейку в IPython Notebook:
# salaries and teams are Pandas dataframe
salaries.head()
teams.head()
В результате я получаю вывод только teams
кадра данных, а не обоих salaries
и teams
. Если я просто запускаю, salaries.head()
я получаю результат для salaries
кадра данных, но при запуске обоих операторов я просто вижу результат teams.head()
. Как я могу это исправить?
Ответы:
вы пробовали
display
команду?from IPython.display import display display(salaries.head()) display(teams.head())
источник
display()
автоматически предоставляется пользователю без импорта».from IPython.display import display
Более простой способ:
from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = "all"
Это избавляет вас от необходимости многократно набирать "Display"
Скажем, ячейка содержит это:
from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = "all" a = 1 b = 2 a b
Тогда вывод будет:
Out[1]: 1 Out[1]: 2
Если мы используем
IPython.display.display
:from IPython.display import display a = 1 b = 2 display(a) display(b)
Результат:
1 2
То же самое, но без
Out[n]
детали.источник
get_ipython().ast_node_interactivity = 'all'
, а не заменять свойство класса постоянной строкой!Предоставлять,
print salaries.head() teams.head()
источник
print salaries.head()
плохо отформатирован.IPython Notebook показывает только последнее возвращаемое значение в ячейке. Самое простое решение для вашего случая - использовать две ячейки.
Если вам действительно нужна только одна ячейка, вы можете сделать такой взлом :
class A: def _repr_html_(self): return salaries.head()._repr_html_() + '</br>' + teams.head()._repr_html_() A()
Если вам это нужно часто, сделайте это функцией:
def show_two_heads(df1, df2, n=5): class A: def _repr_html_(self): return df1.head(n)._repr_html_() + '</br>' + df2.head(n)._repr_html_() return A()
Применение:
Версия для более чем двух голов:
def show_many_heads(*dfs, n=5): class A: def _repr_html_(self): return '</br>'.join(df.head(n)._repr_html_() for df in dfs) return A()
Применение:
источник
Перечисляя все решения:
sys.displayhook(value)
, к которому подключается IPython / jupyter. Обратите внимание, что это немного отличается от вызоваdisplay
, поскольку включаетOut[n]
текст. Это отлично работает и на обычном питоне!display(value)
, как в этом ответеget_ipython().ast_node_interactivity = 'all'
. Это похоже на подход, использованный в этом ответе, но лучше .Сравнивая их в интерактивном сеансе:
In [1]: import sys In [2]: display(1) # appears without Out ...: sys.displayhook(2) # appears with Out ...: 3 # missing ...: 4 # appears with Out 1 Out[2]: 2 Out[2]: 4 In [3]: get_ipython().ast_node_interactivity = 'all' In [2]: display(1) # appears without Out ...: sys.displayhook(2) # appears with Out ...: 3 # appears with Out (different to above) ...: 4 # appears with Out 1 Out[4]: 2 Out[4]: 3 Out[4]: 4
Обратите внимание, что поведение в Jupyter точно такое же, как и в ipython.
источник