Mathematica: Loswerden von der „x ->“ in FindInstance Ergebnisse
-
06-07-2019 - |
Frage
Angenommen, ich habe folgende Ergebnisse:
a=FindInstance[2*b^2 + b^3 == b^4 + t && t < 10 && t > -1, {b, t},
Integers, 20]
{{b -> -1, t -> 0}, {b -> 0, t -> 0}, {b -> 1, t -> 2}, {b -> 2,
t -> 0}}
Wie kann ich von der „b->“ loswerden und bekommen nur das Array von b Antworten? Ich kann auf halbem Weg dorthin gelangen, mit:
a[[All,1]]
{b -> -1, b -> 0, b -> 1, b -> 2}
aber wie kann ich nur:
{-1, 0, 1, 2}
Danke
Lösung
Ich könnte etwas von dreeves' Antwort fehlt, aber die Art, wie ich immer geglaubt, Sie tun dies einfach durch Schreiben:
b /. a
Es ist ein Beispiel dafür in dem „Basic-Beispiele“ Abschnitt die Dokumentation für die Solve
Funktion , die den gleichen Ausgabestil verwendet.
Andere Tipps
Obwohl Wills Antwort der üblicher Weg ist, es zu tun, ich werde ein paar Alternativen bietet nur zum Spaß.
In[37]:= ans={{b -> -1, t -> 0},{b -> 0, t -> 0},{b -> 1, t -> 2},{b -> 2, t -> 0}};
In[38]:= Cases[ans, (b -> a_) :> a, Infinity]
Out[38]= {-1, 0, 1, 2}
In[39]:= ans[[All, 1]][[All, 2]]
Out[39]= {-1, 0, 1, 2}
In[40]:= ans /. {b -> a_, _} :> a
Out[40]= {-1, 0, 1, 2}
In[41]:= (ans /. Rule -> List)[[All, 1, 2]]
Out[41]= {-1, 0, 1, 2}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow