日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

毫米波雷达人体姿态估计数据集整理 1 -- Python读取含合并单元格的excel

發布時間:2023/12/14 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 毫米波雷达人体姿态估计数据集整理 1 -- Python读取含合并单元格的excel 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

問題描述

整理一個毫米波雷達人體姿態估計的數據集時,需要使用Python處理一個Excel中每個sheet的數據,但是遇到了下面的問題:

  • Excel中的合并單元格無法正常讀取

  • 如何遍歷讀取每一個sheet

  • 解決方案

    問題1:讀取合并的單元格

    若直接讀取,試過網上的很多方法,都存在問題。
    最終選擇先使用openpyxl拆分所有合并的單元格,之后再進行讀取。代碼如下:

    import openpyxl import pandas as pddef split_excel(file_path,excel_split_path):workbook = openpyxl.load_workbook(file_path) # 加載已經存在的excelname_list = workbook.sheetnamesfor index in range(len(name_list)):worksheet = workbook[name_list[index]]m_list = worksheet.merged_cells # 合并單元格的位置信息,可迭代對象(單個是一個'openpyxl.worksheet.cell_range.CellRange'對象),print后就是excel坐標信息cr = []for m_area in m_list:# 合并單元格的起始行坐標、終止行坐標。。。。,r1, r2, c1, c2 = m_area.min_row, m_area.max_row, m_area.min_col, m_area.max_col# 縱向合并單元格的位置信息提取出if r2 - r1 > 0:cr.append((r1, r2, c1, c2))print('符合條件%s' % str(m_area))#print(cr)# 這里注意需要把合并單元格的信息提取出再拆分for r in cr:worksheet.unmerge_cells(start_row=r[0], end_row=r[1],start_column=r[2], end_column=r[3])for row in range(r[0], r[1]):worksheet.cell(row=row+1, column=r[3], value=worksheet.cell(r[0], r[3]).value)workbook.save(excel_split_path)

    問題2:遍歷讀取每一個sheet

    此問題較為簡單,一個解決方案是:

    list_dic = [] ex_data = pd.read_excel(file_path,sheet_name=None) for sheet_name, sheet_data in ex_data.items():

    總結

    以上是生活随笔為你收集整理的毫米波雷达人体姿态估计数据集整理 1 -- Python读取含合并单元格的excel的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。