1

OpenRefine を使用して、Twitter のメタデータをエッジ リストにフォーマットし、Gephi で読み取れるようにしています。ユーザーメンションの関連付けやユーザーとハッシュタグの関連付けを調べたい場合は、簡単に機能します。しかし、今は共同ハッシュタグを研究したいと思っています。

これを OpenRefine で行うのは (私にはよくわかりませんが) 少しトリッキーで、助けが必要です。私のデータは、ユーザーのユーザー名、ツイートで使用されたハッシュタグのコンマ区切り文字列の 2 つの列を持つ csv 形式です。OpenRefine でユーザー ハッシュタグ エッジ リストを取得するには、ハッシュタグ列で「多値セルの分割」を使用してから、ユーザー列で「入力」を使用します (非常に簡単です)。ハッシュタグ ハッシュタグ エッジ リストを取得する方法がわかりません。ハッシュタグ列で「複数値のセルを分割」を使用して、ツイートで言及されているすべてのハッシュタグの新しい行を取得できます。しかし、ハッシュタグとハッシュタグの共起のすべての組み合わせを取得するために、行を「埋める」にはどうすればよいでしょうか?

例:

データ:

User         Hashtags
Dario        Data mining, R, OpenRefine

望ましい結果:

Hashtag 1    Hashtag 2

Data mining  R
Data mining  OpenRefine
R            OpenRefine
4

2 に答える 2

1

OpenRefine Google グループにも投稿されています。

forEach と forRange を組み合わせてこれを行うことができると思います。コンマ区切りのハッシュタグを含むセルで次の変換を試してください。

forEachIndex(value.split(","),i,v,forRange(i+1,value.split(",")).length(),1,j,v.trim() + "," + 値. split(",")[j].trim()).join("|")).join("|")

これにより、一意の組み合わせのパイプ区切りリストが生成されます。次に、「分割多値セル」を使用できます

于 2015-03-06T14:29:52.813 に答える
0

これが私の提案です。

あなたの例を使用しましょう:

User         Hashtags
Dario        Data mining, R, OpenRefine

1°/列ハッシュタグで「列内の多値セルを分割」という機能を使用する

次のようなものが得られるはずです:

User         Hashtags
Dario        Data mining
             R
             OpenRefine

2°/ Hashtags 列でこの変換を試してください:

if((row.record.cells["Hashtags"].value[-1])==value,value+","+(row.record.cells["Hashtags"].value[0]),value+","+(row.record.cells["Hashtags"].value[-1]))

3°) 列を「,」セパレーターに基づいて列に分割します。

わたしにはできる。

編集 :

このソリューションは、次のように簡単に削除できる重複エントリを生成します。

  • | を使用して、複数の値を持つセルを結合します。区切り記号 (たとえば)。

あなたは次のようなものを手に入れます

1.

Dario

Data mining,Prout|R,Prout|OpenRefine,Prout|Prout,Data mining

2.

Essai

Data mining,R|R,Data mining
  • 次に、区切り記号 | に基づいてセルを列に分割します。

  • 最後に、最初のハッシュタグ列を削除します。

于 2015-03-05T21:29:19.313 に答える