Erstellen Sie eine Matrix mit zufälliger Position

Ich schaffe damit eine Matrix

def letsplay(m,n): matrix = [[ '.' for m in range(10)] for n in range(10)] for sublist in matrix: s = str(sublist) s = s.replace('[', '|').replace(']', '|').replace(',', "") print(s) 

Das kommt zurück

 >>> '.'.'.'.'.'.'.'.'.'.' '.'.'.'.'.'.'.'.'.'.' ... ... 

Das schafft eine Matrix 10×10. Und jetzt möchte ich innerhalb der Matrix zufällige Position mit einer Wahrscheinlichkeit = prob hinzufügen, das prob sollte vom Benutzer eingegeben werden und für die zufälligen posstions a 'N' zurückkehren.

2 Solutions collect form web for “Erstellen Sie eine Matrix mit zufälliger Position”

Wie wäre es mit einer Wahrscheinlichkeitsmatrix:

 probs = numpy.random.random_sample((10, 10)) data = numpy.empty(probs.shape, dtype='S1') data.fill('.') data[probs < threshold] = 'N' 

Wo threshold ist eine Variable, die Sie wählen, zum Beispiel 0,05 für eine 5% Chance.

Nicht ganz sicher, was prob = 5 bedeuten würde, die Wahrscheinlichkeiten reichen von 0 bis 1? Ich denke, es gibt zwei Teile zu deiner Frage.

  • Ändern eines zufälligen Elements der Matrix

    matrix[random.randrange(10)][random.randrange(10)] = 'N'

  • Haben eine Anzahl von Elementen in der Matrix geändert, basierend auf einer Wahrscheinlichkeit.

     import random prob = 0.01 numNs = prob*10*10 # because eg 1% chance in 10x10 matrix = 1 field for i in range(numNs): changed = False while not changed: x = random.randrange(10) y = random.randrange(10) if not matrix[x][y] == 'N': # if not already changed matrix[x][y] = 'N' changed = True 
  • Python | Vermeiden Sie den vorherigen Wert aus der zufälligen Auswahl aus der Liste
  • N zufällige, zusammenhängende und nicht überlappende Teilsequenzen jeder Länge
  • Generiere zufällige UTF-8 String in Python
  • Generieren Sie zufällige Zahlen, die die beliebige Verteilung replizieren
  • Python: Zufällige Zahlen in eine Liste
  • Wie würde ich einen zufälligen Hexdigit-Code-Generator mit .join und für Loops machen?
  • Gewichtete Stichprobe in Python
  • Erstellen eines niemals wiederholenden zufälligen hexadezimalen Generators
  • Wie man zufällige Zahl mit der spezifischen Länge in Python generiert
  • Zufallszahlengenerator, wie man Zufallszahlen bekommt, die nicht gleich sind
  • Python numpy.random.choice in C # mit nicht / einheitlicher Wahrscheinlichkeitsverteilung
  • Python ist die beste Programmiersprache der Welt.