2013-11-04 174 views
3

我正在R的一个小项目中工作,我需要屏蔽或加密数据框中变量的名称。我有我的数据帧中的一个结构:如何加密名称为R的字符串变量R

Name    Value.R 
Bank of Italy   200 
Josh Peters   300 
Fist Bank of Americas 500 
Neil Rodes   520 
Oil Team World  700 

我找了保护名字在name变量的方式,这样的事情:

Name    Value.R 
BXXk of IXXXy   200 
JXXh PXXXrs   300 
FXXt BXXk of AmXXXcas 500 
NXXl RXXes   520 
OXl TXXm WXXld  700 

我不知道是否有可能在R做出感谢您的帮助。

+1

摘要包可能感兴趣。另外,一个高度相关的问题http://stackoverflow.com/questions/5806308/how-do-i-encrypt-data-in-r – sckott

+0

加密的例子是否足够满足您的标准? – Dason

+1

特别是@ScottChamberlain:library(digest);摘要(“意大利银行”,“crc32”)''给出''8e7332c5“'(其他哈希是加密优越但更长) –

回答

2

这是一个选项靠拢向您展示:

x <- c('Bank of Italy', 'First Bank of Americas') 
gsub('([A-Z])([a-z]+)([a-z])', '\\1X\\3', x) 
# [1] "BXk of IXy"  "FXt BXk of AXs" 

如果混淆的期望不是太高(这似乎并不如此),你也可以使用abbreviate

x <- c("Bank of Italy", 
"Josh Peters", 
"Fist Bank of Americas", 
"Neil Rodes", 
"Oil Team World") 
abbreviate(x) 
# [1] "BnoI" "JshP" "FBoA" "NlRd" "OlTW"