检查一列的值是否存在于之前的列中
Check if a column's value exist in previous columns
我有如下数据框,
d = {'Person1': ['Apple', 'Mango'], 'Person2': ['Orange', 'Apple'], 'Person3': ['Orange', 'Apple'], 'Person4': ['Orange', 'Apple'], 'Person5': ['Watermelon', 'Mango']}
df1= pd.DataFrame(data= d)
Person1 Person2 Person3 Person4 Person5
0 Apple Orange Orange Orange Watermelon
1 Mango Apple Apple Apple Mango
我想检查一个人是否有相同的水果,如果没有找到则保留该值,
Person1 Person2 Person3 Person4 Person5
0 Apple Orange True True Watermelon
1 Mango Apple True True True
在 numpy
的帮助下,您可以:
import numpy as np
for i in range(len(df1)):
df1.iloc[i, :] = np.where(df1.iloc[i, :].duplicated() == False, df1.iloc[i, :], True)
输出将是:
Person1 Person2 Person3 Person4 Person5
0 Apple Orange True True Watermelon
1 Mango Apple True True True
我有如下数据框,
d = {'Person1': ['Apple', 'Mango'], 'Person2': ['Orange', 'Apple'], 'Person3': ['Orange', 'Apple'], 'Person4': ['Orange', 'Apple'], 'Person5': ['Watermelon', 'Mango']}
df1= pd.DataFrame(data= d)
Person1 Person2 Person3 Person4 Person5
0 Apple Orange Orange Orange Watermelon
1 Mango Apple Apple Apple Mango
我想检查一个人是否有相同的水果,如果没有找到则保留该值,
Person1 Person2 Person3 Person4 Person5
0 Apple Orange True True Watermelon
1 Mango Apple True True True
在 numpy
的帮助下,您可以:
import numpy as np
for i in range(len(df1)):
df1.iloc[i, :] = np.where(df1.iloc[i, :].duplicated() == False, df1.iloc[i, :], True)
输出将是:
Person1 Person2 Person3 Person4 Person5
0 Apple Orange True True Watermelon
1 Mango Apple True True True