Python数据分析读取常用库
文章目录
前言
随着人工智能的不断发展,数据分析这门技术也越来越重要,很多人都开启了学习数据处理,本文就介绍了数据读取的基础内容。 Numpy 是专门做数据科学计算的第三方库 Pandas 是专门做数据处理和读取的 Matplotlib 是专门做数据可视化的.etc提示:以下是本篇文章正文内容,下面案例可供参考
一、为什么使用Numpy?
示例:Numpy是一种第三方工具库,该工具是为了解决数据分析任务而创建的。
基于数组运算,效率高。
拥有许多高级函数,可以对数据进行高效处理。
可以进行线性代数相关运算。
1.数据读取
1.1 json读取文件
针对于json类文件有json库函数解决
代码如下(示例):
#coding:utf-8
import numpy as np
import json as js
#mode模式r读取为f
with open("路径名\文件名.json",encoding='utf-8',mode='r') as f :
f_read = f.read()#读取成字符串类型
data = js.loads(f_read)#参数只能是字符串类型解析
#存储数据
js_data = data[]#json是列表字典格式
with open("路径名\文件名.json",'w',encoding='utf-8') as f:
js.dump(js_data,f,indent=0)#js_data 写入f,不写入空格
f.close()
1.2 pandas读取文件
pandas是数据分析最核心的库之一.
基于numpy库pandas是python最强大的数据分析与探索工具。
1.2.1pandas常用数据结构
Series: ●由一组数据以及-组与之对应的数据标签(即索引)组成。
●可以通过pandas. Series来创建Series,每个Series可以看成是DataFrame的一个列
DataFrame:
●DataFrame是pandas基本数据结构,类似于数据库中表或者EXCEL中的表格数据格式
●DataFrame既有行索引,也有列索引,可以将其看成是多个Series构成的
●pandas内置了10多种数据源读取函数,常见的就是CSV和EXCEL
●pandas读取出来的数据直接是数据框格式,方便后续的数据处理和分析
●可以快速的将数据保存为CSV或者EXCEL格式
●参数较多,可以自行控制,但很多时候用默认参数
●读取CSV时,注意编码,常用编码为utf- 8,gbk,gbk2312等
1.2.2 pandas读取csv文件
代码如下(示例):
#coding:utf-8
import numpy as np
import pandas as pd
import os
"""
os.chdir()可以将我们的python路径改为将要读取数据的路径。
这样就避免读取的时候,我们会写很长的路径名。
提升代码的可阅读性.
"""
os.chdir(r'数据所在的路径名')
'''
读取相应格式文件数据方式
出现中文用gbk格式
encoding编码格式
dtype使相关内容读入变成所希望的类型
nrows只读取前10行(第一行表头除外)
header把第0行作为表头
na_values = 10 把含10的一行读为缺省值
'''
df1 = pd.read_csv('文件名.csv',dtype={'数据内容名':str,'xxx_id':str},nrows=10,header=0,na_values=10)
#访问数据方式
df1.head(5)#查询前5行
df1.tail(5)#查询后5行
#保存
df1.to_csv('data_all.csv', index = False)
df1.to_excel('data_all.xlsx', index = False)
1.2.3 pandas读取excel文件
excel比csv多了选取哪张表
代码如下
#coding:gbk
import pandas as pd
import os
"""
os.chdir()可以将我们的python路径改为将要读取数据的路径。
这样就避免读取的时候,我们会写很长的路径名。
提升代码的可阅读性.
"""
os.chdir(r'数据所在的路径名')
'''
读取相应格式文件数据方式
出现中文用gbk格式
encoding编码格式
sheet_name='工作页名称'
dtype使相关内容读入变成所希望的类型
nrows只读取前10行(第一行表头除外)
header把第0行作为表头
na_values = 10 把含10的一行读为缺省值
'''
#批量读入表数据。工作表是有规律的从i=0 i+=1
#从表1读到表3 sheet_name以列表形式存储每次循环结果
sheet_name = ['sheet' + str(i) for i in range(1,4)]
#创建数据框
data_all = pd.DataFrame()
for i in sheet_name :
data = pd.read_excel('文件名.xlsx',sheet_name=i,dtype={'数据内容名':str,'xxx_id':str},nrows=10,header=0,na_values=10)
#累加每次读取结果给data_all数据框 3表合1
data_all =pd.concat([data_all,data],axis=0,ignore_index = True)
#保存
data_all.to_csv('data_all.csv', index = False)
data_all.to_excel('data_all.xlsx', index = False)