python(11):python读取excel、csv文件

2023-11-12

1.python读取excel文件

要读取Excel表格的指定行和列范围,可以使用Python中的第三方库pandaspandas库提供了强大的数据分析和处理工具,包括读取和处理Excel文件的功能。以下是一个示例代码,演示了如何使用pandas库读取Excel表格中的指定行和列范围:

import pandas as pd

# 读取Excel文件
df = pd.read_excel('path/to/excel_file.xlsx')

# 指定要读取的行和列范围
start_row = 2  # 起始行(索引为0)
end_row = 5  # 结束行
start_col = 'A'  # 起始列
end_col = 'C'  # 结束列

# 根据行和列范围提取数据
selected_data = df.loc[start_row:end_row, start_col:end_col]

# 打印提取的数据
print(selected_data)

在上述代码中,你需要将 'path/to/excel_file.xlsx' 替换为你要读取的Excel文件的实际路径。代码使用 pd.read_excel 函数读取Excel文件并将其存储在一个DataFrame对象中。

然后,通过设置 start_rowend_row 来指定要读取的行范围,起始行索引为0。同时,使用 start_colend_col 来指定要读取的列范围,以字母表示列标签。

接下来,使用 df.loc[start_row:end_row, start_col:end_col]DataFrame中提取指定的行和列范围的数据,并将结果存储在 selected_data 变量中。

最后,使用 print(selected_data) 打印提取的数据。

请注意,在运行代码之前,确保已经安装了pandas库。你可以使用以下命令安装pandas库:

pip install pandas

2. 读取csv文件并转换为numpy数组

要读取CSV文件的指定行和列范围,同样可以使用pandas库。pandas库提供了灵活的方法来读取和处理CSV文件。以下是一个示例代码,演示了如何使用pandas库读取CSV文件中的指定行和列范围:

2.1 读取csv文件

import pandas as pd

# 读取CSV文件
df = pd.read_csv('path/to/csv_file.csv')

# 指定要读取的行和列范围
start_row = 2  # 起始行(索引为0)
end_row = 5  # 结束行
start_col = 0  # 起始列(索引为0)
end_col = 2  # 结束列

# 根据行和列范围提取数据
selected_data = df.iloc[start_row:end_row+1, start_col:end_col+1]

# 打印提取的数据
print(selected_data)

在上述代码中,你需要将 'path/to/csv_file.csv' 替换为你要读取的CSV文件的实际路径。代码使用 pd.read_csv 函数读取CSV文件并将其存储在一个DataFrame对象中。

然后,通过设置 start_rowend_row 来指定要读取的行范围,起始行索引为0。同时,使用 start_colend_col 来指定要读取的列范围,起始列索引为0。

接下来,使用 df.iloc[start_row:end_row+1, start_col:end_col+1]DataFrame中提取指定的行和列范围的数据,并将结果存储在 selected_data 变量中。这里需要注意,end_row+1end_col+1 是为了包括指定的结束行和结束列。

最后,使用 print(selected_data) 打印提取的数据。

请注意,在运行代码之前,确保已经安装了pandas库。你可以使用以下命令安装pandas库:

pip install pandas

另外,需要根据实际的CSV文件的分隔符,使用read_csv函数的sep参数来指定分隔符,例如:pd.read_csv('path/to/csv_file.csv', sep=','),如果CSV文件使用的是逗号作为分隔符。默认情况下,read_csv函数会使用逗号作为分隔符。

2.2 转换为numpy数组

要将pandas库读取的数据转换为NumPy数组,可以使用values属性。以下是修改后的示例代码:

import pandas as pd
import numpy as np

# 读取CSV文件
df = pd.read_csv('path/to/csv_file.csv')

# 指定要读取的行和列范围
start_row = 2  # 起始行(索引为0)
end_row = 5  # 结束行
start_col = 0  # 起始列(索引为0)
end_col = 2  # 结束列

