将一些文件上传到我的项目并创建目录后,我可以在Find and Add Data
部分看到文件列表。但是,没有链接Insert to code
。对于csv
,json
,tar.gz
类型的文件以及目录中的数据集,情况都是如此。我做错了什么?
答案 0 :(得分:3)
插入代码选项仅适用于您在对象存储服务中上传的数据。
我发现你在DSX中使用Catalog进行存储。
目录仍处于测试状态,目前数据资产不会添加或支持插入代码。
可以在此处添加增强请求: - https://datascix.uservoice.com/forums/387207-general
如果使用对象存储创建项目作为存储,您将看到csv文件的代码插入。
要从目录中读取,您需要使用projectUtil。
目录数据资产被视为项目资源,因此要访问它,您需要访问令牌。
首先,生成令牌以访问目录资源。 转到项目设置并创建访问令牌,然后清除下一个单元格 单击从笔记本中上面的3个点插入项目令牌 您将看到如下生成的代码
生成的代码只是创建项目上下文。
import com.ibm.analytics.projectNotebookIntegration._
val pc = ProjectUtil.newProjectContext(sc, "994b03fa-XXXXXX", "p-XXXXXXXXXX")
让我们列出可用文件。
val fileList = ProjectUtil.listAvailableFilesData(pc)
fileList.indices.foreach( i => println(i + ": " + fileList(i)))
所以fileList包含你的文件名。 您可以直接使用该文件的名称作为第二个参数。
val df = ProjectUtil.loadDataFrameFromFile(pc, fileList(1))
或
val df1 = ProjectUtil.loadDataFrameFromFile(pc, "co2.csv")
您将在下面看到: - "创建DataFrame,这需要一些时间...... DataFrame已创建。"
df.show()
您将看到内容。
下面的doc也有python和R的例子。  参考projectUtil: - https://datascience.ibm.com/docs/content/local/notebookfunctionsload.html
谢谢, 查尔斯。