我想使用python來計算每個地址在數據文件中出現的次數。 地址範圍不固定,這意味着地址範圍與每個數據文件不同。 min和max之間的一些地址根本不出現。 (第二列是地址)使用python計算每個地址在數據文件中出現的次數
爲了有效地解決這個問題,我該如何處理? 我不知道哪個數據結構是可以的,哪個函數對它有幫助?
我只是試圖用大數組的哪個索引來表示地址。讀取數據文件並加1到數組[地址]。這是糟糕的代碼。
加了: 我試圖pieces_write [1] .value_counts(),結果是數據文件的
print(pieces_write[1].value_counts())
AttributeError: 'list' object has no attribute 'value_counts'
實施例(第2列是地址)
0 303567 3584 Write 0.000000
1 55590 3072 Write 0.000000
0 303574 3584 Write 0.026214
1 240840 3072 Write 0.026214
1 55596 3072 Read 0.078643
0 303581 3584 Write 0.117964
1 55596 3072 Write 0.117964
0 303588 3584 Write 0.530841
1 55596 3072 Write 0.530841
0 303595 3584 Write 0.550502
1 240840 3072 Write 0.550502
1 55602 3072 Read 0.602931
0 303602 3584 Write 0.648806
1 55602 3072 Write 0.648806
0 303609 3584 Write 0.910950
1 55602 3072 Write 0.910950
0 303616 3584 Write 0.930611
1 240840 3072 Write 0.930611
1 55608 3072 Read 0.983040
0 303623 3584 Write 1.028915
1 55608 3072 Write 1.028915
0 303630 3584 Write 1.330380
1 55608 3072 Write 1.330380
CODE爲數據文件閱讀
for line in open(datafile):
line_data = line.split()
if int(line_data[1]) < 6000000:
if line_data[3] == 'Read':
pieces_read.append(line_data)
x_read.append(count)
else:
pieces_write.append(line_data)
x_write.append(count)
x_tot.append(count)
pieces_tot.append(line_data)
count += 1
你嘗試過什麼已經實現?代碼有任何特定問題嗎? – yeputons
['collections.Counter'](https://docs.python.org/2/library/collections.html#collections.Counter) –
@yeputons我添加更多描述。 – WKK