[PYTHON] Einfach zu bedienende E-Cell 4 Advanced Edition

Vorbereitung

Informationen zur Installation finden Sie im separaten Artikel.

Dieser Artikel ist eine fortgeschrittene Ausgabe. Es wird davon ausgegangen, dass Sie die Anfänger- und Zwischenausgaben verstehen.

Darüber hinaus wird in diesem Artikel die Verwendung von IPython Notebook vorausgesetzt.

Wie benutzt man

Ich habe das Gefühl, dass es nicht mehr "einfach" zu bedienen ist, aber ich möchte am Ende etwas erweiterte Funktionen erläutern.

Regelbasierte Modellierung

Geben Sie der molekularen Spezies eine Struktur

Frühere Namen molekularer Spezies waren nur Symbole.

Wenn zum Beispiel die Reaktion "A> B" betrachtet wird, wird in vielen Fällen die Spezies A aufgrund eines Modifikationszustands oder einer Strukturänderung zur molekularen Spezies B und ist das gleiche Molekül wie das Molekül. Es ist möglich. Im Fall der molekularen Spezies A und B ist die Beziehung zwischen den molekularen Spezies jedoch nicht klar. Lassen Sie mich ein anderes Beispiel geben. In der Reaktion "A + A> B" ist die molekulare Spezies B wahrscheinlich Es ist zu erwarten, dass das A-Molekül ein Dimer mit zwei Bindungen ist, aber es ist nicht aus dem Namen B bekannt, und selbst wenn der Name "B" in "A2" geändert wird, kann der Computer dies nicht beurteilen.

Um diese Probleme zu lösen, ist die Strukturierung der molekularen Spezies der erste Schritt in der regelbasierten Modellierung. Im Folgenden wird die regelbasierte Modellierung mit E-Cell 4 beschrieben.

with reaction_rules():
    X(s=u) > X(s=p) | 1  # corresponding to 'A > B | 1'

In E-Cell 4 wird die Struktur der Molekülspezies unter Verwendung von Klammern und gleichen Zahlen bestimmt. Im obigen Beispiel "X (s = u)" und "X (s = p)" Jedes stellt einen molekularen Speziesnamen dar. Hier bedeutet die molekulare Spezies "X (s = u)", dass die Modifikation des Moleküls "X" im Zustand "u" liegt. Ebenso die molekulare Spezies "X (s = p)" ist, dass das modifizierte "des Moleküls" X "der Zustand" p "ist. Somit ist bei dieser Reaktion das Molekül" X "der" Zustand von "u" des modifizierten Moleküls. Bedeutet, sich von 'p' zu ändern. Dies ist die Struktur der molekularen Spezies.

Verwenden wir World, um dies zu bestätigen.

from ecell4 import *

w = gillespie.GillespieWorld(Real3(1, 1, 1))
w.add_molecules(Species('X(s=u)'), 60)
w.add_molecules(Species('X(s=p)'), 120)

print(w.num_molecules(Species('X(s=u)')))  # will print 60
print(w.num_molecules(Species('X(s=p)')))  # will print 120

Die Anzahl wird durch Hinzufügen von 60 bzw. 120 Molekülspezies gezählt. Selbst wenn der Schreibstil der Molekülspezies geändert wird, kann die hinzugefügte Anzahl wie gewohnt erhalten werden. Was passiert dann, wenn Folgendes getan wird?

print(w.num_molecules(Species('X')))  # will print 180

Ich habe die Anzahl der molekularen Spezies 'X' gezählt, aber wir haben keine der molekularen Spezies 'X' hinzugefügt. Trotzdem haben wir die Anzahl von 180 erhalten. Dies heißt 'X'. Dies liegt daran, dass alle Moleküle mit der Bezeichnung "X" unabhängig vom modifizierten Zustand gezählt werden, nicht die genannten molekularen Spezies. Die ersten beiden hinzugefügten molekularen Spezies heißen beide "X", nur der modifizierte Zustand ist unterschiedlich. Daher sind beide wahr, wenn 'X' gezählt wird.

