2. Erstellen Sie mit Python einen Entscheidungsbaum von 0 und verstehen Sie ihn (2. Grundlagen des Python-Programms)

** Erstellen und Verstehen von Entscheidungsbäumen in Python von Grund auf ** 1. Übersicht --2 Grundlagen des Python-Programms

Ich werde das Python-Programm zum Erstellen eines Entscheidungsbaums erklären.

2.1 Kommentare sind # oder '' '' (3 einfache Anführungszeichen)

#Kommentar
a = 1 #Kommentar

'''Das Folgende wird ein Kommentar sein
b = c
c = d
'''

2.2 Typ wird dynamisch typisiert (Typ wird automatisch ermittelt)

#Variablen werden dynamisch typisiert
# =Weist (kopiert) Werte von rechts nach links zu.
i = 1 #Ganzzahliger Typ(int)
f = 2.1 #Gleitkomma-Typ(float)
s = "a" #Zeichentyp(string)
b = True #Boolescher Typ(bool)
l = [0,1,2] #Array, Listentyp
t = (0,1,2) #Taple-Typ
d = {"a":0, "b":1} #Wörterbuch, assoziativer Array-Typ

print(i,f,s,b,l,t,d)
# 1 2.1 a True [0, 1, 2](0, 1, 2) {'a': 0, 'b': 1}

#Wenn Sie den Typ herausfinden möchten, verwenden Sie type.
print(type(i)) #Ausgabe<class 'int'>

#Die Variable enthält nicht den tatsächlichen Wert, sondern speichert den tatsächlichen Wert
#Es ist eine Variable, die als Referenztyp bezeichnet wird und auf einen Ort verweist.
#Sie können die Kennung des tatsächlichen Werts anhand der ID abrufen.
print(id(l)) # 00000000000000 (Es kommt auf die Ausführung an)
l2 = l #Beispielsweise verweist eine Kopie eines Arrays nur auf zwei, und das tatsächliche Array ist nur eins.
print(id(l2)) # 00000000000000 (Id oben(l)Wird der gleiche Wert sein wie)
#Da es nur ein tatsächliches Array gibt, scheint das Hinzufügen eines Elements mit einem Verweis auf l2 auch dem Array l hinzugefügt worden zu sein.
l2.append(1)

2.3 Operator (Wert berechnen oder zuweisen. Das Berechnungsergebnis wird grundsätzlich in eine Variable eingegeben)

a = 1 #a enthält 1
b = a #b enthält auch 1
a = 2 #a wird um 2 überschrieben, b bleibt unverändert
a += 1 #Der Wert von a erhöht sich um eins(Zu diesem Zeitpunkt ist a 3)
a -= 1 #Der Wert von a wird um eins dekrementiert(Zu diesem Zeitpunkt ist a 2)
a *= 2 #Der Wert eines verdoppelt sich(Zu diesem Zeitpunkt ist a 4)
a /= 3 #Der Wert von a wird zu einem Drittel(Zu diesem Zeitpunkt ist a 1.3333333333333333)
a = 1+2-3*4/5 #In der Reihenfolge Multiplikation, Division, Addition, Subtraktion berechnet, ist a 0.6
# (Der Gleitkommafehler ist jedoch tatsächlich 0.6000000000000001)

2.4 Erstellen Sie eine Gruppe von Programmen durch Einrücken (Verschieben von Zeichen nach rechts).

a = 0
#Geben Sie die Ausführungsbedingungen der eingerückten Programmgruppe unten rechts an.
#Es gibt Bedingungen, Wiederholungen, Funktionalisierungen usw., die unten gezeigt werden.
if a == 1:
    #Die Linie, die durch den Einzug nach if nach rechts verschoben wird, ist die Linie, die auf der linken Seite der Linie von dieser Linie um den gleichen Betrag nach rechts verschoben ist
    #Bilden Sie eine Programmgruppe.
    print(1)
    print(2)
    pass #Zeigt das bisher explizit eingerückte Ende der Gruppe an.
    #Die Zeilen darüber sind eine Gruppe von Programmen, die ausgeführt werden, wenn die if-Bedingungen erfüllt sind.
print(3) #Ausgabe unabhängig vom Wert von a, vorbehaltlich der obigen Bestimmungen, wenn

#Ausgabe 3

2.4.1 Gruppierte Programme können die Kontrolle über ihren Betrieb erhalten.

#Ausführen oder nicht, nur einmal, wenn ausgeführt
wenn Bedingung:
    # program group

#Wiederholen Sie die Ausführung nur für die Elemente des Arrays.
#Die Elemente des Arrays werden der Variablen v in der Mitte der Wiederholung in der Reihenfolge von vorne zugewiesen.
für v im Array:
    # program group

