Python的八种数据导入方法,你全都知道吗?赶紧收藏!

Python 导入数据(Pandas) 读取 Excel 文件时,首先 .xls 与 .xlsx 的格式不同,其次要考虑数据表带不带标题行,有时文件中还有多个工作表。读取文件时还会遇到数据缺失,非法字符。此外,对于大数据类的问题,所需处理的数据量可能非常大,必要时需对文件进行拆分或合并,也可以用 pandas 进行处理。常见的数据文件格式有文本文件(.txt)、Excel 文件(.xls, .xlsx)和 csv 文件(.csv)。对于文本文件 .txt 和 .dat,可以使用 pandas.read_table() 函数读取。 阅读详情

数据分析过程中,需要对获取到的数据进行分析,往往第一步就是导入数据。导入数据有很多方式,不同的数据文件需要用到不同的导入方式,相同的文件也会有几种不同的导入方式。下面总结几种常用的文件导入方法。
大多数情况下,会使用NumPy或Pandas来导入数据,因此在开始之前,先执行:

import numpy as np  
import pandas as pd  

两种获取help的方法

很多时候对一些函数方法不是很了解,此时Python提供了一些帮助信息,以快速使用Python对象。

使用Numpy中的info方法

np.info(np.ndarray.dtype)  

在这里插入图片描述

Python内置函数

help(pd.read_csv)  

在这里插入图片描述

一、文本文件

1、纯文本文件
1.filename = 'demo.txt'  
2.file = open(filename, mode='r') # 打开文件进行读取  
3.text = file.read() # 读取文件的内容  
4.print(file.closed) # 检查文件是否关闭  
5.file.close() # 关闭文件  
6.print(text)  

使用上下文管理器 – with

    with open('demo.txt', 'r') as file:  
    print(file.readline()) # 一行一行读取  
    print(file.readline())  
    print(file.readline())  
2、表格数据:Flat文件

使用 Numpy 读取 Flat 文件
Numpy 内置函数处理数据的速度是 C 语言级别的。

Flat 文件是一种包含没有相对关系结构的记录的文件。(支持Excel、CSV和Tab分割符文件 )

  • 具有一种数据类型的文件

用于分隔值的字符串跳过前两行。在第一列和第三列读取结果数组的类型。

filename = 'mnist.txt'  
data = np.loadtxt(filename,  
                  delimiter=',',  
                  skiprows=2,  
                  usecols=[0,2],  
                  dtype=str)  

  • 具有混合数据类型的文件
    两个硬的要求:

    • 跳过表头信息

    • 区分横纵坐标

filename = 'titanic.csv'  
data = np.genfromtxt(filename,  
                     delimiter=',',  
                     names=True,  
                     dtype=None)  

在这里插入图片描述
使用 Pandas 读取Flat文件

filename = 'demo.csv'   
data = pd.read_csv(filename,   
                   nrows=5,        # 要读取的文件的行数  
                   header=None,    # 作为列名的行号  
                   sep='\t',       # 分隔符使用  
                   comment='#',    # 分隔注释的字符  
                   na_values=[""]) # 可以识别为NA/NaN的字符串  

二、Excel 电子表格

Pandas中的ExcelFile()是pandas中对excel表格文件进行读取相关操作非常方便快捷的类,尤其是在对含有多个sheet的excel文件进行操控时非常方便。

file = 'demo.xlsx'  
data = pd.ExcelFile(file)  
df_sheet2 = data.parse(sheet_name='1960-1966',  
                       skiprows=[0],  
                       names=['Country',  
                              'AAM: War(2002)'])  
df_sheet1 = pd.read_excel(data,  
                          sheet_name=0,  
                          parse_cols=[0],  
                          skiprows=[0],  
                          names=['Country'])  

使用sheet_names属性获取要读取工作表的名称。

data.sheet_names  

三、SAS 文件

SAS (Statistical Analysis System)是一个模块化、集成化的大型应用软件系统。其保存的文件即sas是统计分析文件。

from sas7bdat import SAS7BDAT  
with SAS7BDAT('demo.sas7bdat') as file:  
  df_sas = file.to_data_frame()  

