用于data.world的python库
datadotworld的Python项目详细描述
快速启动
安装
您可以直接从pypi使用 pip 安装它:
pip install datadotworld
也可以安装库,包括熊猫支持:
pip install datadotworld[pandas]
如果您使用conda来管理您的python发行版,您可以从社区维护的[conda forge]安装( https://conda forge.github.io/ )频道:
conda install -c conda-forge datadotworld-py
配置
此库需要data.world api身份验证令牌才能工作。
一旦在下面启用python,就可以在data.world上获取身份验证令牌 集成>;python
要配置库,请运行以下命令:
dw configure
或者,可以通过 dw_auth_token 环境变量提供令牌。 在MacOS或Unix计算机上,运行(用前面获得的令牌替换下面的 <;your_token>; ):
export DW_AUTH_TOKEN=<YOUR_TOKEN>
加载数据集
load_dataset()函数有助于在本地文件系统上维护数据集的副本。 它将下载给定数据集的数据包 并将其存储在 ~/.dw/cache下。当随后使用时, load_dataset() 将使用存储在磁盘上的副本,并将 脱机工作,除非使用 force-update=true 或 auto-update=true 调用它。 强制更新=真 将无条件覆盖本地副本。 自动更新=真 仅当data.world上有更新版本的数据集时,才会覆盖本地副本。
加载后,数据集(数据和元数据)可以通过 load\u dataset() 返回的对象方便地访问。
首先导入 datadotworld 模块:
importdatadotworldasdw
然后,调用 load_dataset() 函数,下载一个数据集并在本地使用它。 例如:
intro_dataset=dw.load_dataset('jonloyens/an-intro-to-dataworld-dataset')
数据集对象允许通过三种不同的属性访问数据:原始数据、表和数据帧。 每个属性都是一个映射(dict),其值类型为 bytes , list 和 pandas.dataframe , 分别是。值在加载后被延迟加载和缓存。他们的钥匙是文件的名字 包含在数据集中。
例如:
>>>intro_dataset.dataframesLazyLoadedDict({'changelog':LazyLoadedValue(<pandas.DataFrame>),'datadotworldbballstats':LazyLoadedValue(<pandas.DataFrame>),'datadotworldbballteam':LazyLoadedValue(<pandas.DataFrame>)})
重要信息 :并非数据集中的所有文件都是表格式的,因此有些文件将仅通过 原始数据 公开。
表是行的列表,每个行都由列名到其各自值的映射(dict)表示。
例如:
>>>stats_table=intro_dataset.tables['datadotworldbballstats']>>>stats_table[0]OrderedDict([('Name','Jon'),('PointsPerGame',Decimal('20.4')),('AssistsPerGame',Decimal('1.3'))])
您还可以使用 describe 函数查看与文件或整个数据集关联的元数据。 例如:
pip install datadotworld0
查询数据集
query() 函数允许使用 sql 或 sparql 查询语言实时查询数据集。
要查询数据集,请调用 query() 函数。 例如:
pip install datadotworld1
查询结果对象允许通过类型为 json , list 和 pandas.dataframe 。
例如:
pip install datadotworld2
表是行的列表,每个行由列名到它们各自的值的映射(dict)表示。 例如:
αα-α13要使用sparql进行查询,请使用 查询调用 query() ,否则,它将假定 查询是一个SQL查询。
与数据集的情况一样,您可以使用 describe() 查看与查询结果关联的元数据。 功能。
例如:
pip install datadotworld4
使用文件
open_remote_file() 函数允许您在 data.world数据集。
写入文件
从 open_remote_file() 调用返回的对象类似于 将用于写入本地文件-它有一个 write() 方法,并将内容发送到该方法 方法将远程写入文件。
pip install datadotworld5
当然,编写文本文件不是data.world的主要用例-您需要编写 数据!从 open_remote_file() 返回的对象应该可以在任何正常情况下使用 在写模式下使用本地文件句柄-以便可以使用它序列化熊猫的内容 数据帧 到CSV文件…
pip install datadotworld6
或者,将一系列 dict 对象作为json行文件编写…
pip install datadotworld7
或者把一系列的dict对象写成csv…
pip install datadotworld8
最后,如果打开 二进制模式下的文件…
pip install datadotworld9
读取文件
您还可以以类似的方式从文件中读取数据
pip install datadotworld[pandas]0
从文件读入通用解析库也很自然-以"r"模式打开时, file对象充当文件中行的迭代器:
pip install datadotworld[pandas]1
读取二进制文件也很自然-在"rb"模式下打开时, read() 返回 文件作为字节数组,文件对象作为字节的迭代器:
pip install datadotworld[pandas]2
其他API功能
python包装器由apiclient类实现。要获取实例,只需调用 api_client 。 例如:
pip install datadotworld[pandas]3
客户端当前实现以下功能:
- 创建数据集
- 更新数据集
- 替换数据集
- 获取数据集
- 删除数据集
- 通过URL添加文件
- 附加记录
- 上传文件
- 上传文件
- 删除文件
- 同步文件
- 下载数据集
- 下载文件
- 获取用户数据
- 获取有贡献的数据集
- 获取喜欢的数据集
- 获取数据集
- 获取有贡献的项目
- 获取喜欢的项目
- 获取项目
- 获取项目
- 创建项目
- 更新项目
- 替换项目
- 添加链接的数据集
- 删除链接的数据集
- 删除项目
- 深入了解
- 为项目获取见解
- 创建洞察力
- 更换洞察力
- 更新洞察力
- 删除洞察力
有关 apiclient 可用于的一些示例,请参见下文。
从url添加文件
add_files_via_url() 函数可用于将文件从url添加到数据集。 这可以通过指定 文件 作为字典来实现,其中键是所需的文件名,每个项是包含 url的对象 , 说明 和标签
例如:
pip install datadotworld[pandas]4
将记录附加到流
函数append_record() 允许您将json数据追加到与数据集关联的数据流中。流不需要预先创建。第一次在追加操作中使用streamid时会自动创建流。
例如:
pip install datadotworld[pandas]5
流的内容将作为相应数据集的一部分显示为.jsonl文件。
您可以使用 帮助(客户端)