2017-05-01 18 views
0

私はRで新しく、私は自分のデータセットでいくつかの列をハッシュしようとします。私たちはデータをCSVファイルにエクスポートしており、プライバシーの理由から一部の列をハッシュする必要があります。forループでR opensslパッケージハッシュを使用

次のステートメント(opensslパッケージを使用)を使用すると、ハッシュが機能します。

df$field1 <- sha256(df$field1, key=sleutel) 

これは、フィールド1をsha256でdata.frameからハッシュします。キー(sleutel)は数行前に生成されます。この行は私に私が望む結果を与える。

私たちには多くのエクスポートがあり、ハッシュするフィールドはDBで利用できます。私は "to_encrypt"変数(クラス=文字)でこれらのフィールドを読むことができます。

私はそれらをforループで使いたいと思っていますが、うまくいかないようです。私のforループはこれです:

for (i in to_encrypt){ 
    i <- paste("df$",i,sep="") 
    i <- sha256(i, key=sleutel) 
} 

これはうまくいくと思います。エラーはありませんが、フィールド(この例ではfield1)はハッシュされていません。

アイデア?

答えて

0

paste("df$",i,sep="")を使用していると、df$field1df$field2などの列で作業するわけではありません。代わりに、抽出し[[とコラム再割り当て:の使用に見ウィル、

for (i in to_encrypt){ 
    df[[i]] <- sha256(df[[i]], key=sleutel) 
} 
+0

おかげで、働いていました[[ – Jeroen

関連する問題