Hi,
The code is based on what you pasted on the page. In the original post, you used
sep="", while the pasted data shows "," as delimiter.
dat1 <- subset(head(read.table(text="#Hogd/met, Temp, 005[M], Value
#Hogd/met, Difftemp, 051[M], Value
BA0+
1 MTEMP005 1 [deg.C]
2 MDTMP051 1 [deg.C]
EOH
891231, 2400, -1.5, -0.21,
900101, 0100, -1.4, -0.25,
900101, 0200, -1.6, -0.28,
900101, 0300, -1.7, -0.25,
900101, 0400, -2.1, -0.0999999,
900101, 0500, -2.3, -0.0899999,
900101, 0600, -2.4, -0.21,
900101, 0700, -2.5, -0.28,
900101, 0800, -2.6, -0.3,
900101, 0900, -2.8, -0.3,
900101, 1000, -2.8, -0.3,
900101, 1100, -2.7, -0.3,
900101, 1200, -3, -0.3,
900101, 1300, -3.2, -0.3,
900101, 1400, -3.5, -0.0999999,
900101, 1500, -4, -0.2,
900101, 1600, -4.5, -0.19,
900101, 1700, -5.3, 0.27,
900101, 1800, -4, -0.27,
900101, 1900, -4, -0.28,
900101, 2000, -3.8, -0.28,
EOF",skip=6,sep=",",header=FALSE,fill=TRUE,stringsAsFactors=FALSE),-1),select=1:4)
?str(dat1)
#'data.frame':??? 21 obs. of? 4 variables:
# $ V1: num? 891231 900101 900101 900101 900101 ...
# $ V2: int? 2400 100 200 300 400 500 600 700 800 900 ...
# $ V3: num? -1.5 -1.4 -1.6 -1.7 -2.1 -2.3 -2.4 -2.5 -2.6 -2.8 ...
# $ V4: num? -0.21 -0.25 -0.28 -0.25 -0.1 ...
dat1
?????? V1?? V2?? V3???????? V4
1? 891231 2400 -1.5 -0.2100000
2? 900101? 100 -1.4 -0.2500000
3? 900101? 200 -1.6 -0.2800000
4? 900101? 300 -1.7 -0.2500000
5? 900101? 400 -2.1 -0.0999999
6? 900101? 500 -2.3 -0.0899999
7? 900101? 600 -2.4 -0.2100000
8? 900101? 700 -2.5 -0.2800000
9? 900101? 800 -2.6 -0.3000000
10 900101? 900 -2.8 -0.3000000
11 900101 1000 -2.8 -0.3000000
12 900101 1100 -2.7 -0.3000000
13 900101 1200 -3.0 -0.3000000
14 900101 1300 -3.2 -0.3000000
15 900101 1400 -3.5 -0.0999999
16 900101 1500 -4.0 -0.2000000
17 900101 1600 -4.5 -0.1900000
18 900101 1700 -5.3? 0.2700000
19 900101 1800 -4.0 -0.2700000
20 900101 1900 -4.0 -0.2800000
21 900101 2000 -3.8 -0.2800000
A.K.
Thanks, but the code does not work. ?I received an error like this one "
Error in read.table(text = gsub("#|,$", "",
temp[grepl(",",
temp)][-1]), ?:
? duplicate 'row.names' are not allowed".
In the sample data that I have pasted on this page the data has
four columns and it starts at the following line "891231, 2400, -1.5,
-0.21, ". ?Anything before that is uninteresting for me. ?
On Friday, October 18, 2013 10:46 AM, arun <smartpink111 at yahoo.com>
wrote:
Hi,
Assuming that you provided the sample data from the file.
temp <- readLines(textConnection("#Hogd/met, Temp, 005[M], Value
#Hogd/met, Difftemp, 051[M], Value
BA0+
1 MTEMP005 1 [deg.C]
2 MDTMP051 1 [deg.C]
EOH
891231, 2400, -1.5, -0.21,
900101, 0100, -1.4, -0.25,
900101, 0200, -1.6, -0.28,
900101, 0300, -1.7, -0.25,
900101, 0400, -2.1, -0.0999999,
900101, 0500, -2.3, -0.0899999,
900101, 0600, -2.4, -0.21,
900101, 0700, -2.5, -0.28,
900101, 0800, -2.6, -0.3,
900101, 0900, -2.8, -0.3,
900101, 1000, -2.8, -0.3,
900101, 1100, -2.7, -0.3,
900101, 1200, -3, -0.3,
900101, 1300, -3.2, -0.3,
900101, 1400, -3.5, -0.0999999,
900101, 1500, -4, -0.2,
900101, 1600, -4.5, -0.19,
900101, 1700, -5.3, 0.27,
900101, 1800, -4, -0.27,
900101, 1900, -4, -0.28,
900101, 2000, -3.8, -0.28,
EOF"))
temp1 <-
read.table(text=gsub("#|,$","",temp[grepl(",",temp)][-1]),sep=",",header=TRUE,check.names=FALSE)
?head(temp1)
#? Hogd/met Difftemp 051[M]????? Value
#1?? 891231???? 2400?? -1.5 -0.2100000
#2?? 900101????? 100?? -1.4 -0.2500000
#3?? 900101????? 200?? -1.6 -0.2800000
#4?? 900101????? 300?? -1.7 -0.2500000
#5?? 900101????? 400?? -2.1 -0.0999999
#6?? 900101????? 500?? -2.3 -0.0899999
A.K.
I have a text file which was imported imperfectly. ?I used the following code:
temp<-read.table("/New/temp.txt",skip=6,header = TRUE,
sep="")
However the result is not what I expected and looks like:
> head(temp)
? ? ? ?X891231..2400...1.5...0.21.
1 ? ? ?900101, 0100, -1.4, -0.25,
2 ? ? ?900101, 0200, -1.6, -0.28,
3 ? ? ?900101, 0300, -1.7, -0.25,
4 900101, 0400, -2.1, -0.0999999,
5 900101, 0500, -2.3, -0.0899999,
6 ? ? ?900101, 0600, -2.4, -0.21,
Sample data with header and footer is found here:
#Hogd/met, Temp, 005[M], Value
#Hogd/met, Difftemp, 051[M], Value
BA0+
1 MTEMP005 1 [deg.C]
2 MDTMP051 1 [deg.C]
EOH
891231, 2400, -1.5, -0.21,
900101, 0100, -1.4, -0.25,
900101, 0200, -1.6, -0.28,
900101, 0300, -1.7, -0.25,
900101, 0400, -2.1, -0.0999999,
900101, 0500, -2.3, -0.0899999,
900101, 0600, -2.4, -0.21,
900101, 0700, -2.5, -0.28,
900101, 0800, -2.6, -0.3,
900101, 0900, -2.8, -0.3,
900101, 1000, -2.8, -0.3,
900101, 1100, -2.7, -0.3,
900101, 1200, -3, -0.3,
900101, 1300, -3.2, -0.3,
900101, 1400, -3.5, -0.0999999,
900101, 1500, -4, -0.2,
900101, 1600, -4.5, -0.19,
900101, 1700, -5.3, 0.27,
900101, 1800, -4, -0.27,
900101, 1900, -4, -0.28,
900101, 2000, -3.8, -0.28,
EOF
I have a number of similar files and would like to understand
what I did wrong. I also wish to understand the anatomy of this text
file. What does EOH mean? and EOF? I could not find this issues on web
search. Thanks