R 数据框的操作

Posted jiaxinwei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

  

 

以上是关于R 数据框的操作的主要内容,如果未能解决你的问题,请参考以下文章

如何在 R 的 lapply() 中引用正在操作的行

如何使用 row.names 属性在 R 中对数据框的行进行排序?

15.关于mutate()

R 语言的Dataframe常用操作

R语言实战之创建数据集

R学习笔记 第三篇:数据框