www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Mathematica" - Zufällige Auswahl aus Liste
Zufällige Auswahl aus Liste < Mathematica < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Mathematica"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Zufällige Auswahl aus Liste: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 23:04 Di 03.10.2006
Autor: derben

Hallo zusammen,

kann mir jemand von euch sagen wie man mit Mathematica aus einer Liste von Zahlen eine zufällig auswählen läßt?

Ich habe zum Beispiel durch die Funktion Random drei (sortierte) Stichproben erzeugt

Stich:=Table[Random[Integer, {-100, 100}], {10}];

SeedRandom[5]; {Sort[Stich], Sort[.Stich], Sort[Stich]}


Der Output von obigen ist:
{{-75, -69, -67, -22, -16, -12, 65, 86, 87, 88}, {-99, -97, -55, 14, 21, 29,
    38, 55, 55, 81}, {-95, -87, -45, -36, -30, 28, 39, 44, 71, 99}}

Ich möchte nun aus jeder der drei Zahlenlisten eine Zahl beliebig auswählen. Hat jemand eine Idee wie das geht? Gibt es da eine spezielle Funktion für?

Grüße derben

ch habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

        
Bezug
Zufällige Auswahl aus Liste: Listenelemente mit Part holen
Status: (Antwort) fertig Status 
Datum: 00:23 Mi 04.10.2006
Autor: Peter_Pein

Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)

In[1]:= Stich := Table[Random[Integer, {-100, 100}], {10}];
        SeedRandom[5];
        drei = Sort /@ Table[Stich, {3}]
Out[3]=
{{-75, -69, -67, -22, -16, -12, 65, 86, 87, 88},
{-99, -97, -55, 14, 21, 29, 38, 55, 55, 81},
{-95, -87, -45, -36, -30, 28, 39, 44, 71, 99}}

Ich nehme an, dass Du die drei Werte in einer Liste haben möchtest:

In[4]:= Map[Function[lst, Part[lst, Random[Integer, {1, Length[lst]}]]], drei]
Out[4]= {65, -55, 28}

da die Länge der Teillisten bekannt ist, geht das auch kürzer (Kurzschreibweisen für Map und Function sind auch noch dabei):

In[5]:= (#1MBRandom[Integer, {1, 10}] & ) /@ drei
Out[5]= {-12, -97, -45}

und falls Du die Werte lieber Variablen zuweisen möchtest:

In[6]:= {x, y, z} = (#1MBRandom[Integer, {1, 10}] & ) /@ drei;
        x
        y
        z
Out[7]= -67
Out[8]=  14
Out[9]=  99

In[10]:= Clear[x, y, z];

Ein völlig anderer Ansatz für Leute mit zu viel Zeit:

In[11]:=
Timing[
FindInstance[(Times @@ (dreiMB#1 - x[#1]) == 0 & ) /@ {1, 2, 3},
  x /@ {1, 2, 3}, 5]
]
Out[11]= {4.859*Second,
  {{x[1] -> -75, x[2] -> 55, x[3] -> -45}, {x[1] -> -22, x[2] -> -55,x[3] -> 44},
   {x[1] -> -16, x[2] -> 21, x[3] -> 39}, {x[1] -> 86, x[2] -> -55, x[3] -> -45},
   {x[1] -> 87, x[2] -> 14, x[3] -> 44}}}

oder

In[12]:=
Timing[
FindInstance[(Or @@ Thread[x[#1] == dreiMB#1] & ) /@ {1, 2, 3},
  x /@ {1, 2, 3}, 5]
]
Out[12]={1.016*Second,
  {{x[1] -> -75, x[2] -> 55, x[3] -> -45}, {x[1] -> -22, x[2] -> -55,x[3] -> 44},
   {x[1] -> -16, x[2] -> 21, x[3] -> 39}, {x[1] -> 86, x[2] -> -55, x[3] -> -45},
   {x[1] -> 87, x[2] -> 14, x[3] -> 44}}}
______________________________________________________________________________
\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_|

Ich hoffe, damit etwas geholfen zu haben,

  Peter

P.S. denke Dir die kleinen Bücher bitte als doppelte eckige linke Klammer. also Zeile "In[5]" wäre $\#MB\text{Random}[\text{Integer},\{1,10\}]\&\text{/@}\text{drei}}$

Anhang: [a]Notebook


Dateianhänge:
Anhang Nr. 1 (Typ: nb) [nicht öffentlich]
Bezug
                
Bezug
Zufällige Auswahl aus Liste: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 16:12 Do 05.10.2006
Autor: derben

Hallo,

"Ich hoffe, damit etwas geholfen zu haben,"

"etwas" ist gut. Das bringt mich (zumindest gefühlt) meilenweit voran. Danke!
So kann ich ich mich direkt den nächsten Baustellen widmen ;-).

Grüße derben




Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Mathematica"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]