调用rcloud.notebook.by.name()时为什么需要[1]?

时间:2018-04-04 22:43:00

标签: r rcloud

RCloud函数 rcloud.notebook.by.name() 中,为什么在this example中的函数之后需要[1]:

rcloud.execute.asset(name="mtcars.R",
    notebook=rcloud.notebook.by.name(
        user="rclouddocs",
        name="Basic Functionality/Create Reusable Functions/Notebook With R Function in Assets")[1]
)

1 个答案:

答案 0 :(得分:2)

此函数返回的不仅仅是笔记本ID。它还返回查询未使用的路径的任何部分。

所以在rcloud.social上

rcloud.notebook.by.name(
    user="rclouddocs",
    name="Basic Functionality/Create Reusable Functions/Notebook With R Function in Assets") 

返回

     id                                 extra.path
[1,] "6c90abc418dec48ec4e9016ad0187f95" ""        

但是如果你在末尾添加更多路径:

rcloud.notebook.by.name(
    user="rclouddocs",
    name="Basic Functionality/Create Reusable Functions/Notebook With R Function in Assets/blablabla

你得到了

     id                                 extra.path  
[1,] "6c90abc418dec48ec4e9016ad0187f95" "/blablabla"

这由notebook.R在内部使用;它是允许按用户,笔记本路径和资产名称提取资产的代码,例如使用以下URL从同一笔记本中提取mtcars.R

https://rcloud.social/notebook.R/rclouddocs/Basic%20Functionality/Create%20Reusable%20Functions/Notebook%20With%20R%20Function%20in%20Assets/mtcars.R