# 根据行和列范围提取数据
selected_data = df.iloc[start_row:end_row+1, start_col:end_col+1]

# 将提取的数据转换为NumPy数组
array_data = selected_data.values

# 打印转换后的NumPy数组
print(array_data)

在上述代码中,使用selected_data.valuesselected_data转换为NumPy数组,并将结果存储在array_data变量中。然后,使用print(array_data)打印转换后的NumPy数组。

请确保已经安装了NumPy库。你可以使用以下命令安装NumPy库:

pip install numpy

这样,你就可以将pandas读取的数据转换为NumPy数组进行后续的数据处理和分析。

2.3 实例

在这里插入图片描述

终端打印

(nerf) biter@biter:~/dataset/newer_college/transform_format$ python read_excel.py 
         x        y         z        qx        qy        qz        qw
2 -3.34605  8.24457  0.138331  0.003850  0.003713 -0.605999  0.795447
3 -3.35150  8.24461  0.141933  0.003800  0.003917 -0.605870  0.795545
4 -3.34477  8.24422  0.141572  0.003592  0.003960 -0.606074  0.795390
5 -3.35222  8.24647  0.137599  0.003687  0.003883 -0.605986  0.795458

[[-3.34605e+00  8.24457e+00  1.38331e-01  3.84963e-03  3.71254e-03
  -6.05999e-01  7.95447e-01]
 [-3.35150e+00  8.24461e+00  1.41933e-01  3.80030e-03  3.91695e-03
  -6.05870e-01  7.95545e-01]
 [-3.34477e+00  8.24422e+00  1.41572e-01  3.59196e-03  3.95955e-03
  -6.06074e-01  7.95390e-01]
 [-3.35222e+00  8.24647e+00  1.37599e-01  3.68695e-03  3.88267e-03
  -6.05986e-01  7.95458e-01]]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python(11):python读取excel、csv文件 的相关文章

