Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to create md5 hash of a column in R?

Tags:

r

md5

I have a data frame

ID, VID  1 , xyz-0001 

I would like to replace VID with md5 hash of VID column value.

How would i do that in R? I looked at digest package but can not figure out how to put that in R Code

Thanks

like image 355
user3056186 Avatar asked Feb 10 '14 19:02

user3056186


2 Answers

Package digest absolutely suitable for this task, so firstly we load it:

library(digest) 

Then create/load/etc. test data.frame df:

txt <- "ID,VID 1,xyz-0001 2,abc-0987"  df <- read.table(header=T, text=txt, sep=",", stringsAsFactors=F) df 

The initial data looks like:

  ID      VID 1  1 xyz-0001 2  2 abc-0987 

Then we can use function digest with specified algorithm:

df$VID <- sapply(df$VID, digest, algo="md5") df 

Now we have hashed column VID in df:

  ID                              VID 1  1 44e3a9cf85f802ef50f18e64e01c5e32 2  2 c576ff180b2046c1a3ae939766588fd3 
like image 155
redmode Avatar answered Sep 18 '22 11:09

redmode


With an addition to redmode's answer:

library(digest) txt <- "hello world" hash <- digest(txt, algo="md5", serialize=F) hash 

[1] "5eb63bbbe01eeed093cb22bb8f5acdc3"

Setting serialize option to FALSE makes your results consistent with what you would get from online hash generators such as this or this.

like image 32
agondiken Avatar answered Sep 19 '22 11:09

agondiken