用熊猫处理重复数据

大家好,我在使用pandas python库时遇到了一些问题。基本上我在读csv  熊猫文件,并希望删除重复项。我已经尝试了一切,问题仍然存在。

import sqlite3
import pandas as pd
import numpy
connection = sqlite3.connect("test.db")

## pandas dataframe
dataframe = pd.read_csv('Countries.csv')
##dataframe.head(3)

countries = dataframe.loc[:,['Retailer country','Continent']] 

countries.head(6)

其输出将是:

 Retailer country Continent
-----------------------------
0 United States    North America
1 Canada           North America
2 Japan                    Asia
3 Italy                   Europe
4 Canada           North America
5 United States    North America
6 France                  Europe

我希望能够根据来自的列删除重复的值 上面的一个数据框,这样我就可以从每个国家和大陆获得像这样的独特价值 这样所需的输出将是:

 Retailer country Continent
-----------------------------
0 United States    North America
1 Canada           North America
2 Japan                    Asia
3 Italy                   Europe
4 France                  Europe

我尝试了其中提到的一些方法:Using pandas for duplicate values,环顾四周,意识到可以使用df.drop_duplicates()函数,但是当我使用下面的代码和df.head(3)函数时,它将显示只有一行。我该怎么做才能获得那些唯一的行并最终遍历它们?

countries.head(4)
country = countries['Retailer country']
continent = countries['Continent']
df = pd.DataFrame({'a':[country],'b':[continent]})
df.head(3)
qqqqj 回答:用熊猫处理重复数据

似乎一个简单的分组方式可以解决您的问题。

import pandas as pd
na = 'North America'
a = 'Asia'
e = 'Europe'
df = pd.DataFrame({'Retailer': [0,1,2,3,4,5,6],'country': ['Unitied States','Canada','Japan','Italy','Unitied States','France'],'continent': [na,na,a,e,e]})

df.groupby(['country','continent']).agg('count').reset_index()

Dataframe after group by

Retailer列现在显示发生countrycontinent组合的次数。您可以通过df = df [[''country','continent']]删除它。

本文链接:https://www.f2er.com/3077638.html

大家都在问