Python處理Excel表中單元格帶有換行的數(shù)據(jù)問題
問題樣式
在數(shù)據(jù)處理過程中常常會(huì)遇到這樣一個(gè)問題,在給出的Excel表中,有一列數(shù)據(jù)中每個(gè)單元格里面存在多行數(shù)據(jù),及多行換行數(shù)據(jù)。
如下圖所示:
每一個(gè)單元格中的數(shù)據(jù)如下:
實(shí)例問題
將上述類型的數(shù)據(jù)(文件3.0),可以發(fā)現(xiàn),文件3.0的第一個(gè)表中是m行1列數(shù)據(jù),先獲取每一行數(shù)據(jù),每一行的A列數(shù)據(jù)中都存有3列N行的數(shù)據(jù),將第一列作為縱坐標(biāo),第二列作為行坐標(biāo),進(jìn)行作圖,將會(huì)得到m個(gè)圖片。
實(shí)例實(shí)現(xiàn)代碼
import xlrd from pylab import * data1 = xlrd.open_workbook("./數(shù)據(jù)/3.0.xlsx") table1 = data1.sheets()[0] nrows1 = table1.nrows #行數(shù) ncols1 = table1.ncols #列數(shù) def plotLine(i,x,y): colors1 = '#000000' #點(diǎn)的顏色 黑色 area = np.pi * 4**2 # 點(diǎn)面積 plt.scatter(x, y, s=area, c=colors1, alpha=0.4) plt.savefig('./結(jié)果集/1.1.{}.png'.format(i)) plt.clf() #需要重新更新畫布,否則會(huì)出現(xiàn)同一張畫布上繪制多張圖片 for i in range(1,nrows1): #從第二行開始 因?yàn)榈谝恍袨闃?biāo)題A rowValues= table1.row_values(i) #某一行數(shù)據(jù) lis = [] for item in rowValues: s = item.replace("\r\n",",") #將換行符合換成逗號(hào) s = s.split(',') #用逗號(hào)進(jìn)行拆分 s = [a for a in s if(len(str(a))!=0)] #去除空元素 num = len(s) print(num) for m in np.arange(0, num, 3): comtent =(s[m],s[m+1],s[m+2]) # x1=[s[m],s[m+1],s[m+2]] lis.append(comtent) # res.append(x1) x =[] y =[] # print(lis) for j in range(0,len(lis)-1): y.append(lis[j][0]) x.append(lis[j][1]) x = [ float(d) for d in x ] # 一定要將字符串類型轉(zhuǎn)換成數(shù)值類型 y = [ float(d) for d in y ] # 一定要將字符串類型轉(zhuǎn)換成數(shù)值類型 plotLine(i,x,y)
實(shí)例結(jié)果
圖片1.1.0:
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Django中對(duì)數(shù)據(jù)查詢結(jié)果進(jìn)行排序的方法
這篇文章主要介紹了Django中對(duì)數(shù)據(jù)查詢結(jié)果進(jìn)行排序的方法,利用Python代碼代替SQL進(jìn)行一些簡(jiǎn)單的操作,需要的朋友可以參考下2015-07-07Python操作MySQL數(shù)據(jù)庫的兩種方式實(shí)例分析【pymysql和pandas】
這篇文章主要介紹了Python操作MySQL數(shù)據(jù)庫的兩種方式,結(jié)合實(shí)例形式分析了Python使用pymysql和pandas模塊進(jìn)行mysql數(shù)據(jù)庫的連接、增刪改查等操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-03-03Python中如何將一個(gè)類方法變?yōu)槎鄠€(gè)方法
這篇文章主要介紹了Python中如何將一個(gè)類方法變?yōu)槎鄠€(gè)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Python實(shí)現(xiàn)OpenCV中文路徑圖片讀寫的詳細(xì)指南
在Python中使用OpenCV處理圖片時(shí),涉及讀取和保存圖片的操作,可能會(huì)遇到中文路徑的兼容性問題,該指南的目的是展示如何正確處理帶有中文路徑的圖片,并使用OpenCV將圖片保存到指定的中文路徑,需要的朋友可以參考下2025-03-03Python對(duì)DataFrame中所有行數(shù)據(jù)進(jìn)行比較的幾種方法
在數(shù)據(jù)分析中,比較DataFrame數(shù)據(jù)框中的行是一項(xiàng)基本操作,可應(yīng)用于多種場(chǎng)景,在本文中,我們將學(xué)習(xí)各種方法,將DataFrame中的行與每一行進(jìn)行比較,直到所有行都被比較完,結(jié)果存儲(chǔ)在一個(gè)列表中,需要的朋友可以參考下2024-12-12