By · Last updated 2026-06-05

ブログに戻るGDPRおよびコンプライアンス

CSV自由テキスト: PII研究データ共有GDPR

CSV形式で共有される研究データに含まれた自由テキストフィールド内のPIIの検出と管理。

June 5, 20267 分で読めます
research dataCSV anonymizationGDPR Article 89survey datadata sharing

列削除が見落とす盲点

2026年版に更新済み

研究データセットはCSVファイルとして大学間を行き来します。チームが共有用にCSVを準備するとき、作業は列ベースです。個人情報を探す。削除または置換する。

この方法は固定フィールドには有効です。「email」という列にはメールアドレスが入っている——削除。「phone」という列には電話番号が入っている——削除。「participant_name」という列には名前が入っている——コードに置き換える。

しかし、自由記述の回答欄は盲点です。ラベルの付いた列を削除しても、それらには触れません。

5,000行のアンケートには、構造化PII列が5つ、自由記述回答列が15あるかもしれません。構造化列には名前、メール、電話番号、ID、生年が含まれます。自由記述列にはコメント、メモ、提案が含まれます。

構造化列はクリーニングされます。自由記述列は生のまま残ります。しかし回答者はこのような3つの例のようなことを書きます。

1つ目:「ボストン・メディカル・センターの私の担当医、マリア・サントス博士は、この治療法は新しいものだと言いました。」2つ目:「2019年の事故以来、この問題を抱えています。」3つ目:「詳細についてはmargarett.wells@gmail.comで介護者に連絡できます。」

各エントリは実在の人物の名前を記載しています。健康情報や連絡先データを含むものもあります。これらはいずれも列ヘッダーには現れません。列削除では何も捕捉されません。

なぜこれがGDPR基準を満たさないのか

GDPR前文第26条は、匿名レコードを「いかなる人物にも結びつけることのできない」レコードと定義しています。基準は厳しいものです。再識別が合理的に不可能な場合にのみ、レコードは真に匿名と言えます。

構造化列はクリーンでも自由記述に実名が含まれるCSVは、このテストをパスしません。それらの名前は識別可能です。データセットは依然として個人データです。GDPR第89条の保護規則は引き続き適用されます。3つのリスクが生じます。

第89条の研究免除: 第89条は研究者が科学目的で個人データを処理することを、義務を軽減した形で認めています。ただし「適切な保護措置」がある場合に限ります。自由記述にPIIが残ったまま第89条を主張してファイルを共有することは、法的違反です。

倫理審査の承認: ほとんどのIRBや倫理委員会は、共有データセットに対して真の匿名化を求めます。部分的な作業——構造化列はクリーン、自由記述は生のまま——は通常このテストをパスしません。委員会は申請を却下することがあります。

データ共有協定: 機関間のDSAは必要な匿名化レベルを定めています。GDPR前文第26条を満たさない部分的な作業はDSAに違反する可能性があります。より広いプログラムへの位置づけについては法的コンプライアンス概要をご覧ください。

なぜ自由記述のクリーニングが難しいのか

自由記述の回答はPII検出の中で最も難しいターゲットに属します。その理由はここにあります。

文脈の中の名前: 「ボストン・メディカル・センターのマリア・サントス博士」は、人物と組織を特定するために固有表現認識(NER)が必要です。キーワードリストではこれを見つけられません。

物語の中の名前: 「ジョンの車が私の車にぶつかった」という文章は、実名を物語の中に置きます。それはデータフィールドではなく、ふとした言及で登場する人物です。NERだけが検出できます。

非標準フォーマット: 連絡先情報が「margaret ドット wells アット gmail まで連絡を」と書かれることがあります。単純なregexツールではこれを見逃します。

研究固有のエンティティ: 臨床調査には病院ID、サイトコード、地名が含まれることが多くあります。これらは一般的に見えても、回答者を特定することがあります。

パターンマッチングだけでは不十分です。真のアンケート匿名化にはNLPツールが必要です。技術的な選択肢についてはセキュリティ・コンプライアンスをご覧ください。

3大学からの実例

欧州3大学の研究チームが患者体験アンケートを実施しました。データセットには5,000人の回答者、3つの構造化PII列、8つの自由記述回答列がありました。目的はDSAとGDPR第89条に基づく機関間共有でした。

列削除のみの場合:

  • 構造化PII列:削除済み
  • 自由記述回答:生のまま
  • 主張:「PII列を削除済み」
  • 残存PII:47人の実名、コメント内の23件のメールアドレス、回答者を特定しうる18件の場所の参照

