【发布时间】:2020-08-07 20:23:51
【问题描述】:
我创建了一个 Pandas 数据框
import pandas as pd
students = [('jack', 34, 'Sydeny'),
('Riti', 30, 'Delhi'),
('Aadi', 16, 'New York'),
('Riti', 30, 'Delhi'),
('Riti', 30, 'Delhi'),
('Riti', 30, 'Mumbai'),
('Aadi', 40, 'London'),
('Sachin', 30, 'Delhi')
]
# Create a DataFrame object
dfObj = pd.DataFrame(students, columns=['Name', 'Age', 'City'])
我想从上面的 DataFrame 中找到重复值,所以使用 inbuild duplicated() 来查找重复值
duplicateRowsDF = dfObj[dfObj.duplicated()]
得到了这个
Duplicate Rows except first occurrence based on all columns are :
Name Age City
3 Riti 30 Delhi
4 Riti 30 Delhi
然后我想更改 duplicateRowsDF Name 列中的值,所以我尝试遍历 duplicateRowsDF
for i in range(len(duplicateRowsDF)):
duplicateRowsDF.at[i,'Name']= 'rohit'
但 duplicateRowsDF 的内容并没有改变,而是添加了两个带有新索引的新闻行
Name Age City
3 Riti 30.0 Delhi
4 Riti 30.0 Delhi
0 rohit NaN NaN
1 rohit NaN NaN
我想要像
这样的输出Name Age City
3 rohit 30.0 Delhi
4 rohit 30.0 Delhi
有什么建议吗?
【问题讨论】:
标签: python-3.x pandas dataframe duplicates