如何查看Dask DataFrame的数据预览?

时间:2017-03-23 12:22:55

标签: python dataframe dask preview

我从Pandas DataFrame创建了Dask DataFrame,并在其上应用了一些函数。当我尝试使用

查看数据时
 df.head()

花了太多时间。如何查看数据框?

1 个答案:

答案 0 :(得分:2)

这实际上取决于数据框背后的计算。

df.head()命令仅执行从数据帧中获取几行数据所需的操作。这通常非常快。例如,如果我们从Parquet或CSV文件中读取大型数据帧,那么我们只需要加载第一个数据块以获得前几行。

df = dd.read_csv('...')
df.head()  # this is relatively fast

然而,如果我们的数据帧更复杂,可能是懒惰的shuffle或set_index操作的结果,那么我们可能真的需要在我们获得前几行之前读取和处理所有数据。

df = df.set_index('some-column')
df = df.merge(some_other_df)
df.head()  # this is slow, because it has to do the set_index and merge

您始终可以便宜地查看元数据(列名,类型,任务数和分区数)。

>>> df
Dask DataFrame Structure:
                       close     high      low     open
npartitions=505                                        
2008-01-02 09:00:00  float64  float64  float64  float64
2008-01-03 09:00:00      ...      ...      ...      ...
...                      ...      ...      ...      ...
2009-12-31 09:00:00      ...      ...      ...      ...
2009-12-31 16:00:00      ...      ...      ...      ...
Dask Name: from-delayed, 1010 tasks

坚持

如果您的数据适合RAM(或者如果您在群集上,则分布式RAM),那么您还应该坚持使用内存。这将使事情变得非常快。

df = df.persist()

但是,如果你没有有足够的内存,那么这可能会降低你的机器速度。