问题标签 [anonymize]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
722 浏览

csv - 2TB CSV 中的帐号匿名化

我有 ~2TB 的 CSV,其中前2 列包含两个 ID 号。这些需要匿名化,以便数据可用于学术研究。匿名化可以(但不一定)是不可逆的。这些不是医疗记录,所以我不需要最花哨的密码算法。

问题:

标准散列算法会生成很长的字符串,但我将不得不做一堆 ID 匹配(即“对于包含 ID XXX 的数据中的行子集,做...)”来处理匿名数据,所以这并不理想. 有没有更好的办法?

例如,如果我知道有大约 1000 万个唯一帐号,是否有使用整数集 [1:10million] 作为替换/匿名 ID 的标准方法?

计算限制是数据可能会在 32 核 ~500GB 服务器机器上匿名化。

0 投票
3 回答
2184 浏览

oracle - Oracle:使用临时表、只读权限的纯 PL/SQL 数据提取和匿名化

我正在尝试创建一个 PL/SQL 脚本,该脚本从 oracle 生产数据库中提取根“对象”以及所有子对象和其他相关信息。目的是创建一组测试数据来重现生产中遇到的问题。由于数据保护法,数据在提取时需要匿名 - 对象名称、某些类型的 id 和货币金额需要替换。

我试图创建一个或多个临时翻译表,其中包含原始值和匿名版本。然后我会将真实数据与翻译表连接起来,并在需要的地方输出匿名值。

然而,我在使用这种方法时遇到了几个问题——似乎几乎不可能将 oracle PL/SQL 表与真正的数据库表连接起来。我对生产数据库的访问受到严格限制,因此我无法创建全局临时表、声明 PL/SQL 之外的类型或任何类似的东西。

我尝试声明自己的 PL/SQL 类型失败,出现了这个问题中提到的问题- 由于权限有限,该解决方案对我不起作用。

是否有一种纯 PL/SQL 方式不需要花哨的权限来实现上述目标?

请注意:上面的代码示例被简化了很多,实际上不需要单独的翻译表——实际上我需要在几个不同的查询中访问原始值和翻译值,所以我不想到处“重新计算”翻译。

0 投票
1 回答
345 浏览

google-analytics - 谷歌分析跟踪单页和匿名 IP

我想跟踪单个页面并匿名 IP。只有一个 URL 和 5 个部分。

我不确定,如果我可以像这样组合功能:

0 投票
1 回答
420 浏览

sed - 查找信用卡号并在设定位置替换字符

我有一个包含信用卡号(16 个字符)的文件,我想找到它们并用“X”替换除前 6 个和后 4 个数字之外的所有内容。

将轻松找到文件中包含的所有信用卡并将其替换为“XXXX”

但我想找到信用卡并仅用“X”替换字符串的第 7-12 个字符,因此该文件将包含像 123456XXXXXX7890 这样被屏蔽的信用。

示例输入行:

示例输出行:

0 投票
1 回答
31 浏览

postgresql - 将实时数据恢复到测试数据库后,为了我的实时数据的数据安全,我如何在 PostgreSQL 中对测试数据库中的数据进行清理

我正在使用 PostgreSQL。将实时数据恢复到测试数据库后,我的目标是在测试数据库中恢复的数据应该被清理以删除敏感信息,但仍然代表当前数据分布。

0 投票
1 回答
744 浏览

node.js - 如何创建匿名电子邮件地址

我需要在我的网站中实现匿名电子邮件地址功能,就像 airbnb 和 homeaway 一样。

他们为租客和房东之间的每次对话创建一个匿名地址。

例如 homeaway 有 09834b6-5apf-4731-3932-8ef5232dsd742a@messages.homeaway.com

而airbnb有541kfgry7hnh343gnjvv23423t08k4g@reply.airbnb.com

(前导 @ 的 id 已更改)。

Airbnb参考: http ://blog.airbnb.com/introducing-anonymized-email-addresses-airbnb/

我正在使用 node.js 和 sendgrid 发送电子邮件。我应该使用的这背后的过程是什么?

0 投票
2 回答
260 浏览

r - 通过匹配和替换匿名化段落变量中的名称

我正在分析一所学校的学生成绩单数据库。我的数据集包含大约 3000 条记录,其结构类似于下面的示例。每一次观察都是一位老师对一位学生的评价。每个观察都包含一个三句话的叙述性评论。

为了分享我的分析结果,我想从评论中删除提及学生姓名的内容,并将其替换为其他姓名。在一个理想的世界中,为了可重复性,我还想分享一个匿名版本的数据库。

学生姓名的不一致使用(名字与昵称与全名)以及学生姓名的非结构化使用对于像我这样的业余爱好者来说非常棘手。我解决这个问题的尝试是将评论作为语料库中的文档处理,并使用编写一个使用tm::removeWords但对我不起作用的函数。提前致谢!

示例数据(此处表的输入)

所需数据

注意

四个月前,我问了这个问题的一个版本,没有得到答复。我认为这将有助于展示我的解决方案,但也许该tm软件包并未广泛使用。所以这里是另一个镜头。

0 投票
1 回答
81 浏览

r - 摘要 - 仅修改一个时在所有行中获取不同的值

我正在尝试创建一个闪亮的应用程序,允许用户选择列来加密如果数据相同,则每行中的值在后续运行中应该始终相同。即,如果客户名称 =“John”,则在运行此过程时您总是会得到“A”,如果客户名称更改为“Jon”,您可能会得到“C”……但如果改回“John”,您会再次得到 A。这将用于“屏蔽”敏感数据以进行分析。

此外,如果有人可以通过存储稍后使用的密钥来“解密”这些列的方法......那将不胜感激。

我尝试完成此操作的简单版本(需要摘要库):

示例输出:

修改后的数据框(在 John 中删除了“h”):

新输出:

我所期望的:

我是否误解了这是如何工作的?如果我将相同的逻辑应用于多个列,我会为未更改的列获得相同的值,但对于具有修改值的列,问题仍然存在。我试图对摘要函数进行矢量化,以确保我的 sapply 函数不是具有相同结果的问题。有任何想法吗?

0 投票
2 回答
110 浏览

r - 在 R 中 - 如何用其他字母替换字符串中的所有字母?

我需要以一种非常具体的方式匿名化名称,以便整个字符串的格式仍然相同(保留空格、连字符、句点),但所有字母都被打乱了。我想始终如一地将所有 A 替换为 C,将所有 D 替换为 Z,依此类推。我该怎么做?

0 投票
0 回答
502 浏览

nginx - 在 nginx error.log 中匿名 IP 日志记录

对于 access.log,可以: 匿名化 nginx 中的 IP 日志记录?

但是,是否也有可能在 error.log 中匿名 IP 日志记录?