import pandas as pd
Read in two files
df1 = pd.read_csv("../output.csv", sep='|', header=None)
df1.head(2)
|
0 |
1 |
2 |
3 |
4 |
0 |
JC1398 |
07/17/2016 |
21:46:29 |
|
8TAC93D IS FHP MUTUAL AID CHANNEL |
1 |
JC1398 |
07/17/2016 |
21:48:33 |
|
OSP COMMANDERS BRIEFING THEIR WILL BE NO CLEVE... |
df2 = pd.read_csv("../output2.csv", sep='|', header=None)
df2.head(2)
|
0 |
1 |
2 |
3 |
4 |
0 |
JC1398 |
07/17/2016 |
21:46:29 |
|
8TAC93D IS FHP MUTUAL AID CHANNEL |
1 |
JC1398 |
07/172016 |
21:48:33 |
NaN |
OSP COMMANDERS BRIEFING THEIR WILL BE NO CLEVE... |
You can get True/False for every cell just by comparing
df1 != df2
|
0 |
1 |
2 |
3 |
4 |
0 |
False |
False |
False |
False |
False |
1 |
False |
True |
False |
True |
False |
2 |
False |
False |
False |
False |
False |
3 |
False |
False |
False |
True |
False |
4 |
True |
False |
False |
True |
True |
So we say hey, give me every cell where things are different
df1[df1 != df2]
|
0 |
1 |
2 |
3 |
4 |
0 |
NaN |
NaN |
NaN |
NaN |
NaN |
1 |
NaN |
07/17/2016 |
NaN |
|
NaN |
2 |
NaN |
NaN |
NaN |
NaN |
NaN |
3 |
NaN |
NaN |
NaN |
NaN |
NaN |
4 |
SmartCAD |
NaN |
NaN |
NaN |
OLD DISP CODES: CODE1 = MOA, CODE2 = , CODE3 =... |
df2[df1 != df2]
|
0 |
1 |
2 |
3 |
4 |
0 |
NaN |
NaN |
NaN |
NaN |
NaN |
1 |
NaN |
07/172016 |
NaN |
NaN |
NaN |
2 |
NaN |
NaN |
NaN |
NaN |
NaN |
3 |
NaN |
NaN |
NaN |
NaN |
NaN |
4 |
SMARTCAD |
NaN |
NaN |
NaN |
OLD DISP CODES: CODE1 = MOA, CODE2 = , CODE3 =... |
We take those two dataframes and add them together
df1[df1 != df2] + df2[df1 != df2]
|
0 |
1 |
2 |
3 |
4 |
0 |
NaN |
NaN |
NaN |
NaN |
NaN |
1 |
NaN |
07/17/201607/172016 |
NaN |
NaN |
NaN |
2 |
NaN |
NaN |
NaN |
NaN |
NaN |
3 |
NaN |
NaN |
NaN |
NaN |
NaN |
4 |
SmartCADSMARTCAD |
NaN |
NaN |
NaN |
OLD DISP CODES: CODE1 = MOA, CODE2 = , CODE3 =... |
Might as well add in a ‘vs’ for comparison and drop the bad ones
This isn’t the best.
df1[df1 != df2].add(" vs ").add(df2[df1 != df2]).dropna(how='all')
|
0 |
1 |
2 |
3 |
4 |
1 |
NaN |
07/17/2016 vs 07/172016 |
NaN |
NaN |
NaN |
4 |
SmartCAD vs SMARTCAD |
NaN |
NaN |
NaN |
OLD DISP CODES: CODE1 = MOA, CODE2 = , CODE3 =... |