У меня есть файл .txt, подобный этому
episode:2840 score:6.0 memory length:700345 epsilon:0.5576491831247304 steps:359 recent reward:5.95
episode:2841 score:4.0 memory length:700629 epsilon:0.5574965123606621 steps:284 recent reward:5.96
episode:2842 score:5.0 memory length:700911 epsilon:0.5573449596383373 steps:282 recent reward:5.93
Max lifes :5
episode:2800 score:7.0 memory length:687331 epsilon:0.5646918805492361 steps:268 recent reward:6.04
episode:2801 score:5.0 memory length:687678 epsilon:0.5645029051613243 steps:347 recent reward:6.03
episode:2802 score:6.0 memory length:688027 epsilon:0.564312906709082 steps:349 recent reward:6.03
Начиная с episode:0
и обновляя, но время от времени я вижу эту строку Max lifes :5
, а затем некоторые эпизоды повторяются.Я хочу удалить строки, которые я вижу, эпизод снова появляется.Как я могу это сделать?Проблема в том, что повторяется только число episode
, а не остальные столбцы.Так что для episode:2800
мы получаем другой счет, эпсилон и т. Д., Когда он появляется второй раз.Это то, что у меня пока есть:
import matplotlib.pyplot as plt
import os
import numpy as np
import pandas as pd
from itertools import islice
def next_1000_lines(file_opened, N):
return [x.strip() for x in islice(file_opened, N)]
with open("ouput_10000.txt") as f:
lines = f.readlines()
x, y = [], []
for line in lines:
if line[:3] != "Max":
x.append(line.split()[0])
y.append(line.split()[7])
x = next_1000_lines(x, 1000)
y = next_1000_lines(y, 1000)
f.close()
print(x, y)
plt.plot(x,y)
plt.show()
Я хочу создать график reward
для каждой 1000 episodes
, эта функция next_1000_lines
правильная?Заранее спасибо.