Dies ist ein Kampfbericht über das Klopfen von 100 Eiern, ohne das Ei des Datenwissenschaftlers zu kennen. Es ist ein Rätsel, ob ich das Rennen beenden kann. ~~ Auch wenn es unterwegs verschwindet, denken Sie bitte, dass es Qiita nicht gegeben wird. ~~
100 Klopfartikel 100 Knock Guide
** Sei vorsichtig, wenn du es versuchst, da es Spoiler enthält **
Diesmal von 10 bis 18 Zum ersten Mal mit Inhaltsverzeichnis
Von diesem Zeitpunkt an sind die Dinge, die ich geschrieben habe, nicht immer erfolgreich, und ich schreibe, während ich mir die Antworten anschaue und Beispiele für Fehler schreibe.
mine10.py
df=df_store
df[df['store_cd'].str.contains('S14')].head()
'''Musterantwort'''
df_store.query("store_cd.str.startswith('S14')", engine='python').head(10)
'''Fehlerbeispiel'''
import re
df=df_store
df[None != re.match(r'S14.*',str(df['store_cd']))]
#>(Unterlassung)KeyError: False
** Auf den ersten Blick dachte ich: "Wenn Sie LIKE mit SQL verwenden, ist es ein Schuss !?" ** ** ** Im Moment versuche ich es zu lösen, indem ich mich in ein Rematching stürze. Ich bemerkte jedoch, dass es sich nicht um einen Zeichenkettentyp handelte, und selbst wenn ich das erste Zeichen mit dieser Schreibmethode übereinstimmte, kehrte es nicht mit None zurück. ~ ~ Ich verursachte immer wieder KeyError ~ ~ Ich suchte nach einem anderen Mittel.
Dann fand ich etwas namens "df.str.contains" und war beeindruckt.
Ich habe es benutzt, während ich mich unbesiegbar fühlte, weil ich das Innere mit regulären Ausdrücken schreiben konnte, aber ich habe die Modellantwort ~~ und die Wakanowa Karanai ~~ Methode verwendet.
engine = 'python'
scheint eine magische Sache zu sein [reference]
mine11.py
df=df_customer
df[df['customer_id'].str.contains('1$')].head()
'''Musterantwort'''
df_customer.query("customer_id.str.endswith('1')", engine='python').head(10)
Ein Problem, das uns weiterhin den Wert von SQL mitteilt. Nachdem Sie den Artikel bis zu einem gewissen Grad geschrieben und überprüft haben, lesen Sie die Referenz erneut und überprüfen Sie die Methode unter "df.str".
mine12.py
df= df_store
df=df[df['address'].str.contains('Yokohama')]
df
'''Musterantwort'''
df_store.query("address.str.contains('Yokohama')", engine='python')
mine13.py
df=df_customer
df=df[df['status_cd'].str.contains('^[A-F]')]
df.head(10)
'''Musterantwort'''
df_customer.query("status_cd.str.contains('^[A-F]', regex=True)", engine='python').head(10)
mine14.py
df=df_customer
df=df[df['status_cd'].str.contains('[0-9]$')]
df.head(10)
'''Musterantwort'''
df_customer.query("status_cd.str.contains('[1-9]$', regex=True)", engine='python').head(10)
mine15.py
df=df_customer
df=df[df['status_cd'].str.contains('^[A-F].*[0-9]$')]
df.head(10)
'''Musterantwort'''
df_customer.query("status_cd.str.contains('^[A-F].*[1-9]$', regex=True)", engine='python').head(10)
mine16.py
df=df_store
df=df[df['tel_no'].str.contains('[0-9]{3}-[0-9]{3}-[0-9]{4}')]
df.head(10)
'''Musterantwort'''
df_store.query("tel_no.str.contains('[0-9]{3}-[0-9]{3}-[0-9]{4}', regex=True)", engine='python')
Es tut mir leid, dass ich keinen Eindruck habe. Es tut mir leid, dass ich keine Abfrage verwendet habe. ~~ Ich habe Angst, weil ich beim Schreiben keinen Fehler mache ~~
Außerdem scheint "regex = True" "reguläre Ausdrücke verwenden" [[Referenz]] zu bedeuten (https://note.nkmk.me/python-pandas-str-contains-match/).
mine17.py
df_customer.sort_values('birth_day', ascending=True).head(10)
Ich habe das vergessen, also habe ich es geschrieben, während ich es überprüft habe. Bedeutet "aufsteigend" dasselbe wie SQL "ORDER BY ASC"?
mine17.py
df_customer.sort_values('birth_day', ascending=False).head(10)
Der Unterschied zu SQL besteht darin, dass "ascending = False" anstelle von "DESC" festgelegt wird.
1 und 2 waren Bewertungen mit dem Gefühl eines Verdauungsspiels, aber von nun an wird es weitere Fragen geben, ob Wissen kombiniert werden kann oder nicht. ~~ Ich habe nicht genug Wissen ~~ Ich hatte viele schwierige Probleme, deshalb möchte ich etwas langsamer vorgehen. Es sind einige Teile zu überspringen (21,22 usw.).
Recommended Posts