fixmint
RO

Cum găsești diferențele dintre două versiuni ale unui tabel

De · · 5 min de citit

Pentru a găsi ce s-a schimbat între două versiuni ale unui tabel, asociază fiecare rând din fișierul vechi cu rândul corespondent din fișierul nou, apoi compară celulele fiecărei perechi. Potrivirea este partea grea. O comparație rând cu rând, după poziție, eșuează imediat ce se inserează un rând sau fișierul este resortat, pentru că fiecare rând următor este comparat cu partenerul greșit. Potrivirea după o coloană-cheie, cum ar fi un număr de comandă, păstrează fiecare rând asociat cu propria înregistrare, chiar când rândurile se mută.

Compară tabeleAflă ce s-a schimbat între fișiereÎncearcă gratuit

De ce ordinea rândurilor strică o comparație simplă

Compararea rândului 2 cu rândul 2 este rapidă și ușor de înșelat. Adaugi un rând la început și fiecare rând următor e asociat cu cel greșit. Rezultatul sunt sute de „modificări” care, de fapt, sunt una singură. Sortarea provoacă aceeași problemă. Resortarea nu schimbă nicio dată, dar o comparație după poziție raportează fiecare rând mutat ca modificat. Dacă diferența pare mult prea mare, verifică mai întâi ordinea.

Folosește o coloană-cheie

O coloană-cheie identifică un rând și nu se schimbă pentru acel rând: un număr de comandă, un cod de produs, un ID de client. Alege o coloană în care fiecare valoare apare o singură dată. Dacă cheia se repetă, comparația nu poate spune care rând este care, așa că caută o coloană mai bună sau combină două coloane.

Cu o cheie, fiecare rând intră într-unul dintre cele patru grupuri:

  • Adăugat. Cheia există doar în fișierul nou.
  • Eliminat. Cheia există doar în fișierul vechi.
  • Modificat. Cheia există în ambele fișiere, iar cel puțin o celulă diferă.
  • Nemodificat. Cheia există în ambele fișiere, iar toate celulele comparate se potrivesc.

Compară cele două fișiere te lasă să alegi coloana-cheie, arată fiecare grup cu numărul de rânduri și enumeră celulele care diferă în fiecare rând modificat.

Celule modificate și coloane care se schimbă mereu

Un rând modificat poate diferi doar într-o celulă din treizeci, așa că uită-te la celule. Un preț care trece de la 12.50 la 13.00 este un alt fel de modificare decât o adresă nouă din același rând. Ignoră coloanele care se schimbă la fiecare salvare, cum ar fi o marcă de timp „ultima modificare”, ca să nu umple lista.

Majusculele și spațiile contează și ele. „Berlin” și „berlin ” sunt diferite pentru un calculator. Ignorarea majusculelor și a spațiilor de la margini elimină aceste false modificări, dar o ortografie corectată este o modificare reală, așa că folosește aceste opțiuni doar când diferența nu are importanță pentru tine.

Numere care arată diferit, dar sunt egale

Două celule pot afișa text diferit și pot conține aceeași valoare. Aceasta este cea mai frecventă sursă de false modificări:

  • Separatori de mii. 1,000 și 1000 este același număr.
  • Zecimale. 12.5 afișat ca 12.50 are aceeași valoare, doar cu alt format de afișare.
  • Formate de monedă. O celulă formatată ca £5 conține numărul 5. O celulă scrisă ca text cu semnul £ nu.
  • Date. Un tabel stochează o dată ca număr de serie și o afișează într-un format ales, așa că 03/04/2026 și 2026-04-03 pot fi aceeași zi.

Instrumentul de comparare citește numerele așa cum le scrie un tabel și folosește valorile salvate de Excel, nu formulele care le-au produs. Un număr stocat ca text se compară ca text, așa că verifică tipul de date al fiecărei coloane înainte să te bazezi pe comparația acelei coloane.

Calculatoarele stochează zecimalele în binar, așa că 0.1 + 0.2 nu este exact 0.3 în majoritatea limbajelor de programare. Setarea de toleranță tratează numerele ca egale dacă diferă cu cel mult o valoare aleasă de tine, de exemplu 0.01 pentru un ban.

Când nu există o cheie comună

Folosește cea mai stabilă pereche pe care o ai, de exemplu nume plus data nașterii, și verifică manual un eșantion. Dacă totuși compari după poziție, citește rezultatul ca „aceste rânduri diferă în același loc”, nu ca dovadă a ceea ce s-a schimbat.

