gdp数据分析

1 概述

本文主要分析china,usa,king,japan,russia5个国家的gdp,时间从1800-2040,后面的数据为预测数据,不准确。

2 绘制折线图

import pandas as pd
import matplotlib.pyplot as plt

data = pd.read_csv("line_animation.csv")
x = data.time

china = data.china
usa = data.usa
king= data.king
japan= data.japan
russia= data.russia

plt.plot(x, china,'k*-.',
         x, usa,'g*-.',
         x, king,'y*-.',
         x, japan,'r*-.',
         x, russia,'b*-.')
plt.legend(["china","usa","king","japan","russia"])
plt.show()

在这里插入图片描述

3 计算增速

使用pct_change函数
import pandas as pd
import matplotlib.pyplot as plt

data = pd.read_csv("line_animation.csv")
# 1800 - 2020 中间还是220年
start_year = 1949-1800
end_year = 2020-1800
data = data.iloc[start_year :end_year]

x = data.time
china = data.china.pct_change(1).fillna(0).apply(lambda x: round(x * 100, 2)).values
usa = data.usa.pct_change(1).fillna(0).apply(lambda x: round(x * 100, 2)).values
king = data.king.pct_change(1).fillna(0).apply(lambda x: round(x * 100, 2)).values
japan = data.japan.pct_change(1).fillna(0).apply(lambda x: round(x * 100, 2)).values
russia = data.russia.pct_change(1).fillna(0).apply(lambda x: round(x * 100, 2)).values

plt.plot(x, china, 'k*-.',
         x, usa, 'g*-.',
         x, king, 'y*-.',
         x, japan, 'r*-.',
         x, russia, 'b*-.')
plt.legend(["china", "usa", "king", "japan", "russia"])
plt.show()

在这里插入图片描述

4 五国综合分析

使用柱状图进行分析均值、方差、最大值、最小值

import pandas as pd
import matplotlib.pyplot as plt
data=pd.read_csv("line_animation.csv")
plt.rcParams['font.sans-serif']=['SimHei']

china_m=data.describe()["china"]["mean"]
usa_m=data.describe()["usa"]["mean"]
king_m=data.describe()["king"]["mean"]
japan_m=data.describe()["japan"]["mean"]
russia_m=data.describe()["russia"]["mean"]
plt.subplot(221)
plt.bar(["china","usa","king","japan","russia"],
        [china_m,usa_m,king_m,japan_m,russia_m],
        width=0.5,bottom=0,align='edge',color='g',
        edgecolor='r',linewidth=2)
plt.text(0-0.3 ,china_m +0.05,str(round(china_m,2)))
plt.text(0+0.7,usa_m,str(round(usa_m,2)))
plt.text(0+1.7 ,king_m ,str(round(king_m,2)))
plt.text(0+2.7 ,japan_m ,str(round(japan_m,2)))
plt.text(0+3.7 ,russia_m ,str(round(russia_m,2)))
plt.title("均值")

china_a=data.describe()["china"]["max"]
usa_a=data.describe()["usa"]["max"]
king_a=data.describe()["king"]["max"]
japan_a=data.describe()["japan"]["max"]
russia_a=data.describe()["russia"]["max"]
plt.subplot(222)
plt.bar(["china","usa","king","japan","russia"],
        [china_a,usa_a,king_a,japan_a,russia_a],
        width=0.5,bottom=0,align='edge',color='g',
        edgecolor='r',linewidth=2)
plt.title("最大值")

china_i=data.describe()["china"]["min"]
usa_i=data.describe()["usa"]["min"]
king_i=data.describe()["king"]["min"]
japan_i=data.describe()["japan"]["min"]
russia_i=data.describe()["russia"]["min"]
plt.subplot(223)
plt.bar(["china","usa","king","japan","russia"],
        [china_i,usa_i,king_i,japan_i,russia_i],
        width=0.5,bottom=0,align='edge',color='g',
        edgecolor='r',linewidth=2)
plt.title("最小值")


china_s=data.describe()["china"]["std"]
usa_s=data.describe()["usa"]["std"]
king_s=data.describe()["king"]["std"]
japan_s=data.describe()["japan"]["std"]
russia_s=data.describe()["russia"]["std"]
plt.subplot(224)
plt.bar(["china","usa","king","japan","russia"],
        [china_s,usa_s,king_s,japan_s,russia_s],
        width=0.5,bottom=0,align='edge',color='g',
        edgecolor='r',linewidth=2)
plt.title("方差")
plt.show()

在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王小葱鸭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值