#Führen Sie die Programmgruppe weiter aus, solange die Bedingungen erfüllt sind
während Zustand:
    # program group

#Entscheiden Sie, wann Sie es später ausführen möchten
#(Erstelle eine Gruppe und gib ihr vorerst einen Namen)
def Programmgruppenname():
    # program group
    #Das Ergebnis der Ausführung dieser Programmgruppe wurde mit return ausgeführt.
    #Es kann an den Ort zurückgegeben werden.
    return

#Dies ist ein Fehler
#Einrückungsänderungen werden gedruckt(2)Wird eine andere Programmgruppe.
#Programmgruppe 2 hat jedoch keine Erklärung
if a == 1:
    #Programmgruppe 1 Die Steuerung dieser Programmgruppe erfolgt, wenn a==1:
    print(1)
        #Programmgruppe 2 Ein Fehler tritt auf, weil für diese Programmgruppe kein Steuerteil vorhanden ist.
        print(2)

2.4.2 Bedingte Anweisung

a = 1
b = 2
c = 2

#a und b sind gleich und a und c sind unterschiedlich
if a==b and a!=c:
    print("Nur c ist anders")

#a ist größer oder gleich b(a und b enthalten dasselbe)Oder a überschreitet c(a und c enthalten nicht dasselbe)
elif a>=b or a>c:
    print("a ist größer oder gleich b oder größer als c")

# if,Andere als elif Bedingungen
else:
    print("anders als das")

#Andere Ausgabe als diese
2.4.2.1 Ein weiteres Beispiel für das Schreiben einer bedingten Anweisung
a = 1
b = 2
#0 wird v zugewiesen, wenn a und b gleich sind, und 1 wird anderweitig zugewiesen.
v = 0 if a==b else 1
print(v)
#Ausgabe 1

2.4.3 Wiederholte Aussage (für)

for v in [0,1,2,3]: #Array[0,1,2,3]Die folgende Verarbeitung wird für die Anzahl der Elemente von wiederholt.
    #Bei der Verarbeitung wird zu diesem Zeitpunkt v in der Reihenfolge von vorne auf die Elemente des Arrays gesetzt.
    print(v)
    pass #Beenden Sie den Einzug hier explizit.
#Ausgabe 0 1 2 3

#Durch Verwendung von enumerate können der Index und der Wert des Arrays im iterativen Prozess ermittelt werden.
for i,v in enumerate([5,3,7,8]):
    #i ist der Index und v ist der Elementwert.
    print("(",i,v,")")
#Ausgabe( 0 5 ) ( 1 3 ) ( 2 7 ) ( 3 8 )

#Mit zip können zwei Arrays zu einem und iterativ kombiniert werden.
for v0,v1 in zip([1,2,3,4],[5,6,7,8]):
    #v0 enthält die Elemente des Arrays des ersten Arguments von zip, und v1 enthält die Elemente des zweiten Arguments.
    print("(",v0,v1,")")
#Ausgabe( 1 5 ) ( 2 6 ) ( 3 7 ) ( 4 8 )

2.4.4 Wiederholte Aussage (während)

a = 3

#a ist 0 oder mehr
while a>=0:
    print(a)
    #Verringern Sie den Wert von a um eins
    a -= 1

#Ausgang 3 2 1 0

2.4.5 Funktionen, Methoden

#Funktionsdefinition Der Name ist Funktion_name,Die Argumente sind param1 und param2, und param2 ist das Standardargument.
#Das Argument, das verwendet wird, wenn es beim Aufrufen der Funktion nicht festgelegt wird, wird angegeben.
def function_name(param1,param2=1):
    print("p1:",param1,"p2",param2)
    #Diese Funktion ruft param1 auf+Gibt das Ergebnis von param2 zurück.
    return param1 + param2

#Aufruf einer Funktion (hier zum ersten Mal Funktion_Das Programm namens name wird ausgeführt
#param1 hat 5 Argumente, param2 ist nicht gesetzt (Standardargumente verwenden)
v = function_name(5)
#Ausgabe(function_Ausgabe durch print-Anweisung in der Namensfunktion) p1: 5 p2 1
print("Rückgabewert",v)
#Rückgabewert ausgeben 6
2.4.5.1 Ein weiteres Beispiel für das Schreiben eines Lambda-Ausdrucks und einer Funktion
#Funktionsname= lambda (Streit) : (Rückgabewert)Schreiben Sie die Funktion schriftlich.
f = lambda x: x*x
#Beim Aufruf entspricht dies der Funktionsdefinition von def
v = f(2)
print(v) #Anzeige als 4

2,5 Zeichen Typ ⇔ Zahlentyp Konvertierung

si = "1"   #Zeichentyp
sf = "2.3" #Zeichentyp
i = 4      #Ganzzahliger Typ

