Welkom terug.
In de vorige video hebben we geleerd over het importeren van gegevens en het gebruik van de bibliotheek van de panda om ons dataframe
te manipuleren.
Laten we nu wat meer leren over deze stap, namelijk het opschonen van de gegevens en in dit geval, laten
we proberen een interessant probleem op te lossen.
Laten we zeggen dat in plaats van dit te filteren wat we willen doen of wat onze baas ons komt vertellen,
hij of zij het wil weten.
Welnu, welke spelers zijn een goede deal, welke spelers zijn de beste in termen van vaardigheden, maar hebben ook lagere salarissen, dus misschien
kunnen we ze beter betalen?
Dus laten we zeggen dat de baas een paar dingen van je wil.
Als we hier teruggaan naar Kagle en naar onze gegevens kijken, zal het een link hebben naar alle kolommen die
deze gegevens hebben.
En laten we zeggen dat onze baas de huidige marktwaarde van de speler en het loon wil weten, zodat hij of zij wil weten welke speler op
dit moment ondergewaardeerd is, en misschien kunnen we aanbieden dat we die speler voor een heel goede
deal kunnen pakken.
Dus terwijl we uit de gegevens willen grijpen, is de waarde, het loon en natuurlijk de naamcategorie van de
speler.
Als je wilt, kun je de video pauzeren en dit zelf proberen, anders proberen we het.
Laten we een nieuwe variabele maken, een dataframe genaamd, en dit gaat vastlopen.
Met behulp van de panda's bibliotheek, de gegevens.
Frame-methode, die ons vorige dataframe accepteert dat we hebben gepakt, wat ons hele CSV-bestand is.
Dus laten we zeggen dataframe en dan gaan we als onze tweede parameter de kolommen selecteren die we willen.
In dit geval kunnen we het een reeks kolommen geven die we willen en die een naam krijgen.
Salaris.
En dan tot slot een waarde.
Dus laten we gewoon D afdrukken. F. een om te zien of dit werkt.
Daar ga je, zomaar, we hebben de naam loon en waarde van de speler, heilige moly, Messi,
Messi heeft een behoorlijk hoog loon.
Dat is een.
Dat is een mooie wens.
Oké, laten we nu doorgaan, hier is het volgende deel.
We hebben deze tafel.
Maar de gegevens zeggen ons op dit moment niet echt iets.
Stel dat we de gegevens nu willen sorteren.
Want wat we willen doen, is dat we het loon van elke speler willen vergelijken met de waarde en
misschien een andere kolom hebben, het verschil genaamd, om te zien welke speler de grootste kloof heeft tussen hun loon
en hun waarde.
Laten we proberen dit nu eens te proberen, idealiter kunnen we een andere kolom maken door simpelweg D
te zeggen. F. één, we gaan verschil toevoegen.
En deze verschilkolom wordt gewoon gelijk aan het dataframe dat we hier hebben gebouwd.
En het wordt de.
Evalueer.
Minus de F.
Het gewicht zomaar.
Nutsvoorzieningen.
Als ik dit doe, laten we dan D doen. F. één en klik op uitvoeren.
Oh, ik krijg een foutmelding als ik helemaal naar beneden scrol, ik zie niet-ondersteunde operand type S vier min.
Dus ik probeer een string en een string af te trekken.
En we hebben hier al eerder over geleerd, toch?
Je kunt hier zien dat het loon van een speler in euro's is en dat ze veel betaald krijgen.
Dus soms heb je de M, dat is vier miljoen of K voor duizenden.
We moeten dit dus omzetten in een Int-tarief, zodat we dat vrij gemakkelijk kunnen doen.
Nogmaals, met behulp van Python.
Nu, met dit deel, kun je proberen dit zelf op te lossen en proberen deze waarden en lonen om te rekenen naar
een geheel getal en de eurozone en de geldautomaat of het VK voor de duizenden te verwijderen.
Of als je dit gewoon snel wilt doen, kun je zelfs even Googlen, want dit is een veelvoorkomend probleem.
Het enige dat u hoeft te doen, is Google voor panda's om string naar Ent te converteren. of in mijn geval, kijk naar dat Googlen.
Ik vond de string twee komma negen Zürich naar dit converteren in het PANDAS-gegevensframe.
Het lijkt er dus op dat ze exact dezelfde vragen stellen als wij.
En nogmaals, als ontwikkelaar moet je echt leren Googlen en zelf antwoorden vinden,
omdat waarschijnlijk andere mensen dezelfde vragen hebben als jij.
Als ik nu naar het antwoord scrol, zie je dat ik een aantal antwoorden krijg die er te ingewikkeld uitzien, maar deze
vind ik erg leuk.
Dus waarde om te zweven.
Dus we veranderen een waarde in een float.
We geven het een soort X en dat is het.
Dus dit zet onze waarde om in float en je ziet hier dat het verschillende dingen voor ons vervangt, zoals
de K en de B. Dus dat is perfect.
Laten we dit kopiëren.
En nogmaals, ik zal naar deze bron linken zodat je zelf een kijkje kunt nemen als ik naar ons voetbal ga.
Laten we de functie invoeren die we hier hebben, zorg ervoor dat deze correct is geformatteerd, zodat
we nu de waarde hebben om te zweven, wat geweldig is als we teruggaan naar de vraag hier.
Helaas verwijderen ze alleen het laatste item in de lijst en niet het begingedeelte, dus dat kunnen we gewoon zelf
doen omdat we ook het euroteken willen verwijderen.
Er is dus eigenlijk een vrij eenvoudige manier om dit te doen met behulp van afwijzingen.
Dus laat me je laten zien dat we een loonvariabele kunnen doen die gelijk is aan D. F. een uur dataframe.
We pakken de loonkolom.
Laten we dit een beetje groter maken, zodat je het kunt zien.
En deze loonkolom gaat vervangen worden.
En met de vervangmethode kunnen we regex gebruiken, dus wat we kunnen doen is zeggen dat we het
euroteken willen verwijderen.
Dus laten we het gewoon vanaf hier kopiëren.
Net als dit.
Met een lege string en dan is de derde parameter om gewoon te zeggen dat regex gelijk is aan waar.
Nu, als je naar regex één op één dotcom gaat.
En we kopiëren terwijl we dat net deden, dus laten we dit gewoon kopiëren.
Als ik iets doe met een euroteken.
Je ziet dat het hier gemarkeerd is.
Dat is wat ze weer doen met regexp.
Dit is iets waar ik zojuist mee heb geëxperimenteerd.
Geloof me, ik herinner me dit niet uit mijn hoofd.
Ik heb het net opgezocht voor deze video, dus we vervangen al je tekens door de lege string en dan,
als we naar onze gaan.
Stack overflow-antwoord, je herinnert je hier dat we, om de waarde te gebruiken om te zweven, gewoon
geen waarde toepassen om te zweven.
Dus nogmaals, als we naar ons voetbal gaan.
Zeg gewoon Dot.
toepassing.
Waarde aan.
Vlot.
Daarom hebben we hier.
En we kunnen hetzelfde doen voor de waarde, dus laten we zeggen waarde.
Gaat gelijk worden.
Waarde hier en hetzelfde wordt toegepast.
En tot slot, met deze nieuwe kolommen, kunnen we ze gewoon bijwerken door simpelweg D te zeggen. F. één loon.
Gaat gelijk loon.
En dan gegevens van een.
Waarde.
Gaat gelijk zijn aan waarde, dus omdat dit nu gehele getallen worden, kan ik nu deze min-bewerking uitvoeren en hopelijk als we
geen fouten hebben gemaakt, zou dit moeten werken.
Laten we eens kijken.
Goed, kijk daar eens naar.
We hebben een nieuwe verschilkolom, die alleen de waarde van het loon aftrekt.
Geweldig.
Het laatste wat ik wil is dit uit te zoeken, zodat ik het beter kan begrijpen.
Dus laten we voor het laatste deel zeggen sorteren.
Waarden, nogmaals, een ander ding dat we van panda's krijgen.
En we sorteren op de kolom Verschil.
En we zullen zeggen verzenden.
Gelijk aan vals.
Dus we krijgen het grootste verschil eerst in plaats van laag naar hoog.
Dus als ik dit nu uitvoer.
Kijk eens aan, ik krijg de spelers met het grootste verschil helemaal tot aan de laagste spelers,
heel, heel cool.
Dit was dus een wat langere video, maar ik wilde je het idee laten zien van het opschonen van
de gegevens, dat wil zeggen dat we alle onnodige gegevens hebben verwijderd, typen hebben geconverteerd of dingen opschonen voor het geval we
iets nodig hadden, en dan misschien zelfs extra toegevoegd informatie die we mogelijk nodig hebben zodat we kunnen verbeteren of inzichten kunnen krijgen over
wat we hierna zouden willen doen.
Laten we een pauze nemen en ik zie je in de volgende video.