目录
一、read.table() 读取工作路径下的纯文本文件(.txt)(.csv)
3)将文件格式转换成会读取的方式,或RSiteSearch函数搜索R中可用的包
一、read.table() 读取纯文本文件(.txt)(.csv)
1、工作路径的设置
注意确保文件在工作路径下,可以将文件拖拽到工作路径下,也可以将工作路径修改到文件下。
> ?read.table
> getwd()
[1] "C:/Users/Administrator/Documents"
> setwd("C:/Users/Administrator/Desktop/R/RData")
> read.table("input.txt")
Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
5 NA NA 14.3 56 5 5
6 28 NA 14.9 66 5 6
7 23 299 8.6 65 5 7
8 19 99 13.8 59 5 8
9 8 19 20.1 61 5 9
10 NA 194 8.6 69 5 10
11 7 NA 6.9 74 5 11
12 16 256 9.7 69 5 12
13 11 290 9.2 66 5 13
14 14 274 10.9 68 5 14
15 18 65 13.2 58 5 15
16 14 334 11.5 64 5 16
17 34 307 12.0 66 5 17
18 6 78 18.4 57 5 18
19 30 322 11.5 68 5 19
20 11 44 9.7 62 5 20
21 1 8 9.7 59 5 21
22 11 320 16.6 73 5 22
23 4 25 9.7 61 5 23
24 32 92 12.0 61 5 24
25 NA 66 16.6 57 5 25
26 NA 266 14.9 58 5 26
27 NA NA 8.0 57 5 27
28 23 13 12.0 67 5 28
29 45 252 14.9 81 5 29
30 115 223 5.7 79 5 30
31 37 279 7.4 76 5 31
32 NA 286 8.6 78 6 1
33 NA 287 9.7 74 6 2
34 NA 242 16.1 67 6 3
35 NA 186 9.2 84 6 4
36 NA 220 8.6 85 6 5
37 NA 264 14.3 79 6 6
38 29 127 9.7 82 6 7
39 NA 273 6.9 87 6 8
40 71 291 13.8 90 6 9
41 39 323 11.5 87 6 10
42 NA 259 10.9 93 6 11
43 NA 250 9.2 92 6 12
44 23 148 8.0 82 6 13
45 NA 332 13.8 80 6 14
46 NA 322 11.5 79 6 15
47 21 191 14.9 77 6 16
48 37 284 20.7 72 6 17
49 20 37 9.2 65 6 18
50 12 120 11.5 73 6 19
51 13 137 10.3 76 6 20
52 NA 150 6.3 77 6 21
53 NA 59 1.7 76 6 22
54 NA 91 4.6 76 6 23
55 NA 250 6.3 76 6 24
56 NA 135 8.0 75 6 25
57 NA 127 8.0 78 6 26
58 NA 47 10.3 73 6 27
59 NA 98 11.5 80 6 28
60 NA 31 14.9 77 6 29
61 NA 138 8.0 83 6 30
62 135 269 4.1 84 7 1
63 49 248 9.2 85 7 2
64 32 236 9.2 81 7 3
65 NA 101 10.9 84 7 4
66 64 175 4.6 83 7 5
67 40 314 10.9 83 7 6
68 77 276 5.1 88 7 7
69 97 267 6.3 92 7 8
70 97 272 5.7 92 7 9
71 85 175 7.4 89 7 10
72 NA 139 8.6 82 7 11
73 10 264 14.3 73 7 12
74 27 175 14.9 81 7 13
75 NA 291 14.9 91 7 14
76 7 48 14.3 80 7 15
77 48 260 6.9 81 7 16
78 35 274 10.3 82 7 17
79 61 285 6.3 84 7 18
80 79 187 5.1 87 7 19
81 63 220 11.5 85 7 20
82 16 7 6.9 74 7 21
83 NA 258 9.7 81 7 22
84 NA 295 11.5 82 7 23
85 80 294 8.6 86 7 24
86 108 223 8.0 85 7 25
87 20 81 8.6 82 7 26
88 52 82 12.0 86 7 27
89 82 213 7.4 88 7 28
90 50 275 7.4 86 7 29
91 64 253 7.4 83 7 30
92 59 254 9.2 81 7 31
93 39 83 6.9 81 8 1
94 9 24 13.8 81 8 2
95 16 77 7.4 82 8 3
96 78 NA 6.9 86 8 4
97 35 NA 7.4 85 8 5
98 66 NA 4.6 87 8 6
99 122 255 4.0 89 8 7
100 89 229 10.3 90 8 8
101 110 207 8.0 90 8 9
102 NA 222 8.6 92 8 10
103 NA 137 11.5 86 8 11
104 44 192 11.5 86 8 12
105 28 273 11.5 82 8 13
106 65 157 9.7 80 8 14
107 NA 64 11.5 79 8 15
108 22 71 10.3 77 8 16
109 59 51 6.3 79 8 17
110 23 115 7.4 76 8 18
111 31 244 10.9 78 8 19
112 44 190 10.3 78 8 20
113 21 259 15.5 77 8 21
114 9 36 14.3 72 8 22
115 NA 255 12.6 75 8 23
116 45 212 9.7 79 8 24
117 168 238 3.4 81 8 25
118 73 215 8.0 86 8 26
119 NA 153 5.7 88 8 27
120 76 203 9.7 97 8 28
121 118 225 2.3 94 8 29
122 84 237 6.3 96 8 30
123 85 188 6.3 94 8 31
124 96 167 6.9 91 9 1
125 78 197 5.1 92 9 2
126 73 183 2.8 93 9 3
127 91 189 4.6 93 9 4
128 47 95 7.4 87 9 5
129 32 92 15.5 84 9 6
130 20 252 10.9 80 9 7
131 23 220 10.3 78 9 8
132 21 230 10.9 75 9 9
133 24 259 9.7 73 9 10
134 44 236 14.9 81 9 11
135 21 259 15.5 76 9 12
136 28 238 6.3 77 9 13
137 9 24 10.9 71 9 14
138 13 112 11.5 71 9 15
139 46 237 6.9 78 9 16
140 18 224 13.8 67 9 17
141 13 27 10.3 76 9 18
142 24 238 10.3 68 9 19
143 16 201 8.0 82 9 20
144 13 238 12.6 64 9 21
145 23 14 9.2 71 9 22
146 36 139 10.3 81 9 23
147 7 49 10.3 69 9 24
148 14 20 16.6 63 9 25
149 30 193 6.9 70 9 26
150 NA 145 13.2 77 9 27
151 14 191 14.3 75 9 28
152 18 131 8.0 76 9 29
153 20 223 11.5 68 9 30
如果文件与工作路径不在同一路径,也不想拖动文件,怎把文件的全路径输入即可
x <- read.table("C:/Users/Administrator/Desktop/R/RData/input.txt")
2、head函数——只显示数据前几行
如果文件数据太多,可以只显示头或尾,默认显示六行。
?head
> x <- read.table("input.txt")
> head(x)
Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
5 NA NA 14.3 56 5 5
6 28 NA 14.9 66 5 6
> tail(x)
Ozone Solar.R Wind Temp Month Day
148 14 20 16.6 63 9 25
149 30 193 6.9 70 9 26
150 NA 145 13.2 77 9 27
151 14 191 14.3 75 9 28
152 18 131 8.0 76 9 29
153 20 223 11.5 68 9 30
> head(x,n=10)
Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
5 NA NA 14.3 56 5 5
6 28 NA 14.9 66 5 6
7 23 299 8.6 65 5 7
8 19 99 13.8 59 5 8
9 8 19 20.1 61 5 9
10 NA 194 8.6 69 5 10
3、read.table()的其他一些参数
sep,分隔符,csv文件如果没有分隔符就会乱码
header,导入的数据第一行是否是列名
skip,跳过前几行数据开始读取(有的数据前几行会有注释信息,借此跳过)
nrow,读取数据前多少行
na.strings,告诉系统缺失值是什么符号表示的,遇到缺失值系统自动转换成NA
stringsAsFactors,读入的字符串是否转换成因子,不需要设置成false就行
具体看帮助文档即可。
> x <- read.table("C:/Users/Administrator/Desktop/R/RData/input.txt",sep=",")
> x
V1
1 Ozone Solar.R Wind Temp Month Day
2 1 41 190 7.4 67 5 1
3 2 36 118 8 72 5 2
4 3 12 149 12.6 74 5 3
5 4 18 313 11.5 62 5 4
6 5 NA NA 14.3 56 5 5
7 6 28 NA 14.9 66 5 6
8 7 23 299 8.6 65 5 7
9 8 19 99 13.8 59 5 8
10 9 8 19 20.1 61 5 9
11 10 NA 194 8.6 69 5 10
12 11 7 NA 6.9 74 5 11
13 12 16 256 9.7 69 5 12
14 13 11 290 9.2 66 5 13
15 14 14 274 10.9 68 5 14
16 15 18 65 13.2 58 5 15
17 16 14 334 11.5 64 5 16
18 17 34 307 12 66 5 17
19 18 6 78 18.4 57 5 18
20 19 30 322 11.5 68 5 19
21 20 11 44 9.7 62 5 20
22 21 1 8 9.7 59 5 21
23 22 11 320 16.6 73 5 22
24 23 4 25 9.7 61 5 23
25 24 32 92 12 61 5 24
26 25 NA 66 16.6 57 5 25
27 26 NA 266 14.9 58 5 26
28 27 NA NA 8 57 5 27
29 28 23 13 12 67 5 28
30 29 45 252 14.9 81 5 29
31 30 115 223 5.7 79 5 30
32 31 37 279 7.4 76 5 31
33 32 NA 286 8.6 78 6 1
34 33 NA 287 9.7 74 6 2
35 34 NA 242 16.1 67 6 3
36 35 NA 186 9.2 84 6 4
37 36 NA 220 8.6 85 6 5
38 37 NA 264 14.3 79 6 6
39 38 29 127 9.7 82 6 7
40 39 NA 273 6.9 87 6 8
41 40 71 291 13.8 90 6 9
42 41 39 323 11.5 87 6 10
43 42 NA 259 10.9 93 6 11
44 43 NA 250 9.2 92 6 12
45 44 23 148 8 82 6 13
46 45 NA 332 13.8 80 6 14
47 46 NA 322 11.5 79 6 15
48 47 21 191 14.9 77 6 16
49 48 37 284 20.7 72 6 17
50 49 20 37 9.2 65 6 18
51 50 12 120 11.5 73 6 19
52 51 13 137 10.3 76 6 20
53 52 NA 150 6.3 77 6 21
54 53 NA 59 1.7 76 6 22
55 54 NA 91 4.6 76 6 23
56 55 NA 250 6.3 76 6 24
57 56 NA 135 8 75 6 25
58 57 NA 127 8 78 6 26
59 58 NA 47 10.3 73 6 27
60 59 NA 98 11.5 80 6 28
61 60 NA 31 14.9 77 6 29
62 61 NA 138 8 83 6 30
63 62 135 269 4.1 84 7 1
64 63 49 248 9.2 85 7 2
65 64 32 236 9.2 81 7 3
66 65 NA 101 10.9 84 7 4
67 66 64 175 4.6 83 7 5
68 67 40 314 10.9 83 7 6
69 68 77 276 5.1 88 7 7
70 69 97 267 6.3 92 7 8
71 70 97 272 5.7 92 7 9
72 71 85 175 7.4 89 7 10
73 72 NA 139 8.6 82 7 11
74 73 10 264 14.3 73 7 12
75 74 27 175 14.9 81 7 13
76 75 NA 291 14.9 91 7 14
77 76 7 48 14.3 80 7 15
78 77 48 260 6.9 81 7 16
79 78 35 274 10.3 82 7 17
80 79 61 285 6.3 84 7 18
81 80 79 187 5.1 87 7 19
82 81 63 220 11.5 85 7 20
83 82 16 7 6.9 74 7 21
84 83 NA 258 9.7 81 7 22
85 84 NA 295 11.5 82 7 23
86 85 80 294 8.6 86 7 24
87 86 108 223 8 85 7 25
88 87 20 81 8.6 82 7 26
89 88 52 82 12 86 7 27
90 89 82 213 7.4 88 7 28
91 90 50 275 7.4 86 7 29
92 91 64 253 7.4 83 7 30
93 92 59 254 9.2 81 7 31
94 93 39 83 6.9 81 8 1
95 94 9 24 13.8 81 8 2
96 95 16 77 7.4 82 8 3
97 96 78 NA 6.9 86 8 4
98 97 35 NA 7.4 85 8 5
99 98 66 NA 4.6 87 8 6
100 99 122 255 4 89 8 7
101 100 89 229 10.3 90 8 8
102 101 110 207 8 90 8 9
103 102 NA 222 8.6 92 8 10
104 103 NA 137 11.5 86 8 11
105 104 44 192 11.5 86 8 12
106 105 28 273 11.5 82 8 13
107 106 65 157 9.7 80 8 14
108 107 NA 64 11.5 79 8 15
109 108 22 71 10.3 77 8 16
110 109 59 51 6.3 79 8 17
111 110 23 115 7.4 76 8 18
112 111 31 244 10.9 78 8 19
113 112 44 190 10.3 78 8 20
114 113 21 259 15.5 77 8 21
115 114 9 36 14.3 72 8 22
116 115 NA 255 12.6 75 8 23
117 116 45 212 9.7 79 8 24
118 117 168 238 3.4 81 8 25
119 118 73 215 8 86 8 26
120 119 NA 153 5.7 88 8 27
121 120 76 203 9.7 97 8 28
122 121 118 225 2.3 94 8 29
123 122 84 237 6.3 96 8 30
124 123 85 188 6.3 94 8 31
125 124 96 167 6.9 91 9 1
126 125 78 197 5.1 92 9 2
127 126 73 183 2.8 93 9 3
128 127 91 189 4.6 93 9 4
129 128 47 95 7.4 87 9 5
130 129 32 92 15.5 84 9 6
131 130 20 252 10.9 80 9 7
132 131 23 220 10.3 78 9 8
133 132 21 230 10.9 75 9 9
134 133 24 259 9.7 73 9 10
135 134 44 236 14.9 81 9 11
136 135 21 259 15.5 76 9 12
137 136 28 238 6.3 77 9 13
138 137 9 24 10.9 71 9 14
139 138 13 112 11.5 71 9 15
140 139 46 237 6.9 78 9 16
141 140 18 224 13.8 67 9 17
142 141 13 27 10.3 76 9 18
143 142 24 238 10.3 68 9 19
144 143 16 201 8 82 9 20
145 144 13 238 12.6 64 9 21
146 145 23 14 9.2 71 9 22
147 146 36 139 10.3 81 9 23
148 147 7 49 10.3 69 9 24
149 148 14 20 16.6 63 9 25
150 149 30 193 6.9 70 9 26
151 150 NA 145 13.2 77 9 27
152 151 14 191 14.3 75 9 28
153 152 18 131 8 76 9 29
154 153 20 223 11.5 68 9 30
> x <- read.table("C:/Users/Administrator/Desktop/R/RData/input.csv",sep=",",header = TRUE)
> x
X mpg cyl disp hp drat wt qsec vs am gear carb
1 Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
2 Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
3 Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
4 Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
5 Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2
6 Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1
7 Duster 360 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4
8 Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2
9 Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2
10 Merc 280 19.2 6 167.6 123 3.92 3.440 18.30 1 0 4 4
11 Merc 280C 17.8 6 167.6 123 3.92 3.440 18.90 1 0 4 4
12 Merc 450SE 16.4 8 275.8 180 3.07 4.070 17.40 0 0 3 3
13 Merc 450SL 17.3 8 275.8 180 3.07 3.730 17.60 0 0 3 3
14 Merc 450SLC 15.2 8 275.8 180 3.07 3.780 18.00 0 0 3 3
15 Cadillac Fleetwood 10.4 8 472.0 205 2.93 5.250 17.98 0 0 3 4
16 Lincoln Continental 10.4 8 460.0 215 3.00 5.424 17.82 0 0 3 4
17 Chrysler Imperial 14.7 8 440.0 230 3.23 5.345 17.42 0 0 3 4
18 Fiat 128 32.4 4 78.7 66 4.08 2.200 19.47 1 1 4 1
19 Honda Civic 30.4 4 75.7 52 4.93 1.615 18.52 1 1 4 2
20 Toyota Corolla 33.9 4 71.1 65 4.22 1.835 19.90 1 1 4 1
21 Toyota Corona 21.5 4 120.1 97 3.70 2.465 20.01 1 0 3 1
22 Dodge Challenger 15.5 8 318.0 150 2.76 3.520 16.87 0 0 3 2
23 AMC Javelin 15.2 8 304.0 150 3.15 3.435 17.30 0 0 3 2
24 Camaro Z28 13.3 8 350.0 245 3.73 3.840 15.41 0 0 3 4
25 Pontiac Firebird 19.2 8 400.0 175 3.08 3.845 17.05 0 0 3 2
26 Fiat X1-9 27.3 4 79.0 66 4.08 1.935 18.90 1 1 4 1
27 Porsche 914-2 26.0 4 120.3 91 4.43 2.140 16.70 0 1 5 2
28 Lotus Europa 30.4 4 95.1 113 3.77 1.513 16.90 1 1 5 2
29 Ford Pantera L 15.8 8 351.0 264 4.22 3.170 14.50 0 1 5 4
30 Ferrari Dino 19.7 6 145.0 175 3.62 2.770 15.50 0 1 5 6
31 Maserati Bora 15.0 8 301.0 335 3.54 3.570 14.60 0 1 5 8
32 Volvo 142E 21.4 4 121.0 109 4.11 2.780 18.60 1 1 4 2
二、与read.table相类似的函数
read.csv
read.delim
就是参数做了一些默认,所以使用起来相对简化。比如read.csv默认分隔符是“,”。
三、read.table()读取网络上的文本文件
> x <- read.table("https://codeload.github.com/mperdeck/LINQtoCSV/zip/master",header = TRUE)
Error in file(file, "rt") : cannot open the connection
In addition: Warning message:
In file(file, "rt") : InternetOpenUrl failed: '无法与服务器建立连接'
三、读取非文本文件
1)XML包—— readHTMLTable函数
读取网络文件
使用R中的XML包
2)foreign包中的函数
> help(package="foreign")
> library(foreign)
> x <- read.dbf("C:/Users/Administrator/Desktop/辽宁.dbf")
3)将文件格式转换成会读取的方式,或RSiteSearch函数搜索R中可用的包
以上包可以读取的格式都不满足需要的话,有两种解决办法。
一转换成可以读取的格式,二搜索R中可用的包。
例如想找能处理matlab格式的包,搜索如下
> RSiteSearch("Matlab")
A search query has been submitted to http://search.r-project.org
计算结果应很快就在瀏覽器里打开
四、读取剪贴板上的数据
> x <- read.table("clipboard",header = T,sep=",")
> x
mpg.cyl.disp.hp.drat.wt.qsec.vs.am.gear.carb
1 21\t6\t160\t110\t3.9\t2.62\t16.46\t0\t1\t4\t4
2 21\t6\t160\t110\t3.9\t2.875\t17.02\t0\t1\t4\t4
3 22.8\t4\t108\t93\t3.85\t2.32\t18.61\t1\t1\t4\t1
4 21.4\t6\t258\t110\t3.08\t3.215\t19.44\t1\t0\t3\t1
5 18.7\t8\t360\t175\t3.15\t3.44\t17.02\t0\t0\t3\t2
6 18.1\t6\t225\t105\t2.76\t3.46\t20.22\t1\t0\t3\t1
7 14.3\t8\t360\t245\t3.21\t3.57\t15.84\t0\t0\t3\t4
8 24.4\t4\t146.7\t62\t3.69\t3.19\t20\t1\t0\t4\t2
9 22.8\t4\t140.8\t95\t3.92\t3.15\t22.9\t1\t0\t4\t2
> x <- read.table("clipboard",header=T,sep="\t")
> x
mpg cyl disp hp drat wt qsec vs am gear carb
1 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
2 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
3 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
4 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
5 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2
6 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1
7 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4
8 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2
9 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2
> readClipboard()
[1] "> x <- read.table(\"clipboard\",header=T,sep=\"\\t\")"
[2] "> x"
[3] " mpg cyl disp hp drat wt qsec vs am gear carb"
[4] "1 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4"
[5] "2 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4"
[6] "3 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1"
[7] "4 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1"
[8] "5 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2"
[9] "6 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1"
[10] "7 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4"
[11] "8 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2"
[12] "9 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2"
五、直接读取压缩包文件
> x <- read.table(gzfile("input.txt.gz"))
> x
X mpg cyl disp hp drat wt qsec vs am gear carb
1 Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 4
2 Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 4
3 Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 1
4 Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 1
5 Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 2
6 Valiant 18.1 6 225.0 105 2.76 3.460 20.22 1 0 3 1
7 Duster 360 14.3 8 360.0 245 3.21 3.570 15.84 0 0 3 4
8 Merc 240D 24.4 4 146.7 62 3.69 3.190 20.00 1 0 4 2
9 Merc 230 22.8 4 140.8 95 3.92 3.150 22.90 1 0 4 2
10 Merc 280 19.2 6 167.6 123 3.92 3.440 18.30 1 0 4 4
11 Merc 280C 17.8 6 167.6 123 3.92 3.440 18.90 1 0 4 4
12 Merc 450SE 16.4 8 275.8 180 3.07 4.070 17.40 0 0 3 3
13 Merc 450SL 17.3 8 275.8 180 3.07 3.730 17.60 0 0 3 3
14 Merc 450SLC 15.2 8 275.8 180 3.07 3.780 18.00 0 0 3 3
15 Cadillac Fleetwood 10.4 8 472.0 205 2.93 5.250 17.98 0 0 3 4
16 Lincoln Continental 10.4 8 460.0 215 3.00 5.424 17.82 0 0 3 4
六、其他复杂格式文件读取
readLines()
scan()