sqldf程序包是R语言中实用的数据管理辅助工具,但最新版本的包在处理中文时出现乱码,待解决

Usage:  sqldf(x, stringsAsFactors = FALSE,  row.names = FALSE...)

  • row.names: 为True时,行名重命名不重新命名
  • 需安装sqldf 包: install.packages("sqldf")
  • 加载如下包:
    library(gsubfn)
    library(proto)
    library(RSQLite)
    library(DBI)
    library(tcltk)
    library(sqldf)
  • 取前几行数据示例
    > x <-head(iris,2)
    > y <- sqldf("select * from iris limit 2")
    > #比较两个数据框是否相同
    > identical(x,y)
    [1] TRUE
    > y
    Sepal.Length Sepal.Width Petal.Length Petal.Width Species
    1 5.1 3.5 1.4 0.2 setosa
    2 4.9 3.0 1.4 0.2 setosa
  • like提取数据子集
    > #取出物种列中以se开头的数据子集
    > a2r <- subset(iris, grepl("^se", Species))
    > a2s <- sqldf("select * from iris where Species like 'se%'")
    > all.equal(as.data.frame(a2r), a2s)
    [1] TRUE
  • in 提取子集

    > #在iris数据集中,选出量物种是setosa和virginica的行
    > a3r <- subset(iris, Species %in% c("setosa", "virginica"))
    > a3s <- sqldf("select * from iris where Species in ('setosa', 'virginica')")#注意单引号和双引号
    >
    > #a3r选的是子集,因而行名还是与原数据集相同
    > row.names(a3r) <- NULL
    > identical(a3r, a3s)
    [1] TRUE
  • 数据合计

    > head(iris,2)
    Sepal.Length Sepal.Width Petal.Length Petal.Width Species
    1 5.1 3.5 1.4 0.2 setosa
    2 4.9 3.0 1.4 0.2 setosa
    > aggregate(iris[1:2], iris[5], mean) #计算物种前两个变量的平均值
    Species Sepal.Length Sepal.Width
    1 setosa 5.006 3.428
    2 versicolor 5.936 2.770
    3 virginica 6.588 2.974
    > sqldf('select Species, avg("Sepal.Length") , avg("Sepal.Width") from iris group by Species')
    Species avg("Sepal.Length") avg("Sepal.Width")
    1 setosa 5.006 3.428
    2 versicolor 5.936 2.770
    3 virginica 6.588 2.974
  • order by

    > head(warpbreaks,2)
    breaks wool tension
    1 26 A L
    2 30 A L
    > head(warpbreaks[order(warpbreaks$breaks, decreasing = TRUE), ], 2)
    breaks wool tension
    5 70 A L
    9 67 A L
    > sqldf("select * from warpbreaks order by breaks desc limit 2")
    breaks wool tension
    1 70 A L
    2 67 A L

R(5): sql 数据处理的更多相关文章

  1. [2]R语言在数据处理上的禀赋之——可视化技术

    本文目录 Java的可视化技术 R的可视化技术 二维做图利器plot的参数配置 *权限机制 *plot独有的参数 *plot的type介绍 *title介绍 *公共参数集合--par *par的权限机 ...

  2. 数据挖掘R与SQL

    本文在Creative Commons许可证下发布 对于数据挖掘专业网站 KDnuggets网站的Poll持保留态度,但它的结果毕竟代表了某一类人群的使用偏好,尤其是在语言角度. 我们看排名前5位的语 ...

  3. R语言之数据处理

    R语言之数据处理 一.向量处理 1.选择和显示向量 data[1] data[3] data[1:3] data[-1]:除第一项以外的所有项 data[c(1,3,4,6)] data[data&g ...

  4. [3]R语言在数据处理上的禀赋——par参数详解(一)

    本文目录 公共参数列表 par 颜色相关 字体相关 字体大小相关 线条相关 符号相关 线条和符号大小相关 结束 本文首发:program-dog.blogspot.com 注1:本文也曾在csdn发布 ...

  5. R语言之数据处理常用包

    dplyr包是Hadley Wickham的新作,主要用于数据清洗和整理,该包专注dataframe数据格式,从而大幅提高了数据处理速度,并且提供了与其它数据库的接口:tidyr包的作者是Hadley ...

  6. R语言︱噪声数据处理、数据分组——分箱法(离散化、等级化)

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 分箱法在实际案例操作过程中较为常见,能够将一些 ...

  7. sql 数据处理时join字段慎重选择--避免出现double数据!

    前几天做BI Tabular表格模型的时候,数据中心核对数据发现模型展现数据比实际数据要多,经过核查之后,发现原来我是一个不经意,在做数据选取的时候,inner join的字段CITY_NAME_CN ...

  8. sql数据处理

    安装pymysql 读取数据库数据进行pandas操作,并用seaborn和matplotlib进行画图

  9. (转)R空间数据处理与可视化

    前言 很多朋友说在R里没法使用高德地图,这里给出一个基于leaflet包的解决方法. library(leaflet) # 添加高德地图 m <- leaflet() %>% addTil ...

随机推荐

  1. pyspark使用ipython

    在Ubuntu下,安装ipython很简单: $sudo apt-get install ipython 在bash env中添加变量: export IPYTHON=1 export IPYTHON ...

  2. Awk 从入门到放弃(5)– Awk模式(Pattern)之一

    转:http://www.zsythink.net/archives/1426

  3. learning uboot part command

    => part --helppart - disk partition related commands Usage:part uuid <interface> <dev> ...

  4. 关于双网卡双宽带Http及Socks代理的配置

    1.[硬件环境] a, 1台宿主(win7)+几十台虚拟机(xp)(vm10的版本,估计可打开52台以上的虚拟机) b, 双网卡,其中一个网卡通过路由连接电信ADSL,一个直连集线器,可直接连接移动m ...

  5. 浅谈:当程序员的N多好处,逆袭高富师

    选择一份职业,除了要要分析有没有钱途外(为什么要选择 IT 行业,IT 业有多火爆你造吗?),还要平衡其他方面的利弊.有很多想进入这个行业的小伙伴问我,程序员到底有什么好处.看样子这是很多小伙伴关心的 ...

  6. Free 4 months Serial License Key Of Outpost Security Suite Pro 8.1

    VISIT HEREto gey a 1 year key.... for the latest version Promo code ? well use the same here too : C ...

  7. 使用adb命令对手机进行截屏保存到电脑,SDCard

    adb shell /system/bin/screencap -p /sdcard/screenshot.png(保存到SDCard) adb pull /sdcard/screenshot.png ...

  8. 解决Android4.3版本下,手机短彩接收中文文件名附件,中文名字的附件无法保存(第二步:解决从从数据库中读取附件文件名,并在长按后保存附件时,中文乱码导致的无法保存附件)

    从第一步我们发现,在第一步修改之后,在短彩绘画界面中中文附件名的附件已无法显示,经过打印堆栈我们发现还是中文乱码在作祟.下面我们接着进行分析,这次我们从UI层往逻辑处理层进行分析.首先我们找到保存附件 ...

  9. Android中检测字符编码(GB2312,ASCII,UTF8,UNICODE,TOTAL——ENCODINGS)方法(一)

    package com.android.filebrowser;   import java.io.*; import java.net.*;   public class FileEncodingD ...

  10. WebGL编程指南高级技术篇(常见需求的处理)

    一.鼠标控制模型旋转 实质的根据鼠标移动前后的位置比较得出x,y轴的旋转角度: 图中是一个屏幕,有一个模型(恩,他是一个模型),鼠标由P点移动到P1点,我们假定移动单位步长旋转β角度: P(x1,y1 ...