正文
R 数据框的操作
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
1.插入一列
根据自带数据集beaver 进行操作,比如插入一列id。
> colnames(beaver1)
[1] "day" "time" "temp" "activ"
> nrow(beaver1)
[1] 114
方法1:
new_beaver1$id = rep(1,114)
方法2
new_beaver1 = data.frame(id = rep(1,114),beaver1)
方法3
x = data.frame(
id = rep(1,114)
)
new_beaver1 = cbind(beaver1,x)
2.插入一行
new_beaver1 = beaver1
x=c(348,350,98.15,0,1)
rbind(beaver1,x)
首先明确 beaver1 是输出整个数据框,beaver1[行范围,列范围]打印出指定范围的数据框。
3.按照条件提取数据
beavear1[行条件,列条件]
4.删除数据框数据
处理规则是要删除的行或者是列不给显示然后赋予一个新的数据框。
beaver1[行,列]
比如 beaver1[--c(1:5),1:2] 不打印第1到5行且只打印第1到2列。
5.一个习题:
beaver1 和 beaver2 数据集包含两个海狸的体温数据。为beaver1数据集添加一列名为id的列,其值全部为1。同样,也为 beaver2 添加一个id列,值全为2。 垂直拼接两个数据框,并且找到所有活跃着的海狸的子集。
> new_beaver1 = data.frame(id = rep(1,114),beaver1)
> new_beaver2 = data.frame(id = rep(2,100),beaver2)
> new_beaver=rbind(new_beaver1,new_beaver2)
> new_beaver[new_beaver$activ==1,]
id day time temp activ
54 1 346 1730 37.07 1
68 1 346 1950 37.10 1
80 1 346 2150 37.53 1
83 1 346 2230 37.25 1
86 1 346 2300 37.24 1
114 1 347 340 37.15 1
153 2 307 1550 37.98 1
154 2 307 1600 38.02 1
155 2 307 1610 38.00 1
156 2 307 1620 38.24 1
157 2 307 1630 38.10 1
158 2 307 1640 38.24 1
159 2 307 1650 38.11 1
160 2 307 1700 38.02 1
161 2 307 1710 38.11 1
162 2 307 1720 38.01 1
163 2 307 1730 37.91 1
164 2 307 1740 37.96 1
165 2 307 1750 38.03 1
166 2 307 1800 38.17 1
167 2 307 1810 38.19 1
168 2 307 1820 38.18 1
169 2 307 1830 38.15 1
170 2 307 1840 38.04 1
171 2 307 1850 37.96 1
172 2 307 1900 37.84 1
173 2 307 1910 37.83 1
174 2 307 1920 37.84 1
175 2 307 1930 37.74 1
176 2 307 1940 37.76 1
177 2 307 1950 37.76 1
178 2 307 2000 37.64 1
179 2 307 2010 37.63 1
180 2 307 2020 38.06 1
181 2 307 2030 38.19 1
182 2 307 2040 38.35 1
183 2 307 2050 38.25 1
184 2 307 2100 37.86 1
185 2 307 2110 37.95 1
186 2 307 2120 37.95 1
187 2 307 2130 37.76 1
188 2 307 2140 37.60 1
189 2 307 2150 37.89 1
190 2 307 2200 37.86 1
191 2 307 2210 37.71 1
192 2 307 2220 37.78 1
193 2 307 2230 37.82 1
194 2 307 2240 37.76 1
195 2 307 2250 37.81 1
196 2 307 2300 37.84 1
197 2 307 2310 38.01 1
198 2 307 2320 38.10 1
199 2 307 2330 38.15 1
200 2 307 2340 37.92 1
201 2 307 2350 37.64 1
202 2 308 0 37.70 1
203 2 308 10 37.46 1
204 2 308 20 37.41 1
205 2 308 30 37.46 1
206 2 308 40 37.56 1
207 2 308 50 37.55 1
208 2 308 100 37.75 1
209 2 308 110 37.76 1
210 2 308 120 37.73 1
211 2 308 130 37.77 1
212 2 308 140 38.01 1
213 2 308 150 38.04 1
214 2 308 200 38.07 1