2016-06-06 5 views
1

다음 형식의 텍스트 파일을 가지고 있으며 두 개의 숫자 열이있는 중간 섹션에 관심이 있습니다. 이 텍스트 파일을 R을 통해 어떻게 읽을 수 있습니까?텍스트 파일의 중간에 숫자를 추출하는 방법 R

Correct for Electrical Dark: No (NI25D137) 
Strobe/Lamp Enabled: No (NI25D137) 
Correct for Detector Non-linearity: No (NI25D137) 
Correct for Stray Light: No (NI25D137) 
Number of Pixels in Processed Spectrum: 256 
Begin Processed Spectral Data 
857.97 0.000 
864.83 7.252 
871.70 7.252 
878.56 7.155 
885.42 7.131 
892.27 7.113 
End Processed Spectral Data 
+0

데이터가 실제로 각 행 사이에 줄을 포함합니까, 아니면 여기에 붙여 넣은 결과입니까? – thelatemail

+0

아니요 사이에 줄이 없습니다 –

답변

2

readLines을 사용하여 줄 단위로 읽을 수 있습니다. 그런 다음 정규 표현식을 사용하여 숫자 행을 유지할 수 있습니다. 또한 청소 된 텍스트를 read.table을 사용하여 data.frame으로 변환하기 전에 처음에 여분의 공백을 제거합니다.

ll <- readLines(con = textConnection("COPY YOUR TEXT HERE")) 
read.table(text=gsub("^ +","",grep("\\d+[.]\\d+ +\\d+[.]\\d+",ll,value=TRUE))) 

    V1 V2 
1 857.97 0.000 
2 864.83 7.252 
3 871.70 7.252 
4 878.56 7.155 
5 885.42 7.131 
6 892.27 7.113 
+0

.txt 파일에 직접 액세스하여이 작업을 수행 할 수있는 방법이 있습니까? –

+0

물론 @PrabeshJoshi 물론 있습니다. con = ...을 파일 이름으로 바꿉니다. 'readLines (path_filename)'. – agstudy

관련 문제