Übrigens, wenn Sie nur die Molekülspezies mit dem Namen "X" zählen möchten, verwenden Sie "num_molecules_exact". Dieses Mal gibt es keine solchen Molekülspezies, daher sollten Sie 0 erhalten.

Betrachten Sie als nächstes die Bindung. Die Molekülspezies, die den Komplex darstellen, in dem das Molekül 'X' und das Molekül 'Y' gebunden sind, können wie folgt geschrieben werden.

with reaction_rules():
    X(b1) + Y(b2) > X(b1^1).Y(b2^1) | 1

Schauen Sie sich die rechte Seite dieser Reaktion an. Sie können sehen, dass 'X' und 'Y' durch Punkte verbunden sind. Auf diese Weise wird der Komplex dargestellt, indem mehrere molekulare Spezies mit Punkten verbunden werden. ..

Übrigens repräsentiert "X (b1 ^ 1) .Y (b2 ^ 1)" eine molekulare Spezies als Ganzes, aber einige von ihnen sind "X (b1 ^ 1)" und "Y (b2 ^ 1)". Sie können sehen, dass es zwei Elemente enthält, die als ')' bezeichnet werden. In E-Cell 4 werden diese als Einheitsmolekularspezies Einheitsspezies bezeichnet. `X (b1 ^ 1) .Y (b2 ^ 1)` ist zwei Es ist eine molekulare Spezies, die eine Einheit molekularer Spezies umfasst. Wenn es sich um "X (p = u)" handelt, besteht es natürlich aus einer Einheit molekularer Spezies.

Zurück zur Geschichte: Die molekularen Einheitsspezies von "X (b1 ^ 1) .Y (b2 ^ 1)" werden als "b1" bzw. "b2" modifiziert. Die Verbindungspunkte zwischen Arten werden bestimmt. 'X' und 'Y' werden durch die jeweiligen Modifikationen 'b1' und 'b2' verbunden. Die Zahl nach dem Symbol '^' ist eine Zahl, die die Entsprechung der Verbindungspunkte angibt. Ja. Dies kann eine beliebige Zahl größer als 0 sein, solange dies entspricht. Auch dieses Mal habe ich den Modifikatoren unterschiedliche Namen wie "b1" und "b2" gegeben, aber sie können gleich sein.

Modifiziert mit "X (b1)" auf der linken Seite Die Tatsache, dass weder der Zustand durch die gleiche Anzahl noch die Verbindung durch "^" in "b1" geschrieben ist, bedeutet, dass der Verbindungspunkt "b1" mit niemandem verbunden ist. Zur Verdeutlichung. "" X (b1) "" bedeutet "X", das über die Modifikation "b1" an niemanden gebunden ist.

Nachdem wir die Darstellung des Komplexes erklärt haben, versuchen wir es auf die gleiche Weise wie zuvor.

w.add_molecules(Species('X(b1)'), 10)
w.add_molecules(Species('Y(b2)'), 20)
w.add_molecules(Species('X(b1^1).Y(b2^1)'), 30)

print(w.num_molecules(Species('X')))  # will print 40
print(w.num_molecules(Species('Y')))  # will print 50
print(w.num_molecules(Species('X.Y')))  # will print 30

Last but not least kann im Fall einer molekularen Spezies, die sowohl eine Bindungsstelle als auch eine Modifikationsstelle aufweist, "X (a, b = c)" geschrieben werden, aber "X (b = c, a)" Es kann nicht als "geschrieben werden. Selbst wenn es mehrere Teile gibt, muss es als" X (a, b, c, d = e, f = g) "geschrieben werden. Die Reihenfolge wird jedoch geändert." X (c, a, b, f = g, d = e) `` kann mit der gleichen Bedeutung wie zuvor verwendet werden.

Reaktionsregel

Im vorherigen Beispiel wurde es möglich, die Anzahl der Moleküle zu zählen, indem der Molekülspezies eine Struktur gegeben wurde. Beispielsweise bedeutet die beim Zählen angegebene Molekülspezies "X" nicht eine bestimmte Molekülspezies, sondern zählt. Es ist eine Art Muster, das die spezifischen Bedingungen der Molekülspezies bestimmt, die X sein sollten, dh diejenigen, die X in der Einheitsmolekularspezies enthalten. Die regelbasierte Modellierung besteht darin, solche Muster bei der Beschreibung von Reaktionen zu verwenden. Der nächste Schritt.

