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 **
Möglicherweise ist eine Aktualisierung für eine Weile nicht möglich. Wenn es verschwindet, Sumanne
Das ist schwer zu sehen! Diese Schreibweise ist gefährlich! Wenn Sie Fragen haben, lassen Sie es mich bitte wissen. ~~ Ich werde es als Nahrung verwenden, während mein Herz geschädigt wird.
Diese Lösung ist falsch! Diese Interpretation ist anders! Bitte kommentieren Sie, wenn Sie welche haben.
Diesmal von 57 bis 62. [Letztes Mal] 52-56 [Zum ersten Mal mit Inhaltsverzeichnis]
P-057: Kombinieren Sie das Extraktionsergebnis der vorherigen Frage und des Geschlechts (Geschlecht) und erstellen Sie neue Kategoriedaten, die die Kombination von Geschlecht und Alter darstellen. Der Wert der Kategorie, die die Kombination darstellt, ist beliebig. Die ersten 10 Elemente sollten angezeigt werden.
Zeigen Sie nur Ihr Programm und die erste Zeile
df=df_customer.copy() df_bins=pd.cut(df.age,[10,20,30,40,50,60,150],right=False,labels=[10,20,30,40,50,60]) df=pd.concat([df[['customer_id','birth_day']],df_bins],axis=1) df.head(10)
>|customer_id |birth_day |age|
|--:|--:|--:|
|CS021313000114 |1981-04-29 |30|
#### **`mine57.py`**
```py
df=pd.concat([df_customer[['customer_id','birth_day','gender_cd']],df_bins],axis=1)
df['age_gen']=df.gender_cd.astype('str')+df.age.astype('str')
df.head(10)
'''Musterantwort'''
df_customer_era['era_gender'] = df_customer['gender_cd'] + df_customer_era['age'].astype('str')
df_customer_era.head(10)
Seit ich "pd.concat" gemacht habe, hatte ich das Gefühl, dass ich es nicht vom letzten Mal ablenken musste.
immer noch, Fügen Sie in dieser Spalte "Alter" eine Geschlechtsziffer zu 30 hinzu "1 (weiblich) + 30 (Alter) = 130" Ist der Zweck dieser Zeit
Ich habe nicht verstanden, was ich geschrieben habe
miss57.py
df=pd.concat([df_customer[['customer_id','birth_day','gender_cd']],df_bins],axis=1)
df=df.groupby(['age','gender_cd']).agg({'customer_id':'count'})
pd.pivot_table(df,index='age',columns='gender_cd')
~~ Ich habe versehentlich eine Kreuztabelle erstellt ~~
P-058: Machen Sie den Gender-Code (gender_cd) des Kundendatenrahmens (df_customer) zu einer Dummy-Variablen und extrahieren Sie ihn zusammen mit der Kunden-ID (customer_id). Sie können 10 Ergebnisse anzeigen.
mine58.py
df=df_customer.copy()
pd.concat([df['customer_id'],pd.get_dummies(df['gender_cd'])],axis=1).head(10)
'''Musterantwort'''
pd.get_dummies(df_customer[['customer_id', 'gender_cd']], columns=['gender_cd']).head(10)
Was ist eine Dummy-Variable? Ich dachte, ich habe nachgesehen Es scheint, dass das entsprechende Element in der ersten Spalte erstellt wird und das Vorhandensein oder Fehlen des Elements in der Tabelle durch "wahr" oder "falsch" angezeigt wird.
Oder besser gesagt, es ist schneller, auf den Tisch zu schauen
männlich | Weiblich | Unbekannt |
---|---|---|
0 | 1 | 0 |
0 | 0 | 1 |
0 | 1 | 0 |
0 | 1 | 0 |
0 | 1 | 0 |
Dinge wie dieses
P-059: Der Verkaufsbetrag (Betrag) des Belegdetail-Datenrahmens (df_receipt) wird für jede Kunden-ID (customer_id) summiert, und der Gesamtverkaufsbetrag wird auf einen Durchschnitt von 0 und eine Standardabweichung von 1 sowie die Kunden-ID ** standardisiert **. , Anzeige mit dem Gesamtumsatz. Die zur Standardisierung verwendete Standardabweichung kann entweder eine unverzerrte Standardabweichung oder eine Stichprobenstandardabweichung sein. Wenn die Kunden-ID jedoch mit "Z" beginnt, handelt es sich um ein Nichtmitglied. Schließen Sie sie daher von der Berechnung aus. Sie können 10 Ergebnisse anzeigen.
…
……
………
Ich habe verschiedene Seiten gelesen und versucht, sie zu verstehen, aber ich konnte mich nicht einholen, weil ich zu dieser Zeit die Mathematik übersprungen habe.
Soll ich meine Senioren bitten, mir die Referenzwebsite mitzuteilen? Schreibe auch
df['hyou1'] =df['amount_sum'] - df.amount_sum.mean()
Ich habe einen Fehler gemacht.
Ich habe versucht, die Antwort "preprocessing.scale" in umgekehrter Reihenfolge nachzuschlagen, um sie irgendwie zu verstehen
https://note.nkmk.me/python-list-ndarray-dataframe-normalize-standardize/ Zweite Hälfte
Normalisierung / Standardisierung von pandas.DataFrame und pandas.Series Verwenden Sie die Pandas-Methode ~ Ausgelassen ~
Im Programm print( (df.T - df.T.mean()) / df.T.std() ) # col1 col2 col3 # a -1.0 0.0 1.0 # b -1.0 0.0 1.0 # c -1.0 0.0 1.0
Das ist es
Mit anderen Worten
(Data /.mean ()) /.std ()
Wenn ja
mine59.py
df=df_receipt.copy()
df=df.query('not customer_id.str.startswith("Z")',engine='python')
df=df.groupby('customer_id').agg({'amount':'sum'}).reset_index()
df['hyou1'] =(df['amount'] - df.amount.mean()) / df.amount.std()
df.head(10)
'''Musterantwort'''
#sklearn Vorverarbeitung.Berechnet mit der Standardabweichung der Stichprobe zur Verwendung der Skala
df_sales_amount = df_receipt.query('not customer_id.str.startswith("Z")', engine='python'). \
groupby('customer_id').agg({'amount':'sum'}).reset_index()
df_sales_amount['amount_ss'] = preprocessing.scale(df_sales_amount['amount'])
df_sales_amount.head(10)
Es stimmte überein.
P-060: Der Verkaufsbetrag (Betrag) des Belegdetail-Datenrahmens (df_receipt) wird für jede Kunden-ID (customer_id) summiert, und der Gesamtverkaufsbetrag wird auf den Mindestwert 0 und den Maximalwert 1 auf die Kunden-ID und den Verkaufsbetrag normiert. Anzeige mit der Summe. Wenn die Kunden-ID jedoch mit "Z" beginnt, handelt es sich um ein Nichtmitglied. Schließen Sie sie daher von der Berechnung aus. Sie können 10 Ergebnisse anzeigen.
Bei Same Site
print((df - df.min()) / (df.max() - df.min())) # col1 col2 col3 # a 0.0 0.0 0.0 # b 0.5 0.5 0.5 # c 1.0 1.0 1.0
Weil es gibt, wird dies umgeleitet
mine60.py
df=df_receipt.copy()
df=df.query('not customer_id.str.startswith("Z")',engine='python')
df=df.groupby('customer_id').agg({'amount':'sum'}).reset_index()
df['minmax'] =(df['amount'] - df.amount.min()) / (df.amount.max()-df.amount.min())
df.head(10)
'''Musterantwort'''
#sklearn Vorverarbeitung.Berechnet mit der Standardabweichung der Stichprobe zur Verwendung der Skala
df_sales_amount = df_receipt.query('not customer_id.str.startswith("Z")', engine='python'). \
groupby('customer_id').agg({'amount':'sum'}).reset_index()
df_sales_amount['amount_mm'] = preprocessing.minmax_scale(df_sales_amount['amount'])
df_sales_amount.head(10)
P-061: Der Verkaufsbetrag (Betrag) des Belegdetail-Datenrahmens (df_receipt) wird für jede Kunden-ID (customer_id) summiert, und der Gesamtverkaufsbetrag wird in einen regulären logarithmischen Wert (Basis = 10) umgewandelt, um die Kunden-ID und den Verkaufsbetrag zu summieren Anzeige mit. Wenn die Kunden-ID jedoch mit "Z" beginnt, handelt es sich um ein Nichtmitglied. Schließen Sie sie daher von der Berechnung aus. Sie können 10 Ergebnisse anzeigen.
P-062: Der Verkaufsbetrag (Betrag) des Belegdetail-Datenrahmens (df_receipt) wird für jede Kunden-ID (customer_id) summiert, und der Gesamtverkaufsbetrag wird in einen natürlichen logarithmischen Wert (Basis = e) umgewandelt, um die Kunden-ID und den Verkaufsbetrag zu summieren. Anzeige mit. Wenn die Kunden-ID jedoch mit "Z" beginnt, handelt es sich um ein Nichtmitglied. Schließen Sie sie daher von der Berechnung aus. Sie können 10 Ergebnisse anzeigen.
Für die Logarithmisierung Exponentialfunktion verwenden
mine61_62.py
df=df_receipt.copy()
df=df.query('not customer_id.str.startswith("Z")',engine='python')
df=df.groupby('customer_id').agg({'amount':'sum'}).reset_index()
#60, reguläres logarithmisches Verhältnis
df['jouyou']=df.amount.apply(lambda x: math.log10(x))
#61, natürliches logarithmisches Verhältnis
df['shizen']=df.amount.apply(lambda x: math.log(x))
df.head(10)
Kann mit gelöscht werden
mohan61_62.py
#sklearn Vorverarbeitung.Berechnet mit der Standardabweichung der Stichprobe zur Verwendung der Skala
df_sales_amount = df_receipt.query('not customer_id.str.startswith("Z")', engine='python'). \
groupby('customer_id').agg({'amount':'sum'}).reset_index()
df_sales_amount['amount_log10'] = np.log10(df_sales_amount['amount'] + 1)
df_sales_amount.head(10)
#sklearn Vorverarbeitung.Berechnet mit der Standardabweichung der Stichprobe zur Verwendung der Skala
df_sales_amount = df_receipt.query('not customer_id.str.startswith("Z")', engine='python'). \
groupby('customer_id').agg({'amount':'sum'}).reset_index()
df_sales_amount['amount_loge'] = np.log(df_sales_amount['amount'] + 1)
df_sales_amount.head(10)
………
Was ist "+ 1"?
Das Protokoll ist ein Teil, den ich in der Mathematik der High School verwirrt habe, also tut es mir wirklich leid.
Wenn Sie über diese + 1
Bescheid wissen, kommentieren Sie bitte. Wirklich Niwa Karanai
Recommended Posts