当我尝试通过graphlab的sframe数据结构获取属于userid = 1列的数据集行时sf[sf['userid'] == 1]
,
我收到了行,但是我也收到了这条消息,[? rows x 6 columns]
Note: Only the head of the SFrame is printed. This SFrame is lazily evaluated.
You can use sf.materialize() to force materialization.
我已经阅读了文档,但我无法理解sf.materialize()的作用!有人可以帮助我。
答案 0 :(得分:0)
该注释告诉您,操作(在您的情况下过滤)不会立即应用于整个日期,而是仅应用于其中的某些部分。这是为了节省资源 - 如果操作没有达到预期的效果,则需要通过对整个可能大的数据集应用操作来浪费资源,但仅限于所需的部分(在您的情况下,在默认情况下输出) )。物化强制操作在整个数据集上的传播。
答案 1 :(得分:0)
@harishaaram这是 graphlab 库中的一种方法,因此用作
gl.SFrame.materialize(sf)
dat=sf[sf['userid'] == 1]
dat