随机推荐

  • ifconfig: command not found

    说明 新装的Linux在执行ifconfig查看ip时会报ifconfig command not found 表示未安装ifconfig命令 此处可使用ip addr查看ip 可查看是否安装了ifconfig命令 解决 ifconfig
  • TCP中的Nagle算法

    一 Nagel算法 TCP IP协议中 无论发送多少数据 总是要在数据前面加上协议头 同时 对方接受到数据 也需要发送ack表示确认 为了尽可能利用网络带宽 TCP总是希望尽可能发送足够大的数据 在一个连接中会设置MSS参数 因此 TCP
  • Google Cloud Spanner和Cloud Bigtable最新更新

    Google云平台提供了各种云原生数据库服务 最近 Google更新了其中的两项服务 这些更新会影响Cloud Spanner数据库服务 一种的托管关系数据库产品 和Cloud Bigtable 一种托管的NoSQL键值和宽列数据库 几家领
  • P1020 [NOIP1999 普及组] 导弹拦截

    题目 题目链接 题解 看了网上好多讲解的博客 都好屑啊 就当已知第一问求解最长不上升子序列长度 第二问求解最长上升子序列长度 如果想知道证明 可以自行百度Dilworth定理 或者参考这个博客 未优化 O n2 未优化的比较基础 第一问 状
  • 工厂函数和构造函数的区别

    工厂函数和构造函数的区别 下面是给出的两个都是实现 定义使用值的范围 的函数 第一个工厂函数 工厂模式 用以创建并初始化类的实例 而且给出了一个表示 值的范围 的类定义了原型对象 第二个是使用构造函数代替工厂函数来实现相同功能的代码段 下面
  • Qt浏览器开发:关于CEF开发知识点以及QCef开发原理与使用

    开发环境 VS2015 Qt5 9 关于CEF CEF全称是Chromium Embedded Framework 它是Chromium的Content API的封装库 基于Google Chromium 的开源项目 而Google Chr
  • Ethercat--学习笔记

    一 数据传输方式 PDO SDO 主站与从站进行数据交互的方式主要通过PDO和SDO 即过程数据和邮箱数据其概念与CANOpen中的概念相同 一 PDO 过程数据对象 过程数据用来传输周期性的数据 PDO由三个数据缓冲区组成 类似于一个FI
  • 【Opencv】一文搞懂PIL、cv2、pyplot.imshow()显示图片颜色/色彩偏差问题

    原始图片 这里用眼底血管分割数据集的图片作为例子 导入图片方法及通道区别 PIL from PIL import Image from matplotlib import pyplot as plt PIL输入通道为RGB img Imag
  • SpringBoot集成PageHelper 实现分页功能。

    简介 今天毕设有用到PageHelper 看了几篇博客 写的不是很一目了然 自己总记一下 希望能帮助到别人 大佬看见该批评就批评该指点就指点 谢谢 开始 引入
  • js预解析最强面试题 看看你会不会

    话不多说 直接上题目 f1 console log c console log b console log a function f1 var a b c 9 console log a console log b console log
  • XCode 命令行打包命令

    1 列出项目信息 xcodebuild list project
  • 第二十一课,几何着色器(使用篇-爆破效果)

    爆破效果 原理 将每一个片元沿三角形法向量方向移动一段距离 核心代码 避坑点 vert version 450 core layout location 0 in vec3 aPos layout location 1 in vec3 aN
  • 0501——0505 Vue学习

    总结一下草稿箱的网课记录 说4小时我还是看了不止4天 Vue Vue程序 导入开放版本的Vue js 创建Vue实例对象 设置el属性和data属性 使用简洁的模板语法把数据渲染到页面上 el挂载点 el是用来设置vue实例挂载 管理 的元
  • dubbo validation 参数验证 参数校验 @NotNull 自定义响应

    使用dubbo 框架 使用 validation 进行参数校验 首先创建类 import com fasterxml jackson annotation JsonProperty import lombok Getter import l
  • 你开发的软件不知道哪里跑飞闪退了?这个办法可以帮忙定位(查看dump)

    QT生成dump pdb文件 使用windbg打开分析查看堆栈 定位程序崩溃位置 你开发的软件不知道哪里跑飞闪退了 这个办法可以帮忙定位 https zhuanlan zhihu com p 102103083
  • 5.three.js灯光与阴影

    代码来源于哔哩哔哩老陈three js教学 1 灯光与阴影的关系与设置 import as THREE from three 导入轨道控制器 import OrbitControls from three examples jsm cont
  • chrome谷歌浏览器导入密码和导出密码的方法

    chrome谷歌浏览器导入密码和导出密码的方法 导出账号密码 导入账号密码 有时候大家遇到换了新电脑 或者公司需要调整电脑 或者说需要导入别人电脑上谷歌浏览器存的账号密码 发现可以导出密码 但是没有导入密码的选项 就很烦 这里教大家如何导出
  • 如何在数据验证单元格区域禁用粘贴

    为了确保数据准确性 在A列设置了数据验证 可以输入值的列表如下图所示 但是如果用户使用复制 粘贴 仍然可以输入其他值 如下图所示 使用如下事件可以实现禁止粘贴 Private Sub Worksheet Change ByVal Targe
  • TCP连接的三次握手四次挥手——类比异地恋情侣开始交往和分手(通俗易懂)

    首先 要详细解释的 先看下面两篇文章 这篇文章只是一个类比 可以辅助理解和记忆 计算机网络 TCP三次握手详解为什么两次不行 计算机网络 TCP四次挥手过程详解 三次握手 开始交往 男 写一封情书 我喜欢你 我们可以在一起吗 即使我们分隔两
  • python(11):python读取excel、csv文件

    1 python读取excel文件 要读取Excel表格的指定行和列范围 可以使用Python中的第三方库pandas pandas库提供了强大的数据分析和处理工具 包括读取和处理Excel文件的功能 以下是一个示例代码 演示了如何使用pa