亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

利用Python實現(xiàn)Excel的文件間的數(shù)據(jù)匹配功能

 更新時間:2020年06月16日 09:57:49   作者:chaodaibing  
這篇文章主要介紹了利用Python實現(xiàn)Excel的文件間的數(shù)據(jù)匹配,本文通過一個函數(shù)實現(xiàn)此功能,通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

我們知道Excel有一個match函數(shù),可以做數(shù)據(jù)匹配。
比如要根據(jù)人名獲取成績

在這里插入圖片描述

而參考表sheet1的內(nèi)容如下:

在這里插入圖片描述

要根據(jù)sheet1匹配每人的成績,用Excel是這么寫

index(Sheet1!B:B,MATCH(A2,Sheet1!A:A,0))

意思就是獲取sheet1的B列的內(nèi)容,根據(jù)我的A列匹配sheet1的A列的內(nèi)容

但是如何用python實現(xiàn)這一點呢,我寫了一個函數(shù),非常好用,分享給大家。
這個函數(shù)考慮到了匹配多個字段,多個sheet。

import pandas as pd
def match(file,sheetnames,reffile,refsheet,targetsegs,matchseg)  #文件名 sheet列表 參考文件名 參考sheet 目標字段列表 參考字段
	alldata=pd.read_excel(file,None)
	refdata=pd.read_excel(reffile,refsheet)
	#獲取映射字典
	maps={}
	for i in refdata.index:
		MatchSeg=refdata.loc[i,matchseg]
		maps[MatchSeg]={}
		for seg in targetsegs:
			maps[MatchSeg][seg]=refdata.loc[i,seg]
	#匹配數(shù)據(jù)
	for sheet in sheetnames:
		if(isinstance(sheet,int)):
			sheet=list(alldata.keys())[sheet]

		data=alldata[sheet].fillna('-')
		for i in data.index:
			MatchSeg=data.loc[i,matchseg]
			for seg in targetsegs:
				try:
					data.loc[i,seg]=map[MatchSeg][seg]
				except Exception as e:
					pass

		alldata[sheet]=data
	#導出
	with pd.ExcelWriter(file) as writer:
		for sheet in alldata.keys():
			alldata[sheet].to_excel(writer,sheet,index=False)
			
match('要匹配的表.xlsx',[0,1],'參考表.xlsx','參考頁',['要匹配的字段1,字段2'],'參考字段')

總結

到此這篇關于利用Python實現(xiàn)Excel的文件間的數(shù)據(jù)匹配功能的文章就介紹到這了,更多相關Python實現(xiàn)Excel的文件間的數(shù)據(jù)匹配內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • anaconda的安裝和配置環(huán)境及導入pycharm的方法

    anaconda的安裝和配置環(huán)境及導入pycharm的方法

    這篇文章主要介紹了anaconda的安裝和配置環(huán)境及導入pycharm的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Python數(shù)據(jù)可視化之Matplotlib初級使用指南

    Python數(shù)據(jù)可視化之Matplotlib初級使用指南

    Matplotlib是Python中最常用的數(shù)據(jù)可視化庫之一,它提供了豐富的圖表類型和靈活的自定義選項,能幫助我們以更直觀的方式理解數(shù)據(jù),本文將對Matplotlib的基本功能進行介紹,包括如何創(chuàng)建和自定義圖表等
    2023-07-07
  • Python 比較兩個數(shù)組的元素的異同方法

    Python 比較兩個數(shù)組的元素的異同方法

    下面小編就為大家?guī)硪黄狿ython 比較兩個數(shù)組的元素的異同方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • Python通用循環(huán)的構造方法實例分析

    Python通用循環(huán)的構造方法實例分析

    這篇文章主要介紹了Python通用循環(huán)的構造方法,結合實例形式分析了Python常見的交互循環(huán)、哨兵循環(huán)、文件循環(huán)、死循環(huán)等實現(xiàn)與處理技巧,需要的朋友可以參考下
    2018-12-12
  • 復化梯形求積分實例——用Python進行數(shù)值計算

    復化梯形求積分實例——用Python進行數(shù)值計算

    今天小編就為大家分享一篇復化梯形求積分實例——用Python進行數(shù)值計算,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python之pandas讀寫文件亂碼的解決方法

    Python之pandas讀寫文件亂碼的解決方法

    下面小編就為大家分享一篇Python之pandas讀寫文件亂碼的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • Python中用xlwt制作表格實例講解

    Python中用xlwt制作表格實例講解

    在本篇文章里小編給大家整理的是一篇關于Python中用xlwt制作表格實例講解內(nèi)容,有興趣的朋友們可以學習下。
    2020-11-11
  • Keras使用ImageNet上預訓練的模型方式

    Keras使用ImageNet上預訓練的模型方式

    這篇文章主要介紹了Keras使用ImageNet上預訓練的模型方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • django里面的forms模塊詳解

    django里面的forms模塊詳解

    這篇文章主要介紹了django里面的forms模塊詳解的相關資料,需要的朋友可以參考下
    2023-11-11
  • 使用Python操作MySql數(shù)據(jù)庫和MsSql數(shù)據(jù)庫

    使用Python操作MySql數(shù)據(jù)庫和MsSql數(shù)據(jù)庫

    這篇文章介紹了使用Python操作MySql數(shù)據(jù)庫和MsSql數(shù)據(jù)庫的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05

最新評論