OpenRefine を使用してジオコーディングしています。OpenStreetMaps からデータのデータセット構造にデータをプルしました
座標に「この列に基づく列」を追加しています。display_name に「Rheinland-Pfalz」が含まれていることを確認し、含まれている場合は、緯度と経度を抽出します。つまり、pair.lat + ',' + ペアロン。これを繰り返したいのですが、方法がわかりません。私は次のことを試しました:
if(display_name[0].contains("Rheinland-Pfalz"), with(value.parseJson()[0], pair, pair.lat + ',' + pair.lon),"nothing")
しかし、インデックス [0] ごとにこれを実行したいと思います。誰か助けていただければ幸いです。
編集:答えてくれてありがとうb2m。取得した座標に対応する display_name を抽出するにはどうすればよいでしょうか。一致ごとに出力をdisplay_name lat、lonにしたい(つまり、「Rheinland-Pfalz」が含まれています。これは、すでに生成された一致と一致させたい文字列を含む別の列があるためです。
たとえば、b2m のコードを使用して出力に display_name を組み込むと、2 つの一致が得られます。
Schaumburg, Balduinstein, Diez, Rhein-Lahn-Kreis, Rheinland-Pfalz, Deutschland 50.33948155,7.9784308849342604 Schaumburg, Horhausen, Flammersfeld, Landkreis Altenkirchen, Rheinland-Pfalz, Deutschland 52.622319,14.58652
行ごとに、別の列に別の文字列があります。ここでのエントリは「Rhein-Lahn-Kreis」です。上記の 2 つの一致をフィルタリングして、私の文字列を含むものだけを他の列に保持したいと考えています。この場合は "Rhein-Lahn-Kreis" ですが、他の列のエントリは行ごとに異なります。これが明確であることを願っています。