首页 > 解决方案 > 如何使用“重复且唯一”制作新列

问题描述

我的.csv档案

IP
192.168.1.1
192.168.1.1
192.168.1.2
192.168.1.3

如果在提到的新列中找到重复项。

预期输出:

IP             un_dup
-------------------------
192.168.1.1    duplicate
192.168.1.1    duplicate
192.168.1.2    unique
192.168.1.3    unique

我的代码来查找重复项

IP = [('192.168.1.1'),
      ('192.168.1.1'),
      ('192.168.1.2'),
      ('192.168.1.3')]
dfIP = pd.DataFrame(IP, columns=['IP'])
dfIPdup = dfIP[dfIP.duplicated()]

#logic is we got the duplicate and now add a column and mention 'duplicate' or unique

标签: pythonpandas

解决方案


这应该有效:

import pandas as pd
import numpy as np

df = pd.read_csv('input.csv')
df['un_dup'] = np.where(df['IP'].duplicated(keep=False),'duplicate', 'unique')

print(df)

推荐阅读