数据分析小实践:统计每个国家存在心理健康问题的平均年龄

Posted 故笙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据分析小实践:统计每个国家存在心理健康问题的平均年龄相关的知识,希望对你有一定的参考价值。

# -*- coding:utf-8 -*-
"""
统计每个国家存在心理健康问题的平均年龄
"""
import csv
import matplotlib.pyplot as plt
import numpy as np
import matplotlib
data_depth = "./data/survey.csv"
dict = {}
result = {}
matplotlib.use(\'qt4agg\')#指定默认字体  
matplotlib.rcParams[\'font.sans-serif\']=[\'SimHei\']
matplotlib.rcParams[\'font.family\']=\'sans-serif\'
with open(data_depth,\'r\',newline=\'\') as data:
    rows = csv.reader(data)
    for i,row in enumerate(rows):
        if i == 0:
            continue
        country = row[3]
        age = row[1]
        if country not in dict:
            dict[country] = [0,0]
        dict[country][0] = dict[country][0] + int(row[1])
        dict[country][1] = dict[country][1] + 1

for key in dict:
    result[key] = dict[key][0] / dict[key][1]
sorted_result = sorted(result.items(),key=lambda asd:asd[1],reverse=True)
del sorted_result[0]
print(sorted_result)

x_data = []
for i in sorted_result:
    x_data.append(i[0])
y_data =[]
for i in sorted_result:
    y_data.append(i[1])
print(sorted_result.__len__())

fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.bar(np.arange(10),y_data[:10],color=\'b\',alpha = 0.5)
ax.set_xticks(np.arange(10)+0.4)
ax.set_xticklabels(x_data[:10])
ax.set_xlabel(\'国家\')
ax.set_ylabel(\'平均年龄\')
ax.set_title("排名前10的国家存在心理健康问题的科技工作者平均年龄")
plt.show()

  

以上是关于数据分析小实践:统计每个国家存在心理健康问题的平均年龄的主要内容,如果未能解决你的问题,请参考以下文章

使用日期进行复杂的统计

R语言处理1975-2011年的人口信息

关于女性健康问题方面的论文大家都可以投的国家级刊物是哪个?

每个国家/地区是不是有“平均”时区?

使用子查询和分组依据每天计算每个国家/地区的 DAU 平均值

计算空间连接后每个国家/地区的空间平均值