Pandas 读取Eexcel - 间隔N行,读取某列数据

间隔N行,读取某列数据

python 复制代码
import pandas as pd

def read_vertical(sheet_name, col_idx, gap):
    """
    竖着读数据,
    :param sheet_name: 第几个 sheet
    :param col_idx: 第几列,从 0 开始
    :param step: 间隔
    :return:
    """
    # header=None 没有标题行
    df = pd.read_excel("111.xlsx", sheet_name=sheet_name, header=None)
    step = gap + 1
    total = 0
    # 如果3行3行的比,再在上面套一层 for
    for row in range(0, step * 3 + 1, step):  # range(1, 4) = 1~3 逗号右边是小于,所以 < 4 ,是 1~3,不包括4
        if row == 0:
            continue  # 跳过第1行
        # print(row)
        val = df.iloc[row, col_idx]  # 指定行,列
        if val != 1:
            print("第%s行 =>  %s,不等于 1 所以跳过。" % (row + 1, val))
            break  # 三行数据,有一个不等于 1 就跳过
        total = total + 1
        print("第%s行 =>  %s" % (row + 1, val))
    # 三行数据都 =1
    if (total == 3):
        # 'a' 追加到文件中, 'w' 以前的数据不要了,每次都重写
        write_val = df.iloc[0, col_idx]
        print("达到连续三个1,将值写文件%s" % write_val)
        with open('output.txt', 'a', encoding='utf-8') as json_file:
            json_file.write(str(write_val) + " ")  # 把最上面的值写到文件中
    else:
        print("没达到三个1 不写文件")


if __name__ == '__main__':
    for col in range(1, 2):
        print('\r\n' + '=' * 10 + ' 第' + str(col) + '列')
        for gap in range(0, 6):
            print('\r\n' + '*' * 10 + ' 间隔' + str(gap))
            read_vertical(0, col, gap)  # 不间隔
相关推荐
Blockbuater_drug2 小时前
《经典机器学习实战》第 2 课:回归入门——环境、工具与数据准备
线性回归·pandas·scikit-learn·数据可视化·数据清洗·最小二乘法·conda环境
烂蜻蜓17 小时前
Pandas入门教程(十六):常用函数速查手册——读写、清洗、选择、排序、分组与统计
pandas
quantdash_cc1 天前
个人开发者用 QuantDash 读取港股行情:00700.HK 的 Python 函数封装与校验实践
python·数据分析·pandas·量化交易·股票数据·quantdash
databook2 天前
Pandas 与 Polars:语法、性能和资源占用方面的对比
python·数据分析·pandas
桑年2 天前
四、Pandas数据处理
人工智能·python·线性代数·pandas·数据可视化·数据处理
第九序言T2 天前
Python 数据处理进阶(二十四)把脚本变成工具:argparse、logging 与定时任务
python·自动化·pandas
第九序言T2 天前
Python 数据处理进阶(二十二)用 Pandas 做一次完整的用户行为分析
开发语言·python·数据分析·pandas
第九序言T2 天前
Python 数据处理进阶(二十一)相关性与分组对比:数据里藏着什么关系
大数据·人工智能·python·数据分析·pandas
第九序言T4 天前
Python 数据处理进阶(十八)批量处理同结构文件:一个文件夹一次跑完
开发语言·python·自动化·pandas·数据处理
quantdash_cc4 天前
如何验证历史行情的交易日期是否完整覆盖研究区间?
python·数据分析·pandas·量化交易·股票数据·quantdash