Openrefine:通过计数进行文本分面
Openrefine: text facet by counting
我有一个 巨大的 文件,主要由书籍元数据(作者、标题、日期、url)组成。我的问题是我想对作者姓名(经常重复:一个作者可以有数百条记录)进行操作,并且我想对这些作者中具有超过 X 条记录的子集进行操作。
例如,我有 200 条与 "William Shakespeare" 相关的记录,但只有一条 1 记录 "John Black",等等。关键是,这是一个经典的幂律,我有成千上万的作者,其中大多数有 1-2 条记录。
使用 "Text facet" > "count" 是不可能的,因为我的电脑死机了。
是否有查询仅根据记录的数量获取某些记录的文本方面?
使用以下 GREL 表达式创建自定义文本构面(将 COLUMNS_NAME
替换为您的实际列名):
facetCount(value, "value", "COLUMN_NAME") > 100
您可以编辑比较(在示例中每个计数大于 100)。
要仅显示完全匹配的计数,您需要使用两个 ==
,如下所示:
facetCount(value, "value", "COLUMN_NAME") == 100
我有一个 巨大的 文件,主要由书籍元数据(作者、标题、日期、url)组成。我的问题是我想对作者姓名(经常重复:一个作者可以有数百条记录)进行操作,并且我想对这些作者中具有超过 X 条记录的子集进行操作。
例如,我有 200 条与 "William Shakespeare" 相关的记录,但只有一条 1 记录 "John Black",等等。关键是,这是一个经典的幂律,我有成千上万的作者,其中大多数有 1-2 条记录。
使用 "Text facet" > "count" 是不可能的,因为我的电脑死机了。
是否有查询仅根据记录的数量获取某些记录的文本方面?
使用以下 GREL 表达式创建自定义文本构面(将 COLUMNS_NAME
替换为您的实际列名):
facetCount(value, "value", "COLUMN_NAME") > 100
您可以编辑比较(在示例中每个计数大于 100)。
要仅显示完全匹配的计数,您需要使用两个 ==
,如下所示:
facetCount(value, "value", "COLUMN_NAME") == 100