我正在尝试屏蔽DataFrame列中的所有IP。我有一个带有包含IP地址的列的DataFrame。出于隐私和安全原因,当DataFrame显示为表格或使用Plotly绘制图形时,我需要对前两个八位字节进行隐藏/掩码。您认为哪种方法最好?我能想到的唯一方法是增加一列并使用apply函数将IP处理为X.X.1.1格式。
答案 0 :(得分:0)
您的方法似乎没有错。您还可以复制数据集并加密副本(以防保存新数据集)。
或者,如果您只想保留隐私,则可以使用匿名化技术。当您想保密时,它将在较大的项目中为您提供帮助,以下是一些链接
https://en.wikipedia.org/wiki/Data_anonymization https://iapp.org/resources/article/guide-to-basic-data-anonymization-techniques/
答案 1 :(得分:0)
import pandas as pd
from pandas.compat import StringIO
print(pd.__version__)
csvdata = StringIO("""IP
192.168.1.10
192.168.1.11
192.168.1.12
192.168.1.13""")
df = pd.read_csv(csvdata)
df['IP'] = df['IP'].apply(lambda x: "X.X."+".".join(x.split('.')[2:4]))
print(df)
会产生
0.24.2
IP
0 X.X.1.10
1 X.X.1.11
2 X.X.1.12
3 X.X.1.13
这可能是在DataFrame