R语言

初识R语言—排序和选取子集

2020-04-02  本文已影响0人  超级无敌大蜗牛

排序

attach(data)
> data[order(mpg),]##升序
                   mpg cyl disp
Valiant           18.1   6  225
Hornet Sportabout 18.7   8  360
Mazda RX4         21.0   6  160
Mazda RX4 Wag     21.0   6  160
Hornet 4 Drive    21.4   6  258
Datsun 710        22.8   4  108

> data[order(-mpg),]##降序
                   mpg cyl disp
Datsun 710        22.8   4  108
Hornet 4 Drive    21.4   6  258
Mazda RX4         21.0   6  160
Mazda RX4 Wag     21.0   6  160
Hornet Sportabout 18.7   8  360
Valiant           18.1   6  225

> data[order(mpg,cyl),]##mpg为主要排序依据,cyl为次要参考
                   mpg cyl disp
Valiant           18.1   6  225
Hornet Sportabout 18.7   8  360
Mazda RX4         21.0   6  160
Mazda RX4 Wag     21.0   6  160
Hornet 4 Drive    21.4   6  258
Datsun 710        22.8   4  108
> arrange(data,mpg)##默认升序
   mpg cyl disp
1 18.1   6  225
2 18.7   8  360
3 21.0   6  160
4 21.0   6  160
5 21.4   6  258
6 22.8   4  108

> arrange(data,mpg,disp)##两个关键词排序
   mpg cyl disp
1 18.1   6  225
2 18.7   8  360
3 21.0   6  160
4 21.0   6  160
5 21.4   6  258
6 22.8   4  108

> arrange(data,-mpg,disp)##降序
   mpg cyl disp
1 22.8   4  108
2 21.4   6  258
3 21.0   6  160
4 21.0   6  160
5 18.7   8  360
6 18.1   6  225

取子集

> subset(data,mpg>=20 & vs == 0)##筛选出mpg大于等于20,并且vs等于0的数据集
              mpg cyl disp  hp drat    wt  qsec vs am gear carb
Mazda RX4      21   6  160 110  3.9 2.620 16.46  0  1    4    4
Mazda RX4 Wag  21   6  160 110  3.9 2.875 17.02  0  1    4    4

> subset(data,mpg>=20 & vs == 0,mpg)##只返回mpg这一列
              mpg
Mazda RX4      21
Mazda RX4 Wag  21
> subset(data,mpg>=20 & vs == 0,1)##只返回第一列,既mpg这一列
              mpg
Mazda RX4      21
Mazda RX4 Wag  21
> subset(data,mpg>=20 & vs == 0,1:3)##只返回1-3列
              mpg cyl disp
Mazda RX4      21   6  160
Mazda RX4 Wag  21   6  160
library(dplyr)
> filter(data,mpg>=20,vs==0)##且
  mpg cyl disp  hp drat    wt  qsec vs am gear carb
1  21   6  160 110  3.9 2.620 16.46  0  1    4    4
2  21   6  160 110  3.9 2.875 17.02  0  1    4    4

> filter(data,mpg>=20|vs==0)##或
   mpg cyl disp  hp drat    wt  qsec vs am gear carb
1 21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
2 21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
3 22.8   4  108  93 3.85 2.320 18.61  1  1    4    1
4 21.4   6  258 110 3.08 3.215 19.44  1  0    3    1
5 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2

总结,用order

上一篇下一篇

猜你喜欢

热点阅读