#Ganzzahl ⇒ Zeichenkonvertierung und Hinzufügen von Zeichenfolgen sind Zeichenkombinationen.
print(str(i)+si)
# 41

#Zeichen ⇒ Ganzzahlkonvertierung, Addition nach Ganzzahlkonvertierung ist die Addition von Ganzzahlen wie sie ist
print(i+int(si))
# 5

#Zeichen ⇒ Gleitkommakonvertierung, Ganzzahl+Das Ergebnis der Gleitkommaberechnung wird automatisch in Gleitkomma geändert
print(i+float(sf))
# 6.3

2.6 Array, Liste

#Sequenzgenerierung
a = [1,1,2,3,2]              # a=[[1,1,2,3,2]
b = [n for n in range(8)]  # b=[0, 1, 2, 3, 4, 5, 6, 7]

#Referenz
#Negativer Wert ist-Es ist ein Index, der von hinten mit 1 als letztem Element zählt.
v = a[0]  # v=1
v = a[-1] # v=2

#hinzufügen
a += [4]     # a=[1, 1, 2, 3, 2, 4]
a.append(5)  # a=[1, 1, 2, 3, 2, 4, 5]

#Mitnahme(A vor der Ausführung=[1, 1, 2, 3, 2, 4, 5])
v = a.pop(0) # v=1, a=[1, 2, 3, 2, 4, 5]

#Scheibe(A vor der Ausführung=[1, 2, 3, 2, 4, 5])
# a[Erster Index:Index eins vor dem Ende]
# a[:]Wenn der Index wie in weggelassen wird, ist der erste 0 und der letzte die Anzahl der Elemente.
c = a[1:3] # c=[2, 3]

#Maximum Minimum(A vor der Ausführung=[1, 2, 3, 2, 4, 5])
mx,mi = max(a),min(a) # mx=5, mi=1

#durchschnittlich(mean),Median(median)Am häufigsten(mode),Standardabweichung(stdev), Verteilt(variance)
# (A vor der Ausführung=[1, 2, 3, 2, 4, 5])
from statistics import mean,median,mode,stdev,variance
v = mean(a) # v=2.8333333333333335
v = median(a) # v=2.5
v = mode(a) # v=2
v = stdev(a) # v=1.4719601443879744
v = variance(a) #v=2.1666666666666665

#Doppelte Entfernung(A vor der Ausführung=[1, 2, 3, 2, 4, 5])
c = set(a) # c={1, 2, 3, 4, 5}

#Sortieren (neues sortiertes Array erstellen)(A vor der Ausführung=[1, 2, 3, 2, 4, 5])
c = sorted(a) # c=[1, 2, 2, 3, 4, 5](a bleibt unverändert)

#Sortieren (ersetzen Sie den Inhalt des Arrays durch den sortierten)(A vor der Ausführung=[1, 2, 3, 2, 4, 5])
a.sort()      # a=[1, 2, 2, 3, 4, 5]

2.7 Wörterbuch, assoziatives Array

#Die Generierung, der Schlüssel ist das Wetter, die Temperatur und das Array wird für den Wert angegeben.
d = {
    "Landessprache" : [81, 60, 97, 96],
    "Mathematik" : [80, 78, 75, 96],
    "Englisch" : [76, 85, 65, 88],
}
print(d)
#Ausgabe{'Landessprache': [81, 60, 97, 96], 'Mathematik': [80, 78, 75, 96], 'Englisch': [76, 85, 65, 88]}

#Erhalten Sie Wert durch Angabe des Schlüssels
a = d["Mathematik"] # a=[80, 78, 75, 96]

#Stellen Sie Werte durch Angabe eines Schlüssels ein (überschreiben)
d["Englisch"] = [77, 61, 91, 87] # d["Englisch"]=[77, 61, 91, 87]

#Datenschleife
for k,v in d.items():
    print(k,v)
#Landessprache ausgeben[81, 60, 97, 96]Mathematik[80, 78, 75, 96]Englisch[77, 61, 91, 87]

#Maximum, Minimum (bei Punktzahl in der Landessprache)
jmx,jmi = max(d["Landessprache"]),min(d["Landessprache"])
#print(jmx,jmi)

#Erwerb des Subjektnamens mit dem höchsten Durchschnittswert
from statistics import mean
#Für max des Wörterbuchtyp-Arrays können Sie im Schlüsselargument eine Funktion angeben, mit der das Maximum ermittelt werden soll.
#In diesem Fall ist das Argument k(Schlüsselwert des Wörterbuchtyps)Die Lambda-Formel wird verwendet, um den Durchschnitt der Werte zu ermitteln.
kmx = max(d,key=lambda k:mean(d[k])) # kmx="Landessprache"

Recommended Posts

