この質問が少し基本的なものであるか、他の場所で答えを逃した場合は申し訳ありませんが、道に迷って混乱している初心者を気の毒に思い、できれば手を差し伸べてください. 「date time id number random crap」の行で構成される長いファイルが大量にあり、特定の数字が特定の ID と並んで出現する回数を数えようとしています。私が知る限り、数百ではなく 1 つの数字しか返されないことを除いて、すべてが正しいです。私は本当にこれを、うまくいかないかもしれないビットだけに切り詰めました. 私がやろうとしていることを実行するためのより迅速で簡単な方法はおそらく何百もありますが、まだ知りません。教えてください!データと呼ばれるファイルからのデータのリストと、ファイルに存在するIDのリストがあります。
#get date(data[i][0]), time(data[i][1]), number(data[i][3]), id(data[i][4]) from original data if a certain id (found in listofids) is present, and write into new list
data0=[]
data1=[]
etc
values=[data[i][0], data[i][1], data[i][3], data[i][4]]
for line in data:
if listofids[0] in line:
data0.append(values)
if listofids[1] in line:
data1.append(values)
etc
#put number into list h if it occurs in list data0
h=[]
r=range (0, len(data0))
for i in r:
number=data0[i][3]
if number not in h:
h.append(number)
print (len(h))
print (h)
#count the time each element in list h occurs in list data0
print (data0.count(h[0]), data0.count(h[1]), data0.count(h[2]))
これが少しごちゃごちゃしていて紛らわしい場合は申し訳ありません。また、本当に簡単なことが抜けている場合は特に申し訳ありません。
助けてくれてありがとう!