首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为单个SFrame元素赋值

为单个SFrame元素赋值
EN

Stack Overflow用户
提问于 2016-02-22 08:11:40
回答 1查看 1.6K关注 0票数 2

我希望为SFrame中的单个元素(即单行和列)赋值。我正在使用Python并导入graphlab。

我创建了一个维度为16364行x37列的SFrame。列'test‘包含零。

我使用了以下语法来设置值: sf1 = 3;

如果我输入: sf1

然后我看到正确的值,即"3“

但如果我输入: sf

然后,我只看到所有列'test‘的值为零。

同样适用于sf.head()或sf‘’test‘或sf’‘test’..head()

我不明白为什么一种语法显示"3“的值,而另一种语法却没有。sf1 3或0中的值是?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-22 15:35:06

SFrames是不可变的,因此它们实际上不支持项分配。你在这里看到差异的原因是

代码语言:javascript
复制
sf[1]['test']

实际上根本不是指SFrame。"sf1“返回一个字典,其中包含与SFrame列名匹配的键,以及与SFrame第二行匹配的值。当您将一个数字分配给"sf1“时,您正在更改字典中返回的"test”键的值,因此SFrame "sf“不包含在分配中。只引用列"test“的第二个值并分配值"3”的正确方法是:

代码语言:javascript
复制
sf['test'][1] = 3

它将返回此错误:

代码语言:javascript
复制
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-5-c52dab41d5dd> in <module>()
----> 1 sf['test'][1] = 3

TypeError: 'SArray' object does not support item assignment
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35548668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档