Betrachten Sie ein einfaches Beispiel, das aus einer Einheit molekularer Spezies X besteht.

Zum Beispiel hat die Einheitsmolekülspezies X drei Phosphorylierungsstellen, 's1', 's2' und '3', von denen jede unabhängig voneinander einen der beiden Zustände von 'u'or'p' annehmen kann. Zu diesem Zeitpunkt beträgt die Anzahl der Zustände, die die Einheitsmolekülspezies X annehmen kann, $ 2 ^ 3 = 8 $.

Wie sollen wir nun eine solche Phosphorylierungsreaktion des Moleküls X schreiben? Eigentlich ist es wie folgt.

with reaction_rules():
    X(s1=u, s2=u, s3=u) > X(s1=p, s2=u, s3=u) | 1
    X(s1=u, s2=p, s3=u) > X(s1=p, s2=p, s3=u) | 1
    X(s1=u, s2=u, s3=p) > X(s1=p, s2=u, s3=p) | 1
    X(s1=u, s2=p, s3=p) > X(s1=p, s2=p, s3=p) | 1
    X(s1=u, s2=u, s3=u) > X(s1=u, s2=p, s3=u) | 2
    X(s1=p, s2=u, s3=u) > X(s1=p, s2=p, s3=u) | 2
    X(s1=u, s2=u, s3=p) > X(s1=u, s2=p, s3=p) | 2
    X(s1=p, s2=u, s3=p) > X(s1=p, s2=p, s3=p) | 2
    X(s1=u, s2=u, s3=u) > X(s1=u, s2=u, s3=p) | 3
    X(s1=u, s2=p, s3=u) > X(s1=u, s2=p, s3=p) | 3
    X(s1=p, s2=u, s3=u) > X(s1=p, s2=u, s3=p) | 3
    X(s1=p, s2=p, s3=u) > X(s1=p, s2=p, s3=p) | 3

Es ist nicht leicht zu verstehen, was dies bedeutet, und es fehlerfrei zu schreiben. Der Grund, warum es so problematisch ist, ist, dass jede Phosphorylierungsreaktion nicht unabhängig ist und eine Phosphorylierungsstelle berücksichtigt wird. Weil alle anderen Zustände gezählt werden müssen.

Betrachten wir daher das Muster der molekularen Spezies. Wenn wir uns auf die Phosphorylierungsstelle 1 'konzentrieren, besteht die Phosphorylierungsreaktion darin, dass sich der Zustand von 1' des Moleküls X von 'u'to'p' ändert. Es reicht aus, ein Molekül zu nehmen, das zum Muster von Molekül X passt, in dem der Zustand von '1' wird 'und' den Zustand in 'p' ändert.

with reaction_rules():
    X(s1=u) > X(s1=p) | 1
    X(s2=u) > X(s2=p) | 2
    X(s3=u) > X(s3=p) | 3

Hierbei handelt es sich nicht um Reaktionen mit einzelnen spezifischen Molekülspezies links und rechts, sondern um Reaktionsregeln, da sie ein Muster molekularer Spezies ergeben. Um dieses Modell verwenden zu können, unterscheiden sich die Reaktionen von der Vergangenheit. Sie müssen angeben, dass es sich um ein gesetzliches Modell handelt.

Da die Reaktionsregel nur eine auf dem Muster basierende Regel ist, ist es nicht möglich zu wissen, welche Art von molekularer Spezies tatsächlich existiert. Im obigen Beispiel erscheint die molekulare Spezies 'X (s1 = u)' auf der linken Seite. Das heißt nicht, dass es wirklich existiert. Denken Sie daran, dass ich mir als erstes eine molekulare Spezies mit drei Modifikationen vorgestellt habe, wie z. B. 'X (s1 = u, s2 = u, s3 = u)'. wollen.

