首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

「R」数据操作(五):dplyr 介绍与数据过滤

在对数据进行可视化之前我们往往需要进行数据转换以得到可视化所需要数据内容与格式。这里我们使用dplyr包操作2013年纽约市航班起飞数据集(2013)。...准备 这部分我们聚焦于如何使用dplyr包,除ggplot2另一个tidyverse核心成员。我们将使用nyclights13数据包解释关键概念并使用ggplot2帮助理解数据。...根据值选择观察(记录),filter() 对重新排序,arrange() 根据名字选择变量,select() 根据已知变量创建变量,mutate() 将许多值塌缩为单个描述性汇总,summarize...() 这些函数都可以通过group_by()衔接起来,该函数改变上述每个函数作用域,操作整个数据集到按组与组操作。...让我们实际来看看这些动词是怎么工作使用filter()过滤 filter()允许我们根据观测值来对数据集取子集。第一个参数是数据名字,第二和随后参数是用于过滤数据表达式。

2.4K11
您找到你想要的搜索结果了吗?
是的
没有找到

命令行上数据科学第二版:七、探索数据

7.1 概述 在本章中,您将学习如何: 检查数据及其属性 计算描述性统计量 在命令行内外创建数据可视化 本章以下文件开始: $ cd /data/ch07 $ l total 104K -rw-r-...这确实是一个相当主观过程,由您决定第一是标题还是已经是第一个数据点。当数据集不包含标题时,你最好使用header工具(在第五章中讨论)来纠正它。...使用rush,你甚至可以创建复杂可视化效果,我将在下一节向你展示。 7.4 创建可视化效果 在这一节中,我将向您展示如何在命令行创建数据可视化。我将使用rush plot创建条形图、散点图和箱线图。...既然我们已经介绍了显示图像四个选项,让我们继续实际创建一些。 7.4.2 使用rush绘图 当谈到创建数据可视化时,有太多选择。...也许我们可以通过绘制趋势线更高层面来审视这些数据。 7.4.8 创建趋势线 如果您用smooth覆盖默认几何图形,您可以可视化趋势线。这些对于看到更大画面是有用

1.4K20

R数据科学|3.6内容介绍

上节我们对选择现有的列和使用mutate添加新列做了介绍。现在对数据使用summarize()进行分组摘要进行介绍。...函数功能:summarize()可以将数据框折叠成一: summarize(flights, delay = mean(dep_delay, na.rm = TRUE)) #> # A tibble:...1 × 1 #> delay #> #> 1 12.6 如果想要将分析单位整个数据集更改为单个分组,可以使用group_by()。...例如,如果对按日期分组一个数据框应用与上面完全相同代码,那么我们就可以得到每日平均延误时间: by_day <- group_by(flights, year, month, day) summarize...这样就可以轻松地对数据集进行循序渐进分析: #统计每天航班数 daily <- group_by(flights, year, month, day) (per_day <- summarize(daily

97820

「R」数据操作(七):dplyr 操作变量与汇总

