我有一個非常大的(800行)OpenRefine數據集。一個單元格包含多個不同的值,但具有一致的結構(請參閱下面的示例),其數據通過與json數組相似的逗號分隔。我想創建一個新的多值列,其中只包含特定類別的元素,例如Creator或Subject。在下面的例子中,我想創建一個名爲Item Creator的新列,其中只包含Dana M. Ashley和John Smith,這兩個列在文本中。到目前爲止,我已經嘗試了表達式forEach(value.split(","), v, v.contains("Creator:"))
,並且我得到了一個數組來識別包含Creator的段,但我還不知道如何將該字符串文本提取到新列中。幫助將不勝感激。使用多值字段中的選定子字符串創建新列
Publisher: American Federation of Teachers, Creator: Dana M. Ashley, Creator: John Smith, Subject: Prosocial behavior, Subject: Program development, Subject: Behavior problems, Subject: Classroom techniques, Subject: Student behavior, Subject: School culture, Subject: Educational environment, Subject: Positive Behavior Supports, Resource Type: Text, Language: English, Audience: Educator, Format: pdf
謝謝歐文。我並不清楚 - 我瞭解創建新列的過程,但是在那裏,我非常重視從分割中獲取真實的數組項,並將它們轉換爲相關新列中的文本。以下是我使用我列出的GREL公式時在預覽中顯示的示例。 - '[錯誤,真實,真實,假,假,假,假,假,假,假,假,假,假,假,假,假,假,假,假] – user3206
如果您在GREL中使用'過濾器'來代替'forEach',您將獲得值而不是真/假 –
這就是我正在尋找的答案。非常感謝。 – user3206