r语言 select_R语言ETL工程系列:检索(select)

e04cfea38fbeb81a2706a97c062eea58.png

作者:黄天元,复旦大学博士在读,目前研究涉及文本挖掘、社交网络分析和机器学习等。希望与大家分享学习经验,推广并加深R语言在业界的应用。

邮箱:huang.tian-yuan@qq.com

前言

本章介绍如何从表中检索一个或多个数据列。

首先我们加载需要使用的包。其中我们需要的航班数据flights数据集需要在nycflights13中加载:

1library(tidyverse)2library(nycflights13)
select函数

select是最常用的ETL函数之一,用途就是从表格中选取需要的列。
要使用这个函数,要搞清楚两个问题:1.从哪里获取数据?2.从数据里面提取什么?所以需要给出至少两个信息:1.表格名称;2.列名称。

检索单个列

我们从最简单的语句开始:

1flights %>%2  select(year)
 1## # A tibble: 336,776 x 1 2##     year 3##     4##  1  2013 5##  2  2013 6##  3  2013 7##  4  2013 8##  5  2013 9##  6  201310##  7  201311##  8  201312##  9  201313## 10  201314## # ... with 336,766 more rows

上面的语句表示:从flights表格中提取了名为year的列。相应的SQL语句如下:

1 SELECT `year`2FROM `flights`

提示:尽管SQL不区分大小写,但是统一使用大写来写SQL语句有利于提高可读性。另外,很多SQL语句要求最后要加分号(;),否则会报错。

检索多个列

检索多个列与检索单列相似,需要给出多个列名称,而且列名称之间需要用逗号(,)隔开。需要注意的是,最后的列名称后面不能加逗号,否则会报错。

1flights %>%2  select(year,month,day)
 1## # A tibble: 336,776 x 3 2##     year month   day 3##       4##  1  2013     1     1 5##  2  2013     1     1 6##  3  2013     1     1 7##  4  2013     1     1 8##  5  2013     1     1 9##  6  2013     1     110##  7  2013     1     111##  8  2013     1     112##  9  2013     1     113## 10  2013     1     114## # ... with 336,766 more rows

相应SQL语句如下:

1 SELECT `year`, `month`, `day`2FROM `flights`
检索所有列

R中只要输入表格名称,默认就是包含了表格所有列,因此提取所有列非常简单:

1flights
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值