为了看到新生成变量,我们使用一个小数据集。...= 排序rank 存在很多rank函数,但我们min_rank()使用开始,它可以实现最常见rank(例如第一、第二、第三、第四),使用desc()进行辅助可以给最大值最小rank。...summarize()计算汇总值 最后一个关键动词是summarize(),它将一个数据框坍缩为单个: summarize(flights, delay = mean(dep_delay, na.rm...这个操作会将分析单元整个数据集转到单个组别。然后,当你使用dplyr动词对分组数据框进行操作时,它会自动进行分组计算。...使用管道进行工作是属于tidyverse一个重要标准。唯一例外是ggplot2,它在管道开发之前就已经写好了。不幸是,ggplot2下一个版本ggvis会使用管道,但还没有发布。

2.5K20

ES系列16:管道聚合你都不会?那你如何做聚合分析

类型各自使用场景么、ES系列15:ES指标聚合有哪些呢?...场景示例:计算出每月T恤销售额与总销售额比例百分比 POST /sales/_search { "size": 0, "aggs" : { "sales_per_month...场景示例:计算到当月为止,每月累计销售金额总和 POST /sales/_search { "size": 0, "aggs" : { "sales_per_month...场景示例:计算每月总销售额存储桶对应百分比位置金额 POST /sales/_search { "size": 0, "aggs" : { "sales_per_month...,建议一定要对ES3种聚合有一个整体概念,知道ES聚合能做哪些数据操作,从而面对各种聚合分析需求时候,才能快速反应,知道该用什么样操作,而不是绞尽脑汁,使用自己仅知道Max、Sum等简单聚合去组合

1.3K20

dpois函数_frequency函数

这会将分析单位完整数据集更改为单个组。当在分组数据框上使用dplyr时,它们将自动“按组”应用。...例如,如果我们将完全相同代码应用于按日期分组数据框,我们会得到每个日期平均延迟: by_day <- group_by(flights, year, month, day) summarise(by_day...可以使用管道以从左到右,从上到下方式重写多个操作。从现在开始会经常使用管道,因为它大大提高了代码可读性. 使用管道是属于tidyverse关键标准之一。...过滤提供所有变量,每个观察在一个单独中: not_cancelled %>% group_by(year, month, day) %>% mutate(r = min_rank(desc...这样可以轻松逐步汇总数据集: daily <- group_by(flights, year, month, day) (per_day <- summarise(daily, flights =

1.8K10

简单五步:利用Gitstats给代码仓库做一次体检

GitStats所生成统计信息常用分为如下几类: 常规统计:文件总数,行数,提交量,作者数。 活跃性:每天中每小时、每周中每天、每周中每小时、每年中每月、每年提交量。...git_stats可以在windows和linux使用,但是集成方式有点不太一样,我目前尝试是win版本,在这里就先记录win版本安装及使用,Linux环境后期需要可以再补充 gitstats...文件,在菜单栏中可以找到以下4点: 1、代码仓库信息 2、提交频率维度数据统计 维度 描述 Commits by Year 全年统计汇总 Commits by year/month 每月统计汇总 Month...of Year 每月统计汇总 Hour of Week 每星期按时统计汇总 Day of Week 每星期按日统计汇总 Hour of Day 每天按时统计汇总 Weekly activity 每周统计汇总...Code per Author 作者总提交行数汇总 Commits per Author 作者总提交次数汇总 Author of Month 每月作者提交汇总 Author of Year 每年作者提交汇总

2.6K20

NASA数据集——NASA 标准三级(L3)每月深蓝气溶胶产品提供了全球陆地和海洋上空气溶胶光学厚度(AOT)

(VIIRS)NASA 标准三级(L3)每月深蓝气溶胶产品提供了全球陆地和海洋上空气溶胶光学厚度(AOT)卫星衍生测量值及其网格集合特性。...深蓝算法借鉴了以前陆地和海洋上海洋观测宽视场传感器(SeaWiFS)和陆地上中分辨率成像分光仪(MODIS)测量中检索气溶胶光学厚度应用。...每日 L3 网格产品算术平均值也为每月汇总产品统计补充提供了依据。为了排除采样不佳网格要素,该算法要求至少有 3 天有效数据才能使给定月度网格要素有效。...、SDS 名称和说明、质量标志、处理和使用这些数据产品软件等更多信息,请查阅 VIIRS 深蓝气溶胶产品用户指南。...per the Julian CalendarCCC Version ID of the data collectionYYYYDDDHHMMSS Processing year, Day-of-year

8110

NASA数据集——VIIRS每日 L3深蓝气溶胶网格产品(AERDB_D3_VIIRS_SNPP),以 1 x 1 度

(VIIRS)标准三级(L3)每月深蓝气溶胶产品来自苏米国家极轨伙伴关系(SNPP)仪器,提供全球陆地和海洋上空气溶胶光学厚度(AOT)卫星衍生测量值及其网格集合特性。...深蓝算法借鉴了以前陆地和海洋上海洋观测宽视场传感器(SeaWiFS)和陆地上中分辨率成像分光仪(MODIS)测量中检索气溶胶光学厚度应用。...每日 L3 网格产品算术平均值也为每月汇总产品统计补充提供了依据。为了排除采样不佳网格要素,该算法要求至少有 3 天有效数据才能使给定月度网格要素有效。...该 L3 月度产品采用 netCDF 格式,包含 45 个科学数据集(SDS)图层,其名称与 L3 日度产品中 SDS 相同,包括以下内容: Aerosol_Optical_Thickness_550...per the Julian CalendarHHMM Acquisition Hour and MinuteCCC Version ID of the data collectionYYYYDDDHHMMSS

6110

数据库索引设计优化》读书笔记(六)

第10章 多索引访问 练习 10.1 假设多索引访问一节中所描述拥有位图索引CIA表包含200000000数据。请评估(a)位图索引和(b)半宽B树索引所需磁盘空间。...请将磁盘空间差异转化为每月需要支付美元金额。 书中关于拥有位图索引CIA表描述如下:    位图索引比较优势在于能够很容易地使用多个位图索引来满足单个查询。...最佳使用场景是,每一个单独谓词选择性不好,但是所有谓词一起进行索引与后选择性很好。...位图索引使用原则: 位图索引主要用于决策支持系统或静态数据,不支持索引级锁定。...在oltp环境中,如果一个表更新比较频繁,千万不要使用位图索引,如果数据仓库环境中,使用了位图索引,也最好在加载数据时候将其删除,等数据加载完成以后重新创建

40220

Pandas DateTime 超强总结

所以我们可以使用所有适用于 Timestamp 对象方法和属性 创建时间序列数据框 首先,让我们通过从 CSV 文件中读取数据创建一个 DataFrame,该文件包含与连续 34 天每小时记录 50...例如,午夜到凌晨 4 点记录性能指标位于 DataFrame 前五 现在,让我们详细了解一下 DataFrame 特性,例如它大小和每列数据类型: print(df.info()) Output...要将 datetime 列数据类型 string 对象转换为 datetime64 对象,我们可以使用 pandas to_datetime() 方法,如下: df['datetime'] =...DataFrame ,我们可以创建一个布尔掩码并使用 .loc 方法过滤特定日期范围内: mask = (df.datetime >= pd.Timestamp('2019-03-06')) &...虽然我们可以使用 resample() 方法进行上采样和下采样,但我们将重点介绍如何使用它来执行下采样,这会降低时间序列数据频率——例如,将每小时时间序列数据转换为每日或 每日时间序列数据每月 以下示例返回服务器

5.4K20

如何用R和API免费获取Web数据

更妙是,许多Web数据,都是免费。 在这个号称大数据时代,你是如何获得Web数据呢? 许多人会使用那些别人整理好并且发布数据集。 他们很幸运,工作可以建立在别人基础上。这样效率最高。...操作 实际操作过程中,我们维基百科上换另外一篇维基文章作为样例,以证明本操作方法通用性。选择文章是我们在介绍词云制作时使用,叫做“Yes, Minisiter”。...,以及包含其他元数据,都正确地服务器用API反馈给了我们。...,数据统计并不是2014年开始,而是2015年7月。...小结 简单回顾一下,本文我们接触到了以下重要知识点: 获取Web数据三种常见方式及其应用场景; 常见API目录资源获取地址和使用方法; 如何用R来调用API,并且服务器反馈结果中抽取关心数据

2.1K20

Flask中ORM框架之SQLAlchemy插件入门到弃坑

__) 进行 SQLAlchemy 对象构建, 在开发过程中常常使用懒加载方法 init_app 方法进行扩展加载使用; Step 3.配置数据库连接字符串说明与实例 # 数据库连接字符串通用: 数据库...WeiyiGeek.Mysql正式环境 ---- 2.扩展基础使用 使用Models进行模型定义 使用Column创建字段 使用SQLAlchemy对象进行创建数据库(create_all)以及删除数据库...# 查询集 all() # 返回查询到所有数据集,返回格式list first() # 返回查询到第一数据集 get(index) # 返回指定索引数据结果集 # 条件查询 filter...3.偏移1个索引第二数据开始只显示两行数据即(2-3) Cat.query.offset(1).limit(2) Cat.query.order_by('-id').offset(1).limit...基础实例: 1.外键与外键反向引用模型构建 2.使用关系 relationship 进行外键反向引用即级联查询; # Day3\App\models.py # 例如以下数据库模型声明 class

3.1K10

list、dict和set综合应用:排课系统(3)

上回说到,我们完成了用来测试排课算法相关数据添加,这次我们就来实现排课算法,算法相对来说比较复杂,主要用到数据结构有 list、dict 以及 set,至于这些数据结构如何使用,下面就进行讲解。...最后我说一下我使用格式,其中请求资源最小单位我使用自定义类,资源分配表使用字典。当然也可以使用我上面提到其他格式,但是需要注意: 千万不要用了和我不一样格式,然后排课算法抄我代码!...(当然也可以生成教师课表,逻辑差不多),班级课表是一个 Excel 表格,有多少个班级,就有多少个工作表,每个工作表名称必须包含班级 id 和名称,每个工作表格式:第一是显示星期几(第二列开始...),第一列是显示第几节课(第二开始),第一第一列直接空出来。...然后对应位置填上课程、教师、教室,三样东西在一个单元格,一个单元格有三(第一是课程,第二是教师,第三是教室)。

87920

Hive优化器原理与源码解析系列—统计模块内存成本估算

背景 在上篇文章“Hive优化器原理与源码解析系列--统计信息选择性计算”中,讲到了基于成本优化器和基于规则优化器区别,这里就不再赘述。...Hive优化器是使用Apache Calcite框架来实现。...Operator不同,其可RelOPtHiveTable表对象形式获取TableScan所需要列完整ColStatistics统计信息对象,如果ColStatistics对象为null,使用数据类型方法...} } return list.build(); } 2) SemiJoin每列平均大小估算 SemiJoin只需要获取左侧RelNode关系表达式使用RelMetadataQuery访问收集数据信息进行估算大小...平均列大小估算方法大致相同,区别是Join获取左右侧两侧RelNode关系表达式使用RelMetadataQuery访问收集数据信息进行估算大小 public List averageColumnSizes

1.2K20

PAT 1016 Phone Bills (25分) sort() + map 逻辑较为复杂

注意给出账单是一个月内 第一给出 0-23,24个小时 每个小时内收费(多少分/每分钟) 然后给出 N 个人电话记录(姓名 月:日:时:分 on/off) 一次有效通话记录是:同一个人,先有一个...思路分析 首先创建结构体 Record 保存每一条记录信息,由于每条记录时间都是 月:日:时:分,又因为所有记录都是同一个月,所以我们把时间都转成 本月00:00开始分钟数。...,一条有效记录 int month, day, hour, minute, status; int time; // 为了计算两次通话时间差,计算出每条记录开始时刻对应每月0...首先:我们把每个记录都转成了0号00:00开始分钟数,先不考虑有效无效记录,我就可以认为每一条记录都是0号00:00开始通话到这个记录时刻,我就可以求出每个记录0号00:00开始花费,如果计算花费...int time; // 为了计算两次通话时间差,计算出每条记录开始时刻对应每月0号00:00对应分钟数,之后做差即可得到本次通话时长 }; // rate[0]表示0-1小时,每分钟几分钱

42720

​Kaggle M5 Forecasting:传统预测方法与机器学习预测方法对比

预测结果可以看出,三指数平滑方法能够学习数据季节性变化特征。 ARIMA 使用 ARIMA 方法,首先需要确定 p,d,q 三个参数。 p 是AR项顺序。...预测结果可以看出,通过分析额外数据,有助于减少误差。 机器学习 使用机器学习方法,首先需要特征数据以及指标数据。 在本文中,基于时间序列数据构造特征数据如下: 特征数据1:滞后数据。...特征数据3:月销售均值 特征数据4:每月销售最大值 特征数据5:每月销售最小值 特征数据6:每月销售最大值与最小值差值 特征数据7:每周销售均值 特征数据8:每周销售最大值 特征数据9:每周销售中值...,在训练阶段,我们使用了7 天前 demand 数据以及 7 天前至 14 天之前 demand 移动平均值数据作为特征数据。...如果我们只有时间序列数据,那么特征数据较为缺乏,我们可以基于原始数据创建特征数据,如滞后数据、移动平均数据等。因此机器学习方法要呈现更好地预测结果,特征工程至关重要。

1.9K10
领券