如何将Seaborn库与pydatatable一起使用?

时间:2019-04-20 09:51:33

标签: python datatable

我已经开始将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:“框架”对象没有属性“获取”

您能在这里给我写信如何解决这个问题,您是否曾经尝试过将这两个软件包一起使用?。

1 个答案:

答案 0 :(得分:1)

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

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

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

它现在可以工作。

通常,您可以轻松地将数据表Frame转换为外部库可以理解的一种格式:

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