因为我每次输入数据框的名称时都安装了更新版本的熊猫,例如
df[0:5]
要查看前几行,它会给我列的摘要、其中的值数量以及数据类型。
我如何才能看到表格视图?(我正在使用 iPython 顺便说一句)。
提前致谢!
注意:要显示前几行,您还可以使用head
.
但是,如果列数多于display.max_columns
或长于display.width
(行类似),pandas 将显示摘要视图,因此您需要增加这些以显示表格视图。您可以使用 set 选项更改这些,例如:
pd.options.display.max_columns = 50
请参阅此熊猫问题:“IPython 笔记本中宽数据帧的不直观默认行为”。
或者,为您可以使用的前几列显示前几行:
df.head(5)[df.columns[0:4]]
# alternatively
df.iloc[:5, :4]
简短回答:如果您的版本高于 0.11.0,请尝试使用以下方式设置显示宽度:
pd.set_option('display.width', 200)
长答案:当然,线程已经 4 个月大了,但我昨晚遇到了同样的问题。在我的工作中运行良好的 ipython 笔记本不会在家里显示 html 表格。
首先,检查您的版本:
import pandas as pd
pd.__version__
我的回来了:'0.11.0'
接下来,检查您的设置:
pd.describe_option('display')
这将为您提供所有可能的显示选项和当前默认值的长列表。您可能不得不尝试更改默认值。使用较大的值以使其正常工作,然后根据需要缩减。
Display.width 是重要的一个。我把这些放在进口的顶部。
pd.set_option('display.height', 500)
pd.set_option('display.max_rows', 500)
pd.set_option('display.max_columns', 500)
pd.set_option('display.width', 200)
第一步: 我正在使用它在 Eclipse 的 pydev 中获取 GUI。确保您的 pydev 设置了 GUI。使用本教程:http ://popdevelop.com/2010/04/setting-up-ide-and-creating-a-cross-platform-qt-python-gui-application/这样做。
第二步: 从这里举例最快的方法是从 Pandas 数据框中填充 QTableView 并进行一些修改, 运行以下代码一次:
import pandas as pd
from PyQt5 import QtCore, QtGui ,QtWidgets
class PandasModel2(QtCore.QAbstractTableModel):
"""
Class to populate a table view with a pandas dataframe
"""
def __init__(self, data, parent=None):
QtCore.QAbstractTableModel.__init__(self, parent)
self._data = data
def rowCount(self, parent=None):
return self._data.shape[0]
def columnCount(self, parent=None):
return self._data.shape[1]
def data(self, index, role=QtCore.Qt.DisplayRole):
if index.isValid():
if role == QtCore.Qt.DisplayRole:
return str(self._data.iloc[index.row(), index.column()])
return None
def headerData(self, col, orientation, role):
if orientation == QtCore.Qt.Horizontal and role == QtCore.Qt.DisplayRole:
return self._data.columns[col]
return None
view = QtWidgets.QTableView()
一旦完成。您只需键入以下命令即可拥有 GUI
view.setModel(PandasModel2("your dataframe name"))
view.show()
很有帮助,谢谢。我在Wakari托管的 Notebook 中浏览了这个ulmo + pandas 示例,我对为什么有些表格只是给出摘要而不是呈现为 HTML 感到困惑。Wakari 中的 display.width 选项似乎默认为 80,因此在决定打印摘要之前,表格不必非常宽。这是一个令人困惑的隐藏模式。以下修复了它:
pandas.set_option('display.width',500)
display.max_rows 和 display.max_columns 默认为 60 和 20,所以我保持原样。这是 Pandas 0.11.0 的版本。