pandas比较两个excel的差异
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pandas比较两个excel的差异相关的知识,希望对你有一定的参考价值。
参考技术A Microsoft Excel是微软公司的办公软件Microsoft office的组件之一,是由Microsoft为Windows和Apple Macintosh操作系统的电脑而编写和运行的一款试算表软件。开启分步阅读模式
操作方法
01
首先要将两个格放到一个工作。
02
在sheet2 D1处设置函数,选择函数“VLOOKUP”。
03
按照如图所示设置参数即可。
04
两个数据相同,则显示“1”,数据不同则显示“#N/A”。
Excel根据标题比较两列以查找同一行中的匹配或差异
Sheet1
上有45列
每次列不在同一个地方时,在Sheet1
中有两个重要的列是Work Country和Base Country,我在这里检查两列中的值是相同还是不同:如果它们相同,则输出为列状态应为Local,否则为Expat。
但是当我尝试计算我的公式时,结果是#Name?
你能帮我解决这个问题吗?我附上了工作表的屏幕截图。
我的Excel文件也包含VBA模块,所以我可以使用公式或VBA代码。
这是我用过的公式:
=IF(Work Geography,A2)=IFS(Work Country,B2)
答案
There could be multiple reasons for this error:
- 在MS Office Professional Plus 2013中未定义IFS功能,您使用的是在您的Excel版本中未启用的功能。
- 您的公式引用了一个未在Excel中定义的名称,您显然使用命名范围(
Work Geography
和Work Country
),但您可能忘记定义它们。 - 有一个拼写错误,它可能在
Work Geography
或Work Country
或两者,因为名称不能容纳空格字符。 - 逻辑是有缺陷的,使用
IF
函数对非布尔值的值可能导致意外的结果。
一级方程式将使用:
=IF(A2=B2, "Local", "Expat")
感谢@Zac的澄清。 这就是我想出的:
Option Explicit
Sub CheckCountries()
Dim lRow As Long
Dim MySheet As Worksheet
Dim rngGeo As Range, rngCountry As Range, rngStatus As Range
Dim rngData As Range
' Define Sheet1
Set MySheet = ThisWorkbook.Worksheets("Sheet1")
' I assumed headers are constantly on the first row
' Find cells with needed headers
Set rngGeo = MySheet.Rows(1).Find("Work Geography", , xlValues, xlWhole, xlByColumns)
Set rngCountry = MySheet.Rows(1).Find("Work Country", , xlValues, xlWhole, xlByColumns)
Set rngStatus = MySheet.Rows(1).Find("Status", , xlValues, xlWhole, xlByColumns)
' Your big table, excluding headers
With MySheet.Range("A1").CurrentRegion
Set rngData = .Offset(1, 0).Resize(.Rows.Count - 1, .Columns.Count)
End With
' Define needed columns
Set rngGeo = Intersect(rngData, rngGeo.EntireColumn)
Set rngCountry = Intersect(rngData, rngCountry.EntireColumn)
Set rngStatus = Intersect(rngData, rngStatus.EntireColumn)
' Calculate
rngStatus.Value _
= Evaluate("=IF(" & rngGeo.Address & "=" & rngCountry.Address & ", " & _
"""Local"", " & _
"""Expat"")")
End Sub
以上是关于pandas比较两个excel的差异的主要内容,如果未能解决你的问题,请参考以下文章
pandas read_table vs. read_csv vs. from_csv vs. read_excel的性能差异?