2024-10-17 08:35:57 发布
网友
我有一个包含以下列的数据集:
Country, Year, Population, Suicide case, Country GDP
问题:我想为每个国家计算(自杀案例/人口)*100
我的方法:
import pandas as pd fileName = pd.read_csv("File Path") pd.groupby("Country")
我应该如何为上面的计算扩展代码?你知道吗
这里有一个例子。也许会更好,但这应该对你有用。你知道吗
import pandas as pd df = pd.DataFrame({"Country":["France", "UK", "France", "UK"], "Population":[1, 2, 3, 4], "Suicide case":[5, 3, 6, 2]}) df_grouped = df.groupby("Country").sum() (df_grouped["Suicide case"]/df_grouped["Population"])*100
还有一个更简洁的方法是:
df.groupby('Country').apply(lambda x: x['Suicide case'].sum()/ float(x['Population'].sum())*100)
如果我正确理解了您的问题,那么您可以尝试以下代码以获得所需的结果:
fileName = fileName.groupby(['Year','Country']).sum() fileName['New_var'] = (fileName['Suicide case']/ fileName['Population'])*100
你还需要在组中输入年份,否则年份也会得到聚合。你知道吗
这里有一个例子。也许会更好,但这应该对你有用。你知道吗
还有一个更简洁的方法是:
如果我正确理解了您的问题,那么您可以尝试以下代码以获得所需的结果:
你还需要在组中输入年份,否则年份也会得到聚合。你知道吗
相关问题 更多 >
编程相关推荐