利用Python读取json数据并求数据平均值

要做的事情:一共十二个月的json数据(即12个json文件),json数据的一个单元如下所示。读取这些数据,并求取各个(100多个)城市年、季度平均值。

{
"time_point": "2014-01",
"area": "***",
"aqi": "71",
"pm2_5": "47",
"pm10": "69",
"rank": "7"
}

我通过两个步骤来实现这个事情,读取json并导入sqlite,按需要查找数据库数据并计算平均值。先导入数据库这个举动有些显得多余,但是也让数据井然有序地处理。

遍历文件夹12个json文件用os.walk。在解析了json数据(例如,j = json.load(f))后,发现这个json数据是分两层的,不过只要像dict一样索引就可以了,无非是索引两层(例如,data = j[‘rows‘],pm25 = data[i][‘pm2_5‘],其中i是json单元个数遍历)。接着就导入数据库,第一部分做完。

从数据库取值然后计算倒没什么,就是取值rows = conn.execute("select ****") for row in rows 遍历一下。有一个异常不得不提,最后平均值插入表时出现了:“sqlite3.ProgrammingError: You must not use 8-bit bytestrings unless you use a text_factory that can interpret 8-bit bytestrings (like text_factory = str). It is highly recommended that you instead just switch your application to Unicode strings.”          在Stack Overflow找到回答:connection =sqlite3.connect(...) connection.text_factory = str。也没深究,问题解决了。涉及到中文很容易出现这个毛病。

时间: 2024-08-28 00:51:47

利用Python读取json数据并求数据平均值的相关文章

接口自动化(三)--读取json文件中的数据

上篇讲到实际的请求数据放置在json文件内,这一部分记述一下python读取json文件的实现. 代码如下(代码做了简化,根据需要调优:可做一些容错处理): 1 import json 2 3 class operateJson(): 4 def __init__(self,jsonPath=None): 5 self.jsonPath = jsonPath #传入json文件路径 6 7 #读取json文件的内容 8 def readJson(self): 9 with open(self.j

《利用python进行数据分析》读书笔记--数据加载、存储与文件格式

输入输出一般分为下面几类:读取文本文件和其他更高效的磁盘存储格式,加载数据库中的数据.利用Web API操作网络资源. 1.读写文本格式的数据 自己感觉读写文件有时候"需要运气",经常需要手工调整.因为其简单的文件交互语法.直观的数据结构,以及诸如元组打包解包之类的便利功能,Python在文本和文件处理方面已经成为一门招人喜欢的语言.pandas提供了一些用于将表格型数据读取为DataFrame对象的函数.见下表: 下面大致介绍一下这些函数在文本数据转换为DataFrame时的一些技术

pyhton读取json格式的气象数据

原文关于读取pm25.in气象数据的pyhton方法,以及浅析python json的应用 以pm25.in网站数据为例. 1.方法介绍 首先感谢pm25.in提供了优质的空气污染数据,为他们的辛勤劳动点个赞.是python3.3,windows系统,读取数据的时候用到了python的json处理的4个方法,很经典常用.所谓4个方法是: a)       json.loads() 输入string,返回json. b)       json.dumps() 输入json类型的数据,返回包含jso

利用Python实现爬去彩票网站数据——小样

写这篇文章纯属自娱自乐. 主要是近期在自学如何利用Python解决IT运维的一些问题时,总是不得其门而入,为了增加学习兴趣,就想通过完成一个小小有趣的爬虫程序激励下自己,同时也把这次经历跟各位道友分享下. Technorati Tags: Python,爬网,彩票,数据,夏明亮 首先申明,本人不是专职coding的,所以,代码部分如果不符合专业审美,还请多多包涵:俺就是纯粹以实习那目标为基础的小白一枚:思路为先,抛砖引玉~ 步骤一:利用搜索引擎找到你需要的信息的网页资源 1. 打开百度搜索"彩票

利用Python进行数据分析 第6章 数据加载、存储与文件格式

学习时间:2019/10/20 周日下午17点开始.共23页,目标3天学完,每天8页,预期1021学完. 6.1 读写文本格式的数据 6.1.1 逐块读取文本文件 6.1.2 将数据写出到文本格式 6.1.3 处理分隔符格式 6.1.4 JSON数据 6.1.5 XML和HTML:Web信息收集 6.1.6 利用lxml.objectify解析XML 6.2 二进制数据格式 6.2.1 使用HDF5格式 6.2.2 读取Microsoft Excel文件 6.3 Web APIs交互 6.4 数

利用python进行泰坦尼克生存预测——数据探索分析

最近一直断断续续的做这个泰坦尼克生存预测模型的练习,这个kaggle的竞赛题,网上有很多人都分享过,而且都很成熟,也有些写的非常详细,我主要是在牛人们的基础上,按照数据挖掘流程梳理思路,然后通过练习每一步来熟悉应用python进行数据挖掘的方式. 数据挖掘的一般过程是:数据预览-->数据预处理(缺失值.离散值等)-->变量转换(构造新的衍生变量)-->数据探索(提取特征)-->训练-->调优-->验证 1 数据预览 1.1 head() 预览数据集的前面几条数据可以大致

关于python读取 json文件 转dict错误问题

晚上到家10点老大突然说有东西解决不了 说python 读取java生成的json文件字符编码 出问题 爬起来开电脑 弄了好久 试过了 with open rb encoding=utf-8等等 还试过了在Linux下尝试 文件强转utf8 以及 在编码一次 encodegbk 然后在编码 encodeutf8 种种都试过了. 发现找问题的方向偏了 最后问同学才知道 重点!!  .json 结尾的 不可以有 注释 有了注释就不是正经的json了 处理方法想到了一种 最笨的拼接字符串 回头微信问老

Python 读取json文件

创建json文件: 1 { 2 "fontFamily": "微软雅黑", 3 "fontSize": 12, 4 "BaseSettings":{ 5 "font":1, 6 "size":2 7 } 8 } 读取json文件: 1 import json 2 3 def loadFont(): 4 f = open("Settings.json", encodin

python读取json文件报 No JSON object could be decoded

def load(): with open('D:\\jiance.geojson') as json_file: data = json.load(json_file) return data 代码如上,读取json并load时报错: No JSON object could be decoded 解决方法: 可用Nodepad++将json文件打开并以UTF8无BOM格式保存,然后再次读取