关于Python数据维度与数据格式化
(一)维度
维度是与事物“有联系”的概念的数量,根据“有联系”的概念的数量,事物可分为不同维度。
1.基于维度的数据分类
根据组织数据时与数据有联系的参数的数量,数据可分为一维数据、二维数据和多维数据。
1.2 一二维数据的存储与读写
1)数据存储
一维数据呈线性排列,一般用特殊字符分隔。
例如:
使用空格分隔:成都 杭州 重庆 武汉 苏州 西安 天津
使用逗号分隔:成都,杭州,重庆,武汉,苏州,西安,天津
使用&分隔:成都&杭州&重庆&武汉&苏州&西安&天津
一维数据的存储需要注意以下几点:
同一文件或同组文件一般使用同一分隔符分隔。
分隔数据的分隔符不应出现在数据中。
分隔符为英文半角符号,一般不使用中文符号作为分隔符。
二维数据可视为多条一维数据的集合,当二维数据只有一个元素时,这个二维数据就是一维数据。
CSV(Commae-Separeted Values,逗号分隔值)是国际上通用的一二维数据存储格式。
CSV格式规范:
以纯文本形式存储表格数据
文件的每一行对应表格中的一条数据记录
每条记录由一个或多个字段组成
字段之间使用逗号(英文、半角)分隔
CSV也称字符分隔值,具体示例如下:
姓名,语文,数学,英语,理综
刘婧,124,137,145,260
张华,116,143,139,263
邢昭林,120,130,148,255
鞠依依,115,145,131,240
黄丽萍,123,108,121,235
赵越,132,100,112,210
2)数据读取
Windows平台中CSV文件的后缀名为.csv,可通过Office Excel或记事本打开
Python在程序中读取.csv文件后会以二维列表形式存储其中内容
csv_file = open(‘score.csv’)
lines = []
for line in csv_file:
line = line.replace(‘\n’,’’)
lines.append(line.split(‘,’))
print(lines)
csv_file.close()
3)数据写入
将一、二维数据写入文件中,即按照数据的组织形式,在文件中添加新的数据。
(二)多维数据的格式化
为了直观地表示多维数据,也为了便于组织和操作,三维及以上的多维数据统一采用键值对的形式进行格式化。 网络平台上传递的数据大多是高维数据,JSON是网络中常见的高维数据格式。JSON格式的数据遵循以下语法规则:
数据存储在键值对(key:value)中,例如“姓名”: “张华”。
数据的字段由逗号分隔,例如“姓名”: “张华”, “语文”: “116”。
一个花括号保存一个JSON对象,例如{“姓名”: “张华”, “语文”: “116”}。
一个方括号保存一个数组,例如[{“姓名”: “张华”, “语文”: “116”}]。
JSON模块——json
利用json模块的dumps()函数和loads()函数可以实现Python对象和JSON数据之间的转换。
函数 | 功能 |
---|---|
dumps() | 对Python对象进行转码,将其转化为JSON字符串 |
loads() | 将JSON字符串解析为Python对象 |
Python对象与JSON数据转化时的类型对照表
Python对象 | JSON数据 |
---|---|
dict | object |
list,tuple | array |
str,unicode | string |
int,long,float | number |
True | true |
False | false |
None | null |
dumps()函数
使用dumps()函数对Python对象进行转码:
>>> import json
>>> pyobj = [[1, 2, 3], 345, 23.12, 'qwe', {'key1':(1,2,3), 'key2':(2,3,4)}, True, False, None] >>> jsonstr = json.dumps(pyobj)
>>> print(jsonstr)
>>> [[1, 2, 3], 345, 23.12, "qwe", {"key1": [1, 2, 3], "key2": [2, 3, 4]}, true, false, null]
loads()函数
使用loads()函数将JSON数据转换为符合Python语法要求的数据类型。
>>> import json
>>> pyobj = [[1, 2, 3], 345, 23.12, 'qwe', {'key1':(1,2,3), 'key2':(2,3,4)}, True, False, None] >>> jsonstr = json.dumps(pyobj)
>>> print(jsonstr)
>>> [[1, 2, 3], 345, 23.12, "qwe", {"key1": [1, 2, 3], "key2": [2, 3, 4]}, true, false, null]
ps:
以上就是对Python数据维度与格式化的详细介绍了,
如果这篇文章对您有帮助,可以在下方进行留言;
下面的赏是对我最大的鼓励。
您的鼓励就是我最大的动力!
资料参考于课本,csdn开发者论坛,博客园开发者论坛…
转载请注明出处https://lil-sum.github.io/, 感谢配合.