Im regelbasierten Modell werden durch Angabe einer Molekülspezies, die zu einem Samenkeim wird, alle möglichen Molekülspezies durch wiederholte Anwendung der Reaktionsregel auf wurmartige Weise erzeugt. Hier werden die Molekülspezies, die zu einem Samen werden, später in World beschrieben. Betrachten Sie es als eine molekulare Spezies, die hinzugefügt werden muss.

m = get_model(seeds=(Species('X(s1=u, s2=u, s3=u)'),))
print(len(m.species_attributes()))  # will print 8
print(len(m.reaction_rules()))  # will print 12

Aus der hier angegebenen Spezies "X (s1 = u, s2 = u, s3 = u)" ist ersichtlich, dass 8 molekulare Spezies und 12 Reaktionen nach Wunsch erhalten werden können.

Zum Schluss berechnen wir mit diesem Modell.

y = run_simulation(
    numpy.linspace(0, 5, 100),
    {'X(s1=u,s2=u,s3=u)': 120},
    model=m,
    species_list=('X', 'X(s1=p)', 'X(s2=p)', 'X(s3=p)'))

plot8.png

Die aufzuzeichnenden Molekülspezies werden durch Angabe von "species_list" bestimmt. Wenn Sie sich nur die Phosphorylierungszustände der modifizierten "1", "s2" und "3" ansehen, können Sie feststellen, dass sie um die angegebenen Geschwindigkeitskonstanten zunehmen. Natürlich ist die Gesamtmenge an X-Molekülen konstant.

Platzhalter

Nachdem Sie die grundlegende Verwendung kennen, sollten Sie sich noch eines merken: den Platzhalter, der in E-Cell 4 durch das Symbol '\ _'dargestellt wird.

