2013-12-20 2 views
0

У меня есть длинный текстовый файл с 3500 строками. Содержимое файла некоторые вещи ниже:выбор нескольких строк в группе из текстовых файлов

Iteration 26 
WSSR  : 2.16978   delta(WSSR)/WSSR : -5.96505e-05 
delta(WSSR) : -0.000129428  limit for stopping : 1e-05 
lambda : 1.92367e-12 

resultant parameter values 

A    = 0.152297 
B    = 22009.9 
/

Iteration 27 
WSSR  : 2.16978   delta(WSSR)/WSSR : -6.95237e-07 
delta(WSSR) : -1.50851e-06  limit for stopping : 1e-05 
lambda : 1.92367e-13 

resultant parameter values 

A    = 0.152268 
B    = 22018.5 

After 27 iterations the fit converged. 
final sum of squares of residuals : 2.16978 
rel. change during last iteration : -6.95237e-07 

degrees of freedom (FIT_NDF)      : 15996 
rms of residuals  (FIT_STDFIT) = sqrt(WSSR/ndf) : 0.0116467 
variance of residuals (reduced chisquare) = WSSR/ndf : 0.000135645 

Final set of parameters   Asymptotic Standard Error 
=======================   ========================== 

A    = 0.152268   +/- 0.0003536 (0.2322%) 
B    = 22018.5   +/- 73.18  (0.3324%) 


correlation matrix of the fit parameters: 

       A  B  
A    1.000 
B    -0.712 1.000 
Max. number of data points scaled up to: 3072 
Max. number of data points scaled up to: 4608 
Max. number of data points scaled up to: 6912 
Max. number of data points scaled up to: 10368 
Max. number of data points scaled up to: 15552 
Max. number of data points scaled up to: 23328 


Iteration 0 
WSSR  : 92.7915   delta(WSSR)/WSSR : 0 
delta(WSSR) : 0     limit for stopping : 1e-05 
lambda : 0.000192367 

initial set of free parameter values 

C    = 1 
D    = 1 
***/ 

Iteration 1 
WSSR  : 92.7561   delta(WSSR)/WSSR : -0.000382419 
delta(WSSR) : -0.0354717  limit for stopping : 1e-05 
lambda : 0.0192367 

resultant parameter values 

C    = 1.09786 
D    = 1.4932 
/

Iteration 2 
WSSR  : 91.9873   delta(WSSR)/WSSR : -0.00835736 
delta(WSSR) : -0.768771   limit for stopping : 1e-05 
lambda : 0.00192367 

Я хотел бы выбрать 6 конкретные линии вместе начинаются от линии Окончательный набор параметров Асимптотические стандартная ошибка на протяжении всего текстового файла. Эта группа строк не возникает периодическим образом в текстовом файле. Иногда это происходит после 10 строк или 30 строк.

Я могу придумать команду grep. Но у меня есть опыт его использования, выбирая только определенные строки с определенными словами. Soemthing, как

grep "Final set of parameters" 

Но есть ли какие-либо варианты, которые необходимо добавить для достижения того, что мне нужно?

Как я могу это сделать?

+1

Но тогда, какие строки вы ожидаете в качестве вывода? 6 после «Финального набора ...»? – fedorqui

ответ

2
grep -A6 'Final set of parameters' file 

дает:

kent$ grep -A6 'Final set of parameters' f 
Final set of parameters   Asymptotic Standard Error 
=======================   ========================== 

A    = 0.152268   +/- 0.0003536 (0.2322%) 
B    = 22018.5   +/- 73.18  (0.3324%) 
+1

'sed -ne '/ Окончательный набор параметров /, + 6p' file' будет другим (хотя и немного более типичным) вариантом ... – twalberg

+0

Спасибо. Оба кода работают именно в том, что я хочу. – user669212

2

Вы также можете использовать awk

awk '/Final set of parameters/ {f=6} f && f-- ' 
Final set of parameters   Asymptotic Standard Error 
=======================   ========================== 

A    = 0.152268   +/- 0.0003536 (0.2322%) 
B    = 22018.5   +/- 73.18  (0.3324%) 
Смежные вопросы