记录一个刚刚用本‘笨’办法解决的数据清洗和数据整理问题
前几天收到邮件,对之前我一篇论文的方法进行测试的时候有些疑问。我在复现的时候遇到了以下的问题:
我现在有三个结果,res1, res2 和 res3,他们的结构基本是一致的,都是两列:
N8 N84
N18 N4
N22 N64
N10 N17
...
M0P1 M0P2
...
如果不用 Python,只用 Excel, 如何找出三个结果中的重复值?(N2-N1视为与N1-N2等同)
我的笨办法(不用 VBA)
首先,分别按照编号大小左右排序,再从小到达按列排序,最后拼接字符串。然后只要找出三个结果中的重复值并高亮就行了。
首先,将数据清理一下。因为 M0P 开头的数据只有 M0P1 和 M0P2,我直接通过查找替换将所有 M0P1 换为 1001,M0P2换为1002(1001是因为N*中没有大于500的值,所以1001可以保证 unique)。
然后,我们将第二列向右移动一列,因为空出的这一列要放分列的输出。我们通过文本分列向导(数据->分列)将所有N*拆分成N和数字。如果选择按数据的“分隔符”进行拆分并将N设置为分隔符,则可以直接提取数字(这个在窗口预览的时候就能看到。具体可以参考