Я пытался проанализировать данные из файла .dat. Эксперимент в файле повторяется (очень много) раз, так что каждый эксперимент имеет n точек данных для каждого из r экспериментов. В качестве примера: R = 4 экспериментов, при п = 3 точек данных в каждом эксперименте:Анализ и построение из файла данных (.dat) с n наборами значений x и y в python
1 4.8
2 3.4
3 2.3
1 6.5
2 5.3
3 4.2
1 9.8
2 8.4
3 7.6
1 13.8
2 12.4
3 11.6
Хочу прочитать файл и участок 4 графиков - первый 3, второй 3 и третья 3 и четвертая 3 строки , Мой код до сих пор это:
for line in myfile:
if not line.strip():#takes out empty rows
continue
else:
data.append(line)
for line in data:
x, y = line.split()
timestep.append(float(x))
value.append(float(y))
z = 0.0
j = 1
n = 3 #no. of data points in one experiment
r = 4 #no. of times experiment repeats
x = np.arange(1,n)
for k in range(1, r):
for i in (value):
j += 1
if n%j != 0: #trying to break the loop after the first experiment of n data points
z = i
y_"str(j)" = [] #I want to call this array y_j, i.e. y_1 for the first loop or y_2 for the second, etc, wild index in python?! :(
y_"str(j)".append(z)
else:
value = value[steps:] #trying to remove the first three points before starting to for loop again
plt.figure()
plt.plot(x, y_str(j),'r', label = "y_str(j)")
plt.title('y ' +str(j))
plt.show()
я буду анализировать его больше, но я просто с трудом в выполнении такой же анализ (замышляет, и т.д.) каждые п раз в большом массиве данных. Возможно, даже не обязательно разделять мои входные данные с двумя столбцами на отдельные столбцы x и y, но я получал раздражающие ошибки int и float, используя данные [i] [2] в цикле for.
Большое спасибо за любую помощь!