Die erste und wichtigste Verwendung ist die Bindung. Wenn beispielsweise die Molekülspezies "A" eine Bindungsstelle "b" hat und Sie die Anzahl der A wissen möchten, die an niemanden gebunden sind, "" A (b) `` `. Wie soll dann A, das mit jemandem verbunden ist, ausgedrückt werden?

with reaction_rules():
    A(b) + B(b) > A(b^1).B(b^1) | 1
    A(b^_, s=u) > A(b^_, s=p) | 2

m = get_model(seeds=(Species('A(b, s=u)'),))

Beachten Sie das zweite Reaktionsgesetz. Es ist geschrieben als `A (b ^ _, s = u)` .'_ 'Ist ein Platzhalter, das heißt, was. Das zweite Reaktionsgesetz ändert das 'von'u'to'p' der Modifikation, was bedeutet, dass diese Reaktion nur stattfindet, wenn A an jemanden gebunden ist. Ja.

Wenn es A ist, das einfach mit jemandem kombiniert wird, schreiben Sie `A (b ^ _)`.

Dieser Platzhalter kann natürlich sowohl für die Qualifikation als auch für den Beitritt verwendet werden. Ein einfaches Beispiel ist "A (s = _)", was bedeutet, dass der Qualifikationsstatus alles sein kann. Ich denke nicht, dass es notwendig ist zu schreiben, wenn es in Ordnung ist, aber ich garantiere, dass A die Qualifikation hat.

Eine andere wichtige Sache ist, wenn es für den Namen der molekularen Einheit verwendet wird. Wenn Sie "_ (s = u)" schreiben, hat es ein modifiziertes "und es kann ein beliebiges Molekül im Zustand" u "sein. Lass es uns versuchen.

wildcard1.py


from ecell4 import *

with reaction_rules():
    _(s=u) > _(s=p) | 1

m = get_model(seeds=(
    Species('A(s=u)'), Species('B(s=u)'), Species('C(b^1,s=u).C(b^1,s=u)')))

y = run_simulation(
    numpy.linspace(0, 5, 100),
    {'A(s=u)': 30, 'B(s=u)': 40, 'C(b^1,s=u).C(b^1,s=u)': 60},
    model=m,
    species_list=('A(s=u)', 'B(s=u)', 'C(s=u)', '_(s=u)'))

plot9.png

Es ist ersichtlich, dass der Name der molekularen Einheitsspezies entweder für 'A', 'B' oder 'C' gilt. Wenn ein Komplex gebildet wird, gilt er auch für jeden von ihnen. Natürlich kann er auch mit Observer und num_molecules verwendet werden.

Platzhalter können auch verwendet werden, um die Eigenschaften einer molekularen Spezies zu bestimmen.

with species_attributes():
    _ | {'D': '1', 'radius': '0.005'}

Sie können die Attribute aller molekularen Typen mithilfe von Platzhaltern angeben, ohne für jeden molekularen Typ dieselben Attribute anzugeben. Wenn Sie eine Ausnahme hinzufügen möchten, geben Sie diese zuvor an.

Mach ein Video

Ich könnte `` `viz.plot_world``` verwenden, um den Zustand der Welt einfach zu visualisieren. So erstellen Sie ein Video. Es gibt verschiedene Möglichkeiten, ein Video zu erstellen, diesmal jedoch Verwenden wir ParaView.

Laden Sie zuerst ParaView von der oben genannten Site herunter und installieren Sie es. Unten wird ParaView-4.3.1-Windows-32bit.exe verwendet.

Notieren Sie die Position der Partikel

Zeichnen Sie zunächst die Daten zur Visualisierung auf. Hierfür kann auch Observer verwendet werden.

Verwenden wir dieses Mal das folgende Modell.

from ecell4 import *

with species_attributes():
    A | {'D': '1', 'location': 'C'}
    B | {'D': '1', 'location': 'N'}
    N | {'location': 'C'}

with reaction_rules():
    A + N > B | 1e-4
    B + C > A | 1e-4

m = get_model()

w = lattice.LatticeWorld(Real3(1, 1, 1), 0.005)
w.bind_to(m)
w.add_structure(Species('C'), Sphere(Real3(0.5, 0.5, 0.5), 0.441))
w.add_structure(Species('N'), Sphere(Real3(0.5, 0.5, 0.5), 0.350))
w.add_molecules(Species('A'), 720)

Wir denken an ein Modell, in dem verschachtelte Kugeln als Struktur erzeugt werden und von außen nach innen fließen. Die innere Kugel N ist so platziert, dass sie die äußere Kugel C überlappt.

plot3d7.png

Um die Berechnung für die nächste 1 Sekunde durchzuführen, wählen Sie alle 0,01 Sekunden die molekularen Typen 'A' und 'B' aus und zeichnen Sie ihre Positionen im CSV-Format auf. Die Vorgehensweise ist jedoch grundsätzlich dieselbe wie zuvor.

sim = lattice.LatticeSimulator(w)
obs1 = NumberObserver(('A', 'B'))
obs2 = FixedIntervalCSVObserver(0.01, 'sample%03d.csv', ('A', 'B'))
sim.run(1, (obs1, obs2))

plot10.png

Dieses Mal verwenden wir zwei Beobachter gleichzeitig. Von diesen verwenden wir "FixedIntervalCSVObserver" für die Aufzeichnung im CSV-Format. Die Argumente sind die aufzuzeichnende Zeitbreite, der Dateiname und die Liste der molekularen Spezies. Sie können die Dateinummer mit `` `% 03d``` in den Dateinamen aufnehmen.

Wenn Sie die obigen Schritte ausführen, erhalten Sie "sample000.csv'to'sample100.csv". Speichern Sie die Datei an dem Speicherort, an dem Sie Python ausgeführt haben, oder, wenn Sie IPython Notebook verwenden, in dem Verzeichnis, in dem Sie IPython Notebook auf der Serverseite gestartet haben. Sollte gemacht werden.

Visualisierung mit ParaView

Die Erklärung von ParaView selbst finden Sie direkt auf der folgenden Website. Hier werde ich jedoch nur die Visualisierung des Ergebnisses von E-Cell 4 erläutern.

Wählen Sie zunächst die mit `` `Datei-> Öffnen``` gespeicherten CSV-Formatdaten aus. Die gespeicherten Seriennummerndateien werden zusammen angezeigt (siehe Abbildung unten). Klicken Sie nach dem Laden unten links in den Eigenschaften auf die Schaltfläche Übernehmen. Drücken Sie, um den Ladevorgang abzuschließen.

paraview1.png

Visualisieren Sie nach dem Lesen die Daten mit Pipeline. Konvertieren Sie zuerst von der CSV-Tabelle in die Koordinaten. Wählen Sie `` `Filter-> Alphabetisch-> Tabelle zu Punkten```. Von links unten X, Y, Z. Nachdem Sie x, y, z als Spalte ausgewählt haben, klicken Sie auf die Schaltfläche Übernehmen.

paraview2.png

Wählen Sie abschließend `Filter-> Common-> Glyph```. Ändern Sie nach wie vor` Glyph Type von `` `Properties in`` Sphere``` Stellen Sie ``Scale Mode auf` `` scalar und drücken Sie die Taste, die einen Hinweis als `Reset using current data values` neben `Scale Factor``` unten gibt. Ich denke, dass ein numerischer Wert festgelegt wird, aber ignorieren Sie ihn und geben Sie diesmal `4``` ein und drücken Sie die Apply-Taste.

paraview4.png

Dann wird das Element "Färbung" zu den vorherigen "Eigenschaften" hinzugefügt. Wählen Sie also "Seite". Sie sollten in der Lage sein, Folgendes zu visualisieren. Wenn Sie nichts sehen können, wird der Pipeline-Browser oben links angezeigt Stellen Sie sicher, dass der Augapfel links von `Glyph1``` in `aktiv ist.

