gpt4 book ai didi

python-3.x - 用 Pandas 处理重复数据

转载 作者:行者123 更新时间:2023-12-04 15:38:28 25 4
gpt4 key购买 nike

大家好,我在使用 pandas python 库时遇到了一些问题。基本上我在读csv 用 pandas 归档并想要删除重复项。我已经尝试了所有方法,但问题仍然存在。

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

我希望能够删除基于列的重复值上面的数据框,所以我会得到来自每个国家和大陆的独特值(value)这样所需的输出将是:

 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)

最佳答案

看来简单的分组就可以解决您的问题。

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', 'Canada', 'Unitied States', 'France'],
'continent': [na, na, a, e, na, na, e]})

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

Dataframe after group by

Retailer 列现在显示countrycontinent 组合出现的次数。您可以通过 `df = df[['country', 'continent']].

删除它

关于python-3.x - 用 Pandas 处理重复数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58923432/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com