NLPベース検出の場合:

  • 構造化PII列:一貫したトークンで仮名化済み
  • 自由記述回答:47件の名前を置換、23件のメールをマスク、18件の場所参照を一般化(「ボストン・メディカル・センター」→「[医療機関]」)
  • 結果:GDPR前文第26条を満たすファイル
  • 倫理委員会が手法を承認
  • DPOがDSAコンプライアンスを確認

この差は重要です。最初の出力はクリーンに見えます。2番目の出力は実際にクリーンです。

共有前の5ステップ・プロトコル

アンケートやインタビューのファイルを共有する前に、これらのステップを実行してください。

ステップ1:各列にラベルを付ける すべての列を構造化PII、構造化非PII、自由記述回答のいずれかとしてマークします。書き留めます。

ステップ2:構造化PIIの処理 分析に不要なエントリを削除します。レコードの紐付けに必要なエントリを仮名化します。使用したコードを記録します。

ステップ3:自由記述列のスキャン すべての自由記述列にNLP検出を適用します。検出された各エンティティを確認します。どれが真のPIIかを確定します。

ステップ4:置換の適用 自由記述の出力で確認されたPIIを置換します。[人物][メール][場所]などの明確なラベルを使用します。

ステップ5:確認と文書化 出力から50〜100行をサンプリングします。自由記述エントリを手作業で確認します。簡単なメモを作成します:使用したツール、見つかったエンティティの種類、処理した列。倫理審査のためにデータセットと一緒に共有します。

これにより「名前の列を削除した」が明確で文書化されたプロセスに変わります。GDPR第89条と、ほとんどの倫理委員会が求める匿名化基準を満たします。関連ガイドについてはドキュメントハブをご覧ください。

出典

データを保護する準備はできましたか?

48言語で285以上のエンティティタイプを使用してPIIを匿名化し始めましょう。

About this page

We update this page when our platform or the law changes.

Read our founder note for how we work.

Each change shows up in the timestamp at the top.

Related reading

We follow these rules

  • GDPR (EU 2016/679).
  • ISO/IEC 27001:2022.
  • NIS2 (EU 2022/2555).
  • HIPAA safe harbor under 45 CFR § 164.514(b)(2).

Our promise

We do not sell your data.

We do not train models on your text.

We store your files in Germany.

You can delete your account at any time.

You own your work.

Where we run

Our servers live in Falkenstein, Germany.

We use Hetzner. They hold ISO 27001 certification.

All data stays in the EU.

Backups run every day.

Need help?

Email support@anonym.legal.

We reply within one business day.

How we test

We run a full check suite on every release.

Each surface gets its own sweep script and report.

Human reviewers spot-check the output each week.

We track recall and precision on a labelled set.

Bad runs block the deploy.

What we never do

  • We never sell your information to third parties.
  • We never train models on what you upload.
  • We never keep your work after you delete it.
  • We never share keys with any outside firm.
  • We never run ads inside the product.

Plans in plain words

We sell credits, not seats.

One credit covers one short job.

Long jobs use a few credits each.

You can top up at any time.

Unused credits roll over each month.

Read the plans page for current rates.

Who built this

A small team of engineers and lawyers built this.

We ship from Europe and work in the open.

Our founder note spells out why we started.

Where to start

How the parts fit

A browser add-on cleans text inside Chrome.

A Word plug-in handles drafts in Office.

A small desktop tool works on whole folders.

An agent protocol link feeds large models safely.

All four share one core engine and one rule set.

Words from our team

We started this work after a lunch about cookies.

One friend kept getting odd ads on her phone.

We asked why a court file leaked through a draft.

We sketched the first build on a napkin that week.

By month three we had a tiny demo for a friend.

She used it on her first case the next day.

Common questions we hear

Can the tool read scanned PDFs? Yes, with OCR.

Does it work on long files? Yes, in small chunks.

Can I roll my own rule set? Yes, save it as a preset.

Does it run offline? The desktop build runs offline.

Do you keep my files? No, the cloud build wipes after each run.

Will it learn from my work? No, we never train on inputs.

A short tour of the workflow

Upload a file or paste a snippet of prose.

Pick the entities you want gone from the draft.

Choose a method: replace, mask, hash, encrypt, or redact.

Press run and watch the side panel show each hit.

Skim the result and tweak any rule that misfired.

Save the cleaned file or send it to a teammate.