四、Stata 文件

Stata 是一套提供其使用者数据分析、数据管理以及绘制专业图表的完整及整合性统计软件。其保存的文件后缀名为.dta的Stata文件。

data = pd.read_stata('demo.dta')  

五、Pickled 文件

python中几乎所有的数据类型(列表,字典,集合,类等)都可以用pickle来序列化。python的pickle模块实现了基本的数据序列和反序列化。通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储;通过pickle模块的反序列化操作,我们能够从文件中创建上一次程序保存的对象。

import pickle  
with open('pickled_demo.pkl', 'rb') as file:  
   pickled_data = pickle.load(file) # 下载被打开被读取到的数据  

与其相对应的操作是写入方法pickle.dump() 。

六、HDF5 文件

HDF5文件是一种常见的跨平台数据储存文件,可以存储不同类型的图像和数码数据,并且可以在不同类型的机器上传输,同时还有统一处理这种文件格式的函数库。

HDF5 文件一般以 .h5 或者 .hdf5 作为后缀名,需要专门的软件才能打开预览文件的内容。

import h5py  
filename = 'H-H1_LOSC_4_v1-815411200-4096.hdf5'  
data = h5py.File(filename, 'r')  

七、Matlab 文件

其由matlab将其工作区间里的数据存储的后缀为.mat的文件。

import scipy.io  
filename = 'workspace.mat'  
mat = scipy.io.loadmat(filename)  

八、关系型数据库

from sqlalchemy import create_engine  
engine = create_engine('sqlite://Northwind.sqlite')  

使用table_names()方法获取一个表名列表

table_names = engine.table_names()  

1、直接查询关系型数据库
con = engine.connect()  
rs = con.execute("SELECT * FROM Orders")  
df = pd.DataFrame(rs.fetchall())  
df.columns = rs.keys()  
con.close()  

使用上下文管理器 – with

with engine.connect() as con:  
    rs = con.execute("SELECT OrderID FROM Orders")  
    df = pd.DataFrame(rs.fetchmany(size=5))  
    df.columns = rs.keys()  
2、使用Pandas查询关系型数据库
df = pd.read_sql_query("SELECT * FROM Orders", engine)  
python 如何写入文本文件? 【代码】python 如何写入文本文件? 阅读详情

相关推荐

从命名玄学看单片机江湖:STC、STM32与ESP32的型号密码与设计哲学

本文解析了STC、STM32和ESP32三大主流单片机系列的型号命名规则,揭示了其背后的设计哲学与市场策略。通过详细解读STC89C52、STM32F103C8T6等具体型号,帮助开发者理解芯片核心特性、性能等级及适用场景,为嵌入式系统选型提供实用指南。

g5h6i的博客 761

【Python学习】导入类

python中类的导入

weixin_73348410的博客 2180

数据仓库实践:从ITR流程讲指标体系建设

从 ITR 流程或者其他客服反馈流程的考核过程可见,实际工作中不可能只通过单个指标评价一个业务过程,需要从多个维度梳理业务,并把多个高度相关的指标组织起来,以避免只考虑其中某个指标从而摧毁整个业务过程的结果,指标体系=指标+体系。

the_singing_towers的博客 2265

【Python】导入Excel数据表的几种方式

如何导入csv、xlsx格式的Excel;一张数据表里有多个sheet页,如何获取所有sheet页名字,并导入每张sheet页;

阿野啊的博客 1万+

RustDesk网页端远程控制实战:如何用Web Client替代传统客户端(附安全配置建议)

本文详细介绍了RustDesk网页端远程控制的实战应用,包括其核心优势、配置流程及安全加固方案。通过Web Client替代传统客户端,用户可实现跨平台无缝体验和企业级管理效率,特别适合临时协作和移动设备使用。文章还提供了JWT身份验证、LDAP集成等安全配置建议,确保网页端访问的安全性。

weixin_30836759的博客 253

Android SSL证书固定实战:原理、方案与避坑指南