Unire și potrivire: lucrările înrudite

O comparație întreabă ce diferă între două versiuni ale aceluiași tabel. O unire întreabă cum se potrivesc două tabele diferite. VLOOKUP este cea mai simplă unire: găsește o cheie potrivită într-un alt tabel și returnează o valoare din el. Două capcane cauzează majoritatea surprizelor. Funcția se uită doar la prima coloană a intervalului, deci cheia trebuie să fie în stânga. Și returnează prima potrivire găsită, așa că o cheie care apare de două ori se reduce discret la un singur rând. Dacă lași afară ultimul argument, funcția trece și pe potrivire aproximativă. XLOOKUP nu are nevoie ca cheia să fie în stânga, dar tot returnează o singură potrivire pentru fiecare căutare.

Unește două tabele pe o coloană comună face aceeași treabă fără formule. Alege cheia din fiecare tabel și un tip de unire:

  • Păstrează toate rândurile din stânga păstrează fiecare rând din primul tabel și adaugă coloanele potrivite acolo unde există.
  • Doar potriviri păstrează doar rândurile găsite în ambele tabele.
  • Rânduri din stânga fără potrivire listează ce lipsește din al doilea tabel, adesea cel mai util rezultat.

Pentru chei duplicate, Prima potrivire se comportă ca VLOOKUP. Toate potrivirile adaugă un rând pentru fiecare potrivire, astfel încât un client care apare de trei ori în dreapta apare de trei ori în rezultat. Numără rândurile înainte și după, și verifică mai întâi duplicatele.

Nume scrise diferit

Cheile exacte eșuează când același lucru este scris în două feluri: „Jon Smith” și „John Smith”, „Müller” și „Mueller”. Potrivirea aproximativă asociază fiecărui nume din o listă cel mai apropiat nume din cealaltă, cu un scor. Scorul este cel mai mare dintre două măsuri. Una compară literele în ordine și recompensează un început comun, ceea ce se potrivește pentru „Smith” și „Smyth”. Cealaltă compară cuvintele, astfel încât un nume ale cărui cuvinte apar toate în celălalt nume primește 100. Citește un 100 cu atenție când un nume are cuvinte în plus. Instrumentul ignoră accentele și semnele de punctuație și poate elimina cuvinte de firmă, cum ar fi Inc sau Ltd. Un scor rămâne o estimare, așa că citește perechile înainte să le accepți.

Cazuri speciale

  • Caracterele invizibile fac cheile care arată identic să fie diferite. Elimină caracterele ascunse dacă cheile care arată identic nu se potrivesc.
  • Zerourile de la început dispar când un fișier se deschide într-un tabel, așa că „00421” nu mai se potrivește cu versiunea sa text. Bifează Ignoră zerourile de la început în unire, ca ambele scrieri să conteze drept aceeași cheie.
  • Coloanele ascunse se numără în continuare într-o comparație, dacă nu le ignori.

Metoda scurtă

  1. Alege o coloană-cheie în ambele fișiere și verifică să fie unică.
  2. Compară după cheie și activează regulile pentru majuscule și spații doar acolo unde diferența nu contează.
  3. Ignoră coloanele care se schimbă la fiecare salvare.
  4. Verifică totalurile. Cu chei unice, nemodificate plus modificate plus eliminate egalează numărul de rânduri din fișierul vechi, iar nemodificate plus modificate plus adăugate egalează numărul de rânduri din fișierul nou.

Răspunsuri rapide

De ce un singur rând inserat marchează totul ca modificat?

O comparație după poziție asociază fiecare rând cu cel de la același număr, iar inserarea deplasează fiecare rând următor. Compară după o coloană-cheie.

De ce două fișiere cu aceleași numere arată o modificare?

Valorile sunt probabil stocate ca text sau au un format diferit. Verifică tipul coloanei.

Tradus din Original în engleză cu ajutorul AI.

Comentarii

    Încă nu sunt comentarii. Fii primul.

    Evaluarea ta (opțional)

    E-mailul tău nu este afișat și nu este păstrat niciodată.

    Copertă pentru Open Data for AGI - Why Public, Free, and Open Datasets MatterOpen Data for AGI - Why Public, Free, and Open Datasets Matter

    De ce seturile de date publice, gratuite și deschise vor modela inteligența artificială generală la fel de mult ca algoritmii și puterea de calcul.

    $4.99Cumpără de pe GumroadÎn engleză