我有一个喜欢和不喜欢的歌曲的数据集。共有8764首不喜欢的歌曲和2213首不喜欢的歌曲,共计11000行。我有很多复制喜欢的歌曲,但我希望复制是最多2000-5000首歌曲,我很确定没有任何重复不喜欢的歌曲。但是,当我使用相同的track_name、first_artist_ duration_ms组合删除重复行时,将删除10904行,只剩下196行。生成的数据集从第8700行开始。我哪里出问题了?

import pandas as pd
data = pd.read_csv('data 1.csv')
# Number of rows before dropping duplicates
print(len(data)) # 11000
# Number of duplicate rows
print(len(data.loc[data.duplicated(subset=['track_name', 'first_artist', 'duration_ms'])]['track_name'])) # 10904
# Dropping the duplicate tracks
data.drop_duplicates(subset=['track_name', 'first_artist', 'duration_ms'], keep='last', inplace=True)
# Number of unique rows
print(len(data)) # 196发布于 2022-05-30 13:20:42
您能找到并提供一些您希望保留但没有保留的示例(提供数据格式,而不是截图)。我测试了你的代码,它似乎对我有用。
data = {
'Artist' : ['An Artist', 'Another Artist', 'Last Artist', 'An Artist'],
'Track_Name' : ['A Track', 'Another Track', 'Last Track', 'A Track'],
'Duration_MS' : [1000, 2000, 3000, 1000],
'Disliked_Artist' : ['A Disliked Artist', 'Another Disliked Artist', 'Last Disliked Artist', 'A Different Disliked Artist']
}
df = pd.DataFrame(data)
df.drop_duplicates(keep = 'last', subset=['Track_Name', 'Artist', 'Duration_MS'])因此,更多的信息可能有助于解决您可能存在的任何疑问/问题。
https://stackoverflow.com/questions/72434744
复制相似问题