【问题标题】:How to use seaborn library with pydatatable?如何将 seaborn 库与 pydatatable 一起使用?
【发布时间】:2019-04-20 09:51:33
【问题描述】:

我已经开始将 pydatatable 用于我的一个数据分析项目,在这里我在使用 seaborn 库制作 pydatatable 对象图表时遇到了一些问题。

pydatatable 在当前版本 0.8 中是否支持 seaborn 可视化?

我试图用图表来可视化一列:直方图、箱线图等。如下面的示例代码所示

np.random.seed(1)
dt_test = dt.Frame(np.random.randn(1000))
sns.boxplot(x="CO",data=dt_test)
plt.show()

在上面的代码块上运行时,它应该显示所提供列的箱线图,但在这里它给出了一个错误

AttributeError: 'Frame' 对象没有属性 'get'

你能写信给我如何解决这个问题吗?你有没有尝试过将这两个包一起使用?

【问题讨论】:

    标签: python py-datatable


    【解决方案1】:

    seaborn 库尚不支持与 datatable 互操作。就其本身而言,数据表 Frame 可将自身转换为 numpy 数组。因此,任何执行np.asarray(data) 的代码都可以使用数据表框架。出于这个原因,您会看到 datatable 当前可以在某些函数中使用,但不能在其他函数中使用:这完全取决于内部代码如何处理传入的数据。

    例如,您的示例可以重写为

    sns.boxplot(x=dt_test[:, "C0"])
    

    它现在可以工作了。

    更一般地说,您可以轻松地将数据表 Frame 转换为外部库可以理解的格式之一:

    frame.to_pandas()
    frame.to_numpy()
    frame.to_list()
    frame.to_dict()
    

    【讨论】:

      猜你喜欢
      • 2020-09-01
      • 2015-10-23
      • 2016-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-16
      • 2013-08-17
      • 2019-10-21
      相关资源
      最近更新 更多