paraview3.png

Drücken Sie danach oben auf die Schaltfläche "Wiedergabe". Wenn Sie sehen können, wie die rote Farbe richtig zunimmt, sind Sie fertig. Sie können das Video über "Datei-> Animation speichern ..." speichern Muss.

Andere Tipps

Nutzung der Fabrik

Ich werde erklären, wie man schreibt, um das Wechseln von Modulen von E-Cell 4 zu vereinfachen. Wenn Sie nicht gut programmieren können, können Sie es überspringen.

Möglicherweise haben Sie bemerkt, dass der Unterschied bei der Verwendung verschiedener Module von Ode, Gillespie, Meso und Gitter fast nur beim Erstellen von World auftritt. In Wirklichkeit ist der Name Simulator jedoch auch anders, und beim Erstellen von World 2 Es kann ein zweites Argument geben oder nicht. Um diese Probleme zu lösen, bietet jedes Modul eine Komfortklasse namens Factory.

f = ode.ODEFactory()
# f = gillespie.GillespieFactory()
# f = meso.MesoscopicFactory(Integer3(4, 4, 4))
# f = lattice.LatticeFactory(0.005)

w = f.create_world(Real3(1, 1, 1))  # XXX: Factory
w.bind_to(m)
w.add_molecules(Species('C'), 60)
sim = f.create_simulator(w)  # XXX: Factory
obs = FixedIntervalNumberObserver(0.1, ('A', 'B', 'C'))
sim.run(10, obs)

Auf diese Weise kann das Modul durch Umschalten der Fabrik umgeschaltet werden. Lassen Sie uns dies außerdem zu einer Funktion machen, damit es leicht verglichen werden kann.

comparison.py


from ecell4 import *

def run(m, f):
    w = f.create_world(Real3(1, 1, 1))  # XXX: Factory
    w.bind_to(m)
    w.add_molecules(Species('C'), 60)
    sim = f.create_simulator(w)  # XXX: Factory
    obs = FixedIntervalNumberObserver(0.1, ('A', 'B', 'C'))
    sim.run(10, obs)
    return obs

with species_attributes():
    A | B | C | {'D': '1'}

with reaction_rules():
    A + B == C | (0.01, 0.3)

m = get_model()
obs1 = run(m, lattice.LatticeFactory(0.005))
obs2 = run(m, ode.ODEFactory())

viz.plot_number_observer(obs1, '-', obs2, '--')

plot6.png