2. Erstellen Sie mit Python einen Entscheidungsbaum von 0 und verstehen Sie ihn (2. Grundlagen des Python-Programms)
Machen Sie mit Python einen Entscheidungsbaum von 0 und verstehen Sie ihn (4. Datenstruktur)
Erstellen Sie mit Python einen Entscheidungsbaum von 0 und verstehen Sie ihn (5. Information Entropy)
Erstellen Sie mit Python einen Entscheidungsbaum aus 0 und verstehen Sie ihn (3. Datenanalysebibliothek Pandas Edition)
Erstellen Sie mit Python einen Entscheidungsbaum von 0 (1. Übersicht)
Verknüpfen Sie Python Enum mit einer Funktion, um es aufrufbar zu machen
Schreiben wir ein Python-Programm und führen es aus
Machen Sie aus einem Python-Programm einen Daemon und führen Sie es automatisch aus, wenn das Betriebssystem gestartet wird
WEB Scraping mit Python und versuchen, aus Bewertungen eine Wortwolke zu machen
Versuchen Sie, ein einfaches Spiel mit Python 3 und iPhone zu erstellen
Vom Kauf eines Computers bis zur Ausführung eines Programms auf Python
Erhalten Sie E-Mails von Google Mail und beschriften Sie sie mit Python3
Machen Sie eine Lotterie mit Python
Hasch mit Python und entkomme dem Ego eines bestimmten Ministers
Erstellen eines bestimmten Baums mit Scikit-Learn
Lassen Sie uns eine GUI mit Python erstellen.
Python / Machen Sie ein Diktat aus einer Liste.
Ich habe einen Server mit Python-Socket und SSL erstellt und versucht, über den Browser darauf zuzugreifen
Erstellen Sie ein Empfehlungssystem mit Python
Lassen Sie uns ein Diagramm mit Python erstellen! !!
Vorsichtsmaßnahmen bei der Eingabe von CSV mit Python und der Ausgabe an json, um exe zu erstellen
So erstellen Sie eine Überwachungskamera (Überwachungskamera) mit Opencv und Python
Erstellen Sie mit Python und OpenCV ein einfaches OMR (Mark Sheet Reader)
Holen Sie sich Daten von VPS MySQL mit Python 3 und SQL Alchemy
Machen Sie ein Thermometer mit Raspberry Pi und machen Sie es im Browser Teil 4 sichtbar
Ich habe versucht, mit Selenium und Python einen regelmäßigen Ausführungsprozess durchzuführen
Lesen Sie die Datei in Python mit einem relativen Pfad aus dem Programm
Erstellen Sie mit Python + Django + AWS eine Scraping-App und wechseln Sie Jobs
Verstehen Sie die Wahrscheinlichkeiten und Statistiken, die für das Fortschrittsmanagement mit einem Python-Programm verwendet werden können
[Python] Ein Programm, das Treppen mit # erstellt
Lassen Sie uns mit Python ein Shiritori-Spiel machen
Fraktal zum Erstellen und Spielen mit Python
Ein Memo mit Python2.7 und Python3 in CentOS
Lassen Sie uns mit Python langsam sprechen
Verstehen Sie den Entscheidungsbaum und klassifizieren Sie Dokumente
Erstellen Sie ein Webframework mit Python! (1)
Erstellen Sie eine Desktop-App mit Python mit Electron
Machen wir einen Twitter-Bot mit Python!
Erstellen Sie ein Webframework mit Python! (2)
Ein Python-Programm, das die Größe eines Videos ändert und es in ein Bild verwandelt
[Ev3dev] Lassen Sie uns ein Fernsteuerungsprogramm von Python mit dem RPyC-Protokoll erstellen
Ich habe versucht, einen periodischen Prozess mit CentOS7, Selenium, Python und Chrome durchzuführen
Machen Sie ein Thermometer mit Raspberry Pi und machen Sie es im Browser Teil 3 sichtbar
Machen Sie Twitter Trend Bot mit Heroku + Python
Erstellen einer Python-Umgebung mit virtualenv und direnv
Teilen Sie jede PowerPoint-Folie in eine JPG-Datei und geben Sie sie mit Python aus
Ich möchte ein Spiel mit Python machen
Versuchen Sie, in Python einen "Entschlüsselungs" -Code zu erstellen
Stellen Sie OpenCV3 in Python3 zur Verfügung, das mit pyenv installiert wurde
Starten Sie einen Webserver mit Python und Flask
TRIE-Baumimplementierung mit Python und LOUDS
Ersetzen wir UWSC durch Python (5) Machen wir einen Roboter
Versuchen Sie, mit Python eine Diedergruppe zu bilden
Lesen Sie mit Python Zeile für Zeile aus der Datei
Konvertieren Sie JSON mit Python von Splunk in CSV