分析零星云数据
arche的Python项目详细描述
拱形
pip install arche
arche(发音为arkey)有助于使用一组定义的规则(例如:
- 使用json模式验证
- 覆盖范围(项、字段、分类数据,包括布尔值和枚举)
- 副本
- 垃圾符号
- 两种工作的比较
我们在scrapinghub和其他工具中使用它,以确保刮取数据的质量
安装
arche需要jupyter环境,同时支持jupyterlab和笔记本ui
对于jupyterlab,您需要正确安装绘图扩展
然后只需pip install arche
为什么
连续检查刮取数据的质量。例如,如果你抓取了一个网站,一个典型的方法就是用arche验证数据。您还可以创建一个模式,然后使用json schema" rel="nofollow">spidermon设置https://github.com/scrapinghub/arche/issues。
更改
最新版本显示在顶部。每个版本都显示:
- 添加了:新的类、方法、函数等
- 已更改:附加参数、输入或输出更改等
- 已修复:不会更改记录的行为的错误修复
注意,最上面的版本是github上未发布的master分支中的更改。项目后面的括号显示了更改参与者的名称或github id。
【0.3.6】(2019-07-12)
添加
- 类别规则,带有显示每个字段的唯一值和计数的绘图。默认情况下,
report_all()
仅包含具有小于或等于10个唯一值的字段。请参见https://arche.readthedocs.io/en/latest/nbs/rules.html"category fields,"100 - 分类文档
更改
arche.report_all()
默认不缩短报表,添加了short
参数。- 数据与dash和spidermon一致:
u type,_key
字段从dataframe、raw data、basic schema、104、106中删除 df.index
现在存储>键
basic_json_schema()
与已删除的作业一起工作
开始
支持集合112枚举
被计算为类别
标记,18垃圾符号
搜索嵌套字段的str表示,而不是展开的df,130- 显示实际覆盖率差异(负/正),而不是绝对值,114
已修复
arch.glance()
,88- 模式验证错误中的项链接,89
- 类别图上的空NaN条,93
数据质量报告()
,95- 如果包含项0,112
删除
- 每项回复比率规则
- 已弃用
expand
参数并删除了flat_df
,因为垃圾规则
处理嵌套数据本身,133
【0.3.5】(2019-05-14)
添加
arche()
支持任何带有项目指令的iterable,修复jsonschema一致性,83items.from_array
从iterables读取原始数据,83
更改
- 如果直接从pandas df读取,则将原始数据存储在numpy数组中。请参见gotchashttp://pandas.pydata.org/pandas docs/stable/user-guide/gotchas.html对整数na的支持
已修复
删除
【0.3.4】(2019-05-06)
已修复
- basic_json_schema()失败,类型为long
1.0
types,80
【0.3.3】(2019-05-03)
添加
- 接受数据帧作为源或目标,69
更改
- 数据质量报告绘制的是相同的"字段覆盖率",而不是绿色的"刮除字段覆盖率"
- 剧情主题由GGPLOT2改为Seaborn,62
- 同一目标和源引发错误,之前是警告
- 通过的规则标记为绿色通过。
已修复
- 联机文档现在呈现图形https://arche.readthedocs.io/en/latest/,41
- 错误颜色返回
report_all()
删除
- 已弃用arche.basic_json_schema(),请使用
basic_json_schema()
- 已将quickstart.md删除为冗余-文档保存在笔记本中
[0.3.2](2019-04-18)
添加
- 允许直接从BitBucket读取私有原始架构,58
更改
- 在打印图形之前删除进度小部件
- 新Plotly V4 API
已修复
- 失败的
比较相同url的价格
当url为nan时
,67 - Jupyter笔记本中的空图表,63
删除
- 报废项目历史图表
[0.3.1](2019-04-12)
已修复
- 由于缺少plotlyjs,61
[0.3.0](2019-04-12)
已修复
- 大尺寸笔记本,袖扣替换为Plotly和iPython,39
更改
- 字段覆盖率现在打印为条形图,9
- 字段计数重命名为覆盖率差异,结果为2个条形图,9,51:
- "作业统计信息"字段中的覆盖范围计数,它反映两个作业的每个字段的覆盖范围
- 覆盖范围差异大于5%这将打印覆盖范围之间的5%差异(以前是比率差异)
- 比较刮削的类别重命名为类别覆盖率差异,并为每个类别生成2个条形图,52:
字段的覆盖范围
反映两个作业字段的值计数(类别)覆盖范围字段的覆盖率差异大于10%,显示类别覆盖率之间的10%差异
- 布尔字段plots布尔字段的覆盖范围反映两个作业的布尔字段的规格化值计数的图形,53
删除
袖扣
相关性- 已弃用
category\u字段
tag
[2019.03.25]
添加
- changes.md
- 新的
arche.rules.duplicates.find_by()
按所选列查找重复项
import arche
from arche.readers.items import JobItems
df = JobItems(0, "235801/1/15").df
arche.rules.duplicates.find_by(df, ["title", "category"]).show()
basic_json_schema().json()
以json格式打印模式result.show()
打印规则结果,例如
from arche.rules.garbage_symbols import garbage_symbols
from arche.readers.items import JobItems
items = JobItems(0, "235801/1/15")
garbage_symbols(items).show()
- 笔记本到文档
更改
- 标记规则返回未使用的标记,2
basic_json_schema()
将模式打印为python dict
已弃用
arche().basic_json_schema()
已弃用,取而代之的是arche.basic_json_schema()
删除
已修复
arche().basic_json_schema()
不使用项目号
参数
2019.03.18
- 未经更改的最新版本更新