首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >复制h2o框架

复制h2o框架
EN

Stack Overflow用户
提问于 2018-05-03 20:00:22
回答 1查看 2K关注 0票数 2

我非常习惯R中的h2o框架,但在h2o的某些方面进行调整时遇到了一些困难。

我知道,您可以使用.copy()方法创建熊猫数据的副本,这样在更新新数据时,也不会更新原始数据。h2o帧有类似的功能吗?更复杂的是,h2o框架似乎不符合函数的本地/全局环境规则。

下面是一个例子,如果我能够创建一个框架的.copy,或者函数本地环境没有更新我的全局环境,它将解决我的问题。如果我在R中创建了同样的东西,那么它的行为与预期完全一致,并且实际上没有修改我原来的h2o框架中的列,那么我如何才能让python以同样的方式工作呢?

代码语言:javascript
复制
##### A FUNCTION TO CHANGE THE VALUE OF A COLUMN
def test_func(train_df,
              var):

    train_df[var] = train_df[var].log()

    return(train_df)

##### TRY TO CREATE A NEW COPY OF THE FRAME WITH THE COLUMN CHANGED
new_df = test_func(train_df = old_df,
                   var = 'target')

##### THE COLUMN IN BOTH new_df AND old_df has both been changed. 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-03 20:44:14

如果您想要创建数据文件的副本,可以使用h2o.deep_copy(data, xid)。(其中xid是为后端H2OFrame提供的字符串id )

如果您有一个dataframe df并且确实有

代码语言:javascript
复制
old_df = df
new_df = df

old_df和new_df都将指向后端的同一个h2oframe (df),因此对old_df的任何更改都将反映在new_df中。

如果希望将更改保持单独,则可以:

代码语言:javascript
复制
new_df = h2o.deep_copy(df, 'new_df')
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50162987

复制
相关文章

相似问题

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