最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

我們知道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 目標(biāo)字段列表 參考字段
	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
	#導(dǎo)出
	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'],'參考字段')

總結(jié)

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

相關(guān)文章

  • Python從MySQL數(shù)據(jù)庫中面抽取試題,生成試卷

    Python從MySQL數(shù)據(jù)庫中面抽取試題,生成試卷

    這篇文章主要介紹了Python如何從MySQL數(shù)據(jù)庫中面抽取試題,生成試卷,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2021-01-01
  • 基于Python實現(xiàn)拉格朗日插值法

    基于Python實現(xiàn)拉格朗日插值法

    拉格朗日插值法是以法國十八世紀(jì)數(shù)學(xué)家約瑟夫·拉格朗日命名的一種多項式插值方法。本文將利用Python語言實現(xiàn)這一插值法,需要的可以參考一下
    2022-12-12
  • python操作mysql中文顯示亂碼的解決方法

    python操作mysql中文顯示亂碼的解決方法

    這篇文章主要介紹了python操作mysql中文顯示亂碼的解決方法,是Python數(shù)據(jù)庫程序設(shè)計中經(jīng)常會遇到的問題,非常具有實用價值,需要的朋友可以參考下
    2014-10-10
  • 關(guān)于Pycharm安裝第三方庫超時 Read time-out的問題

    關(guān)于Pycharm安裝第三方庫超時 Read time-out的問題

    這篇文章主要介紹了關(guān)于Pycharm安裝第三方庫超時 Read time-out的問題, 找了幾個命令都不是很好用,最后找到解決的步驟,感興趣的朋友跟隨小編一起看看吧
    2021-10-10
  • 利用python檢測文本相似性的三種方法

    利用python檢測文本相似性的三種方法

    文本查重,也稱為文本去重,是一項旨在識別文本文檔之間的相似性或重復(fù)性的技術(shù)或任務(wù),它的主要目標(biāo)是確定一個文本文檔是否包含與其他文檔相似或重復(fù)的內(nèi)容,本文給大家介紹了利用python檢測文本相似性的原理和方法,需要的朋友可以參考下
    2023-11-11
  • 深入了解Python并發(fā)編程

    深入了解Python并發(fā)編程

    讓計算機程序并發(fā)的運行是一個經(jīng)常被討論的話題,這篇文章將具體介紹一下Python下的各種并發(fā)方式。感興趣的可以跟隨小編一起學(xué)習(xí)一下
    2022-01-01
  • Python?列表和字典常踩坑即解決方案

    Python?列表和字典常踩坑即解決方案

    這篇文章介紹了?Python?列表和字典常踩坑即解決方案,主要針對python列表和字典得一些問題,提出了多種解決方案。需要的小伙伴可以參考一下
    2022-05-05
  • Python循環(huán)結(jié)構(gòu)詳解

    Python循環(huán)結(jié)構(gòu)詳解

    這篇文章主要介紹了Python循環(huán)結(jié)構(gòu)詳解,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)python的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-05-05
  • Python使用GeoIP2實現(xiàn)地圖定位

    Python使用GeoIP2實現(xiàn)地圖定位

    GeoIP2是一種IP地址定位庫,它允許開發(fā)人員根據(jù)IP地址查找有關(guān)位置和地理位置的信息,這篇文章主要為大家介紹了python如何使用GeoIP2實現(xiàn)地圖定位,感興趣的可以了解下
    2023-10-10
  • Python多進程寫入同一文件的方法

    Python多進程寫入同一文件的方法

    今天小編就為大家分享一篇Python多進程寫入同一文件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01

最新評論

湖南省| 清新县| 紫阳县| 介休市| 安庆市| 临澧县| 渭源县| 长海县| 渑池县| 凤翔县| 四平市| 永修县| 靖安县| 安化县| 舞阳县| 汨罗市| 齐河县| 泰安市| 遂昌县| 临漳县| 吐鲁番市| 吴江市| 金乡县| 谷城县| 临沂市| 依安县| 内丘县| 大关县| 汤原县| 阿拉善盟| 六盘水市| 保山市| 石城县| 习水县| 金湖县| 德格县| 花莲县| 武义县| 吴旗县| 全椒县| 邹城市|