Natürlich können nicht alle Funktionen von World gemeinsam verwendet werden, aber die Verwendung von Factory erleichtert die Trennung des Algorithmus vom Problem.

Übungen

  1. Übung molekularer Spezies in der regelbasierten Modellierung. Wie man ein Dimer exprimiert, das aus zwei X-Molekülen besteht. Versuchen Sie auch, wie man beim Zählen der Anzahl von X damit umgeht.

  2. Praxis der Reaktionsregeln bei der regelbasierten Modellierung. Wie viele molekulare Spezies existieren, wenn es zwei Arten von Einheitsmolekülspezies "X" und "Y" gibt und die folgenden Reaktionen unabhängig voneinander festgelegt werden?

  • Xs bilden ein Dimer.
  • X und Y verbinden sich.
  • Y hat eine Änderungsstelle und nimmt einen von zwei Zuständen an.

Achten Sie jedoch auf die Symmetrie.

  1. Üben Sie das Aufzeichnen der Position von Molekülen. Dieses Mal habe ich es in einer Datei im CSV-Format mit `` `FixedIntervalCSVObserver``` aufgezeichnet, aber als ich es mit einem Texteditor oder einer Tabellenberechnungssoftware geöffnet habe, was tatsächlich geschrieben wurde Lassen Sie uns überprüfen, ob es gibt.

  2. Üben Sie die Visualisierung mit ParaView. ParaView kann das Erscheinungsbild je nach Einstellung auf verschiedene Arten ändern. Erstellen Sie also Ihr eigenes Video.

Recommended Posts

Einfach zu bedienende E-Cell 4 Advanced Edition
Einfach zu bedienende E-Cell 4 Beginner's Edition
Einfach zu bedienendes E-Cell 4 Intermediate
Einfach zu bedienende Flasche
Einfach zu bedienendes SQLite3
Einfach zu bedienendes Jupyter-Notebook (Python3.5)
Verwendung von FastAPI ② Erweitert - Benutzerhandbuch
Einfache Möglichkeit, Wikipedia mit Python zu verwenden
Machen wir das Jupyter Lab einfach zu bedienen
Einfache Möglichkeit, Python 2.7 unter Cent OS 6 zu verwenden
Verwendung von xml.etree.ElementTree
Wie benutzt man Python-Shell
Hinweise zur Verwendung von tf.data
Verwendung von virtualenv
Verwendung von Image-Match
Wie man Shogun benutzt
Verwendung von Pandas 2
Verwendung von Virtualenv
[Einführung in Word Cloud] Einfache Verwendung mit Jetson-nano ♬
Verwendung von numpy.vectorize
Verwendung von pytest_report_header
Wie man teilweise verwendet
Wie man Bio.Phylo benutzt
Verwendung von SymPy
Wie man x-means benutzt
Verwendung von WikiExtractor.py
Verwendung von IPython
Verwendung von virtualenv
Wie benutzt man Matplotlib?
Verwendung von iptables
Wie benutzt man numpy?
Gründe für die Verwendung von log
Wie benutzt man venv
Verwendung des Wörterbuchs {}
Wie benutzt man Pyenv?
Verwendung der Liste []
Wie man Python-Kabusapi benutzt
Python-How zur Verwendung von Pyinstaller
Verwendung von OptParse
Verwendung von return
Wie man Imutils benutzt
Einfache Verwendung der Nifty Cloud API mit Botocore und Python
Es war zu einfach, eine vorhandene Datenbank mit Django zu verwenden
Verwendung von Qt Designer
Verwendung der Suche sortiert
[gensim] Verwendung von Doc2Vec
python3: Verwendung der Flasche (2)
Verstehen Sie, wie man Django-Filter verwendet
Verwenden Sie MeCab, um Messwerte abzurufen
Verwendung des Generators
[Python] Verwendung von Liste 1
QSM-Analyse - Verwendung von MEDI-
Verwendung von FastAPI ③ OpenAPI
Einfach zu lesender Kontrollfluss
Wie benutzt man Python Argparse?
Machen Sie es mit der Syntax einfach
Wie man Pandas Rolling benutzt