SSL/TLS协议是保障网络通信安全的基石,其核心原理是通过非对称加密和数字证书实现身份认证与数据加密。在移动应用开发中,为了防止中间人攻击,证书固定技术应运而生,它通过将服务器证书或公钥的哈希值预置在应用内,强制校验服务器身份,从而大幅提升通信链路的安全性。这一技术对于金融、电商等高安全要求场景尤为重要。本文聚焦Android平台,深入解析SPKI固定、Network Security Configuration与OkHttp CertificatePinner等主流方案,并针对证书更新、调试兼容等常见痛

weixin_33935636的博客 402

python中的导入方式详解

在Python中,import 语句的本质是加载并初始化一个模块,使得模块中定义的函数、类、变量等可以在另一个脚本中被访问和使用,下面给大家分享python中的导入方式,感兴趣的朋友一起看看吧。导入的模块会有自己的命名空间,在这个命名空间内定义的所有名称不会与其他模块的名称冲突。在Python中,import 语句的本质是加载并初始化一个模块,使得模块中定义的函数、类、变量等可以在另一个脚本中被访问和使用。对于包含多层级目录结构的模块(即包含子模块或子包的模块),可以直接导入具体层级的模块或对象。

Oona_01的博客 410

深入理解Android音视频同步机制(三)NuPlayer的avsync逻辑

本文深入介绍了NuPlayer的avsync逻辑和原理

张晖的专栏 1万+

Python八种数据导入方法,你掌握了吗?赶紧收藏

大多数情况下,会使用NumPy或Pandas坚持到了这儿,恭喜你,表示你有做开发的潜力,其实我想说的上面的内容还是刚刚开始,刚开始大家不需要多么精通了解这些内容,除了Python方面的知识,每个部分掌握一点儿能进行基本开发就好,主要是不断练习,让自己跳出「舒适区」,进入「学习区」,但是又不进入「恐慌区」,不断给自己「喂招」。

AI大模型的博客 6865

EMC诊断技术及电磁兼容理论设计

本文深入探讨了EMC诊断技术,重点在于滤波篇,详细讲解了EMI滤波器的设计、选型、测试及应用注意事项。内容涵盖噪声限值法规、滤波器的法规依据、插入损耗测试以及滤波电容的高频特性。同时,还阐述了噪声源的近场与远场特性,如何快速定位和抑制噪声。通过实例分析,提供了滤波器件和辐射噪声抑制器件的选型策略。

让你爱上电路设计 2162

【深度学习新浪潮】深度学习特别是大模型在图像配准方面的研发进展

深度学习,尤其是大模型的出现,彻底改变了图像配准的技术范式——从“手工设计特征+几何约束”走向“数据驱动+通用特征学习”。当前,大模型配准已在医学影像、遥感、工业检测等领域实现商业化落地,解决了传统方法难以应对的跨模态、少样本、复杂形变等问题。但大模型配准仍面临推理效率、可解释性、数据隐私等挑战,未来的研发核心将是“精度与效率的平衡”“泛化能力的提升”“场景化适配的简化”。对于开发者而言,从简化版大模型配准代码入手,逐步理解预训练+微调的核心逻辑,是衔接前沿技术的有效路径。

专注:太空算力、AI infra、异构调度、大模型成本工程 425

Python八种数据导入方法,你掌握了吗?赶紧收藏!

数据分析过程中,需要对获取到的数据进行分析,往往第一步就是导入数据。导入数据有很多方式,不同的数据文件需要用到不同的导入方式,相同的文件也会有几种不同的导入方式。

python_One1的博客 2989

海康visionmaster开发笔记10-集成HALCON第三方算子到VM工具箱的方法

海康visionmaster开发笔记10-HALCON第三方算子到VM工具箱的方法

视觉人机器视觉的博客 4347

Python八种数据导入方法,你掌握了吗?

数据分析过程中,需要对获取到的数据进行分析,往往第一步就是导入数据。导入数据有很多方式,不同的数据文件需要用到不同的导入方式,相同的文件也会有几种不同的导入方式。下面总结几种常用的文件导入...

小詹学python的博客 5883

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Python八种数据导入方法,你掌握了吗?确定不收藏一下吗

