我将如何在 Python Pandas 中解决这个问题?我会使用 Groupby 来解决问题 2 吗?我不需要代码中的答案,只需伪代码或操作解释就可以了。
Dataset 1
CITY POPULATION
BOSTON 645,966
NEW YORK 8,336,697
CHICAGO 2,714,856
Dataset 2
Newspaper City Readers
Boston Globe Boston, MA 245572
New York Times New York, NY 1865318
Daily News New York, NY 516165
New York Post New York, NY 500521
Chicago Sun-Times Chicago, IL 470548
Chicago Tribune Chicago, IL 414930
(按顺序)列出修改数据集 2 中“City”属性中每个值的操作,以便可以将其直接与数据集 1 中的“CITY”属性进行比较。
假设每个报纸读者都阅读一份报纸,并且该报纸来自他们的家乡。列出计算每个城市报纸读者总数的操作。
最佳答案
首先匹配城市名称
city_dict = {
'Boston, MA':'BOSTON'
'New York, NY': 'NEW YORK'
'Chicago, IL': 'CHICAGO'
}
dataset2['CITY'] = dataset['City'].map(city_dict)
然后按“城市”列对数据集 2 进行分组并对“读者”列求和
这是 Pandas documentation for groupby 的链接。本质上,您正在做与第一个示例相同的事情,只不过您仅按一列而不是两列进行分组,并且采用总和而不是平均值。如果您遇到困难,我可以给您一个代码示例,我知道您明确要求不要有一个代码示例。
关于Python Pandas 比较数据集中的属性并计算特定城市的总数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53746407/