2017-07-11 6 views
0

auf Text Wie kann ich eine Python-Liste wie konvertieren:Konvertieren von numerischer Liste in Python basierte Liste

[0, 1/4, 2/4, 3/4 , 4/4] 

in die folgenden:

[r'$25^{th}$', r'$50^{th}$', r'$75^{th}$', r'$100^{th}$'] 

hier jedes Element der zweiten Liste entspricht ein Prozent Wert In der ersten Liste entspricht das Element 0 Werten unterhalb des 25. Perzentils. Ich möchte, dass die Lösung leicht auf verschiedene Längen, z.B. Die aktuelle Liste hat 5 Elemente, aber wir könnten 2 Elemente oder 10 haben. Gibt es einen pythischen Weg, dies zu tun?

+0

Ihre Versuche posten. –

+0

http://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.percentileofscore.html#scipy.stats.percentileofscore – Aditya

+0

was sind Ihre Prozentzeichen? – otayeby

Antwort

0

Etwas Ähnliches Ich denke:

a = [0, 1/4, 2/4, 3/4 , 4/4] 
b = [r'$%i^{th}$' % (i*100) for i in a[1:]] #skips first value 
1

Listen haben eine Funktion namens list.extend (seq), die Ihre Liste dynamisch um eine Sequenz erweitern kann. Zum Beispiel:

l = [1,2,3,4] 
l.extend([5,6]) 
print(l) # [1,2,3,4,5,6] 

Nun zu Ihrer eigentlichen Frage zu beantworten:

perclist = ["%4.2f th" % (float(i)*100) for i in fraclist] 
+1

@ofer Ich dachte daran, es einfach zu halten, ohne Listenverstehen zu benutzen, aber ich denke, das ist mehr Python. Danke, dass du es eingegeben hast. –

Verwandte Themen