满满干货

z099164的博客 5209

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

总结了Python八种数据导入方法,你掌握了吗?

大家好,我是程序员晓晓。数据分析过程中,需要对获取到的数据进行分析,往往第一步就是导入数据。导入数据有很多方式,不同的数据文件需要用到不同的导入方式,相同的文件也会有几种不同的导入方式。下面总结几种常用的文件导入方法。大多数情况下,会使用NumPy或Pandas。

白帽阿叁的博客 1459

【Python】Python八种数据导入方法,你掌握了吗?

数据分析过程中,需要对获取到的数据进行分析,往往第一步就是导入数据。导入数据有很多方式,不同的数据文件需要用到不同的导入方式,相同的文件也会有几种不同的导入方式。下面总结几种常用的文件导入方法。大多数情况下,会使用NumPy或Pandas来导入数据,因此在开始之前,先执行:importnumpyasnp importpandasaspd两种获取help的方法很多时候对一些函数方法不是很...

fengdu78的博客 2654

Python导包的8种方法

Python中有多种导入包的方式。直接导入整个包简单明了但可能导入不必要的模块。选择特定模块导入可以减少资源浪费,但可能繁琐。使用别名可解决命名冲突,但命名不当会降低可读性。导入特定功能简洁但需多次导入。一次性导入所有模块不推荐,易造成命名空间污染。动态导入模块灵活但复杂,可读性差。使用importlib标准且推荐,reload函数可重新加载模块但慎用于生产环境。根据需求选择合适的方式。

专注于全栈开发领域 4601

Python中八种数据导入方法

python中几乎所有的数据类型(列表,字典,集合,类等)都可以用pickle来序列化。通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储;通过pickle模块的反序列化操作,我们能够从文件中创建上一次程序保存的对象。HDF5文件是一种常见的跨平台数据储存文件,可以存储不同类型的图像和数码数据,并且可以在不同类型的机器上传输,同时还有统一处理这种文件格式的函数库。文件是一种包含没有相对关系结构的记录的文件。作为后缀名,需要专门的软件才能打开预览文件的内容。

hdxx2022的博客 357

【Python】数据导入

h5py是用于读取和写入HDF5文件的Python库,HDF5是一种用于存储和组织大量数据的文件格式。Pandas库提供了一种通用的方式来导入各种数据类型,如CSV,Excel,JSON,SQL,等等。Python的内置模块提供了基本的文件读写能力,配合csv模块可以读取CSV文件。pymysql是用于Python中与MySQL数据库进行交互的一个库。pickle模块可以用来序列化和反序列化Python的对象结构。sqlite3是Python的内置数据库,适用于简单的数据存储。

qq_25699299的博客 773

Python炫技操作:花式导包的八种方法

点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤五岳寻仙不辞远,一身好入名山游。系列导读Python 炫技操作(01)...

pdcfighting的博客 222

python将八种咖啡数据保存在 coffee.csv文件并操作

将八种咖啡数据保存在 coffee.csv文件中(包括 序号、名称、材料配比信息)创建一个列表,列表中有八个字典存储对应信息。,随机屏幕显示对应咖啡所使用的各种材料的。用随即库返回随机材料配比。

qq_68537201的博客 451

python协程实现一万并发_python进阶:服务端实现并发的八种方式

【本文导读】文中有许多不妥之处,敬请批评指正!python编写的服务端,有八种实现并发的方式,如阻塞(对等)套接字实现并发、非阻塞套接字实现并发、epoll实现并发、多进程实现并发、多线程实现并发、进程池实现并发、线程池实现并发、协程实现并发等。一、什么是并发?1、套接字:是python与操作系统两者间的一个接口,通过设置对等的IP与端口,实现数据的发送与接收。套接字有三种:服务端监听套接字、服务...

weixin_39875675的博客 286
上一篇: 哪些职业能让00后月薪轻松过万?
下一篇: 千万别再学Python了?已经被取代了吗?Python已经失去了竞争力?
python_first1
博客等级 码龄4年 189粉丝 75原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值