1. CSV文件的的读取与写出
2. 数据集筛选
3. 简单随机抽样 sample函数
 
正文:
1. CSV文件的的读取与写出
  • 文件读取: df2 <- read.table("C:\\Users\\Lee\\Desktop\\R语言\\dummyData.csv", header= TRUE, sep=",")
  • 文件写出:write.table(df1, "C:\\Users\\Lee\\Desktop\\R语言\\dummyData.csv", sep=",", row.names=FALSE)

2. 数据集筛选

方法一:数据框方法即 newdata[filter条件,filter条件]

> newdata <- read.table("C:\\Users\\Lee\\Desktop\\R语言\\leadership.csv", header= TRUE, sep=",")
> newdata
  manager       date country gender age q1 q2 q3 q4 q5
1       1 2014/10/27      US      M  32  5  4  5  5  5
2       2 2014/10/28      US      F  45  3  5  2  5  5
3       3 2014/10/29      UK      F  25  3  5  5  5  2
4       4 2014/10/30      UK      M  39  3  3  4 NA NA
5       5 2014/10/31      UK      F  99  2  2  1  2  1

 
>newdata<- leadership[with(leadership,which(gender=="M")),]
> newdata
  manager       date country gender age q1 q2 q3 q4 q5
1       1 2014/10/27      US      M  32  5  4  5  5  5
4       4 2014/10/30      UK      M  39  3  3  4 NA NA
> newdata<- leadership[with(leadership,which(gender=="M" & age>34)),]
> newdata
  manager       date country gender age q1 q2 q3 q4 q5
4       4 2014/10/30      UK      M  39  3  3  4 NA NA
注意
> newdata<- leadership[which(gender=="M" & age>34),]
Error in which(gender == "M" & age > 34) : object 'gender' not found
#要指明gender是属于那个数据框,否则会出错
 
方法二:用subset函数筛选
subset(dataset,条件#筛选行,筛选列)
 
newdata <- subset(leadership, gender=="M" & age>25,select=c(gender:q2))#列只取gender:q2列
> newdata
  gender age q1 q2
1      M  32  5  4
4      M  39  3  3
> newdata <- subset(leadership, gender=="M" & age>25,select=gender:q5)
> newdata
  gender age q1 q2 q3 q4 q5
1      M  32  5  4  5  5  5
4      M  39  3  3  4 NA NA
>  
 
3. 简单随机抽样 sample函数

id <- sample(1:2,nrow(iris),replace=TRUE,prob=c(0.7,0.3)) #1:2表示在1:2这个区间,replace=TRUE有放回的抽取nrow(iris)个值, nrow(iris)是一个数值,即iris观测值的个数,记录条数,有多少行,其中1 ,2的分配比例是prob=c(0.7,0.3)
> id
  [1] 1 1 1 1 1 1 1 1 1 2 1 2 1 1 1 1 1 2 1 1 2 2 1 2 1 1 1 1 1 1 1 2 1 1 1 2 2 1 2
[40] 1 1 1 2 1 1 2 1 1 1 2 1 1 2 1 2 2 1 2 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 2 1 1 1 2
[79] 1 1 2 1 1 1 1 2 1 2 1 2 1 2 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1 2 1 1 1 2 2 2 1 1 1
[118] 2 1 2 1 1 1 1 1 1 2 2 1 1 1 1 1 1 2 2 1 1 2 1 1 2 1 1 1 2 2 2 1 1
traindata <- iris[id==1,]#训练集
testdata <- iris[id==2,] #测试集
 
【举例】
> mysample <- binary[sample(1:nrow(binary),3,replace=0),]
> mysample
    admit gre  gpa rank
390     0 640 3.51    2
225     0 800 2.90    2
44      0 500 3.31    3
> mysample <- binary[sample(1:nrow(binary),3,replace=0),]
> mysample
    admit gre  gpa rank
60      0 600 2.82    4
213     0 460 2.87    2
25      1 760 3.35    2
> mysample <- binary[sample(1:nrow(binary),3,replace=0),]
> mysample
    admit gre  gpa rank
30      0 520 3.29    1
303     1 400 3.15    2
395     1 460 3.99    3
>  
 
 

R 语言学习日志 1的更多相关文章

  1. R语言学习 第四篇:函数和流程控制

    变量用于临时存储数据,而函数用于操作数据,实现代码的重复使用.在R中,函数只是另一种数据类型的变量,可以被分配,操作,甚至把函数作为参数传递给其他函数.分支控制和循环控制,和通用编程语言的风格很相似, ...

  2. R语言学习笔记之: 论如何正确把EXCEL文件喂给R处理

    博客总目录:http://www.cnblogs.com/weibaar/p/4507801.html ---- 前言: 应用背景兼吐槽 继续延续之前每个月至少一次更新博客,归纳总结学习心得好习惯. ...

  3. R语言学习笔记(二)

    今天主要学习了两个统计学的基本概念:峰度和偏度,并且用R语言来描述. > vars<-c("mpg","hp","wt") &g ...

  4. R语言学习笔记:小试R环境

    买了三本R语言的书,同时使用来学习R语言,粗略翻下来感觉第一本最好: <R语言编程艺术>The Art of R Programming <R语言初学者使用>A Beginne ...

  5. R语言学习路线和常用数据挖掘包(转)

    对于初学R语言的人,最常见的方式是:遇到不会的地方,就跑到论坛上吼一嗓子,然后欣然or悲伤的离去,一直到遇到下一个问题再回来.当然,这不是最好的学习方式,最好的方式是——看书.目前,市面上介绍R语言的 ...

  6. R语言学习 第一篇:变量和向量

    R是向量化的语言,最突出的特点是对向量的运算不需要显式编写循环语句,它会自动地应用于向量的每一个元素.对象是R中存储数据的数据结构,存储在内存中,通过名称或符号访问.对象的名称由大小写字母.数字0-9 ...

  7. R语言学习笔记:基础知识

    1.数据分析金字塔 2.[文件]-[改变工作目录] 3.[程序包]-[设定CRAN镜像] [程序包]-[安装程序包] 4.向量 c() 例:x=c(2,5,8,3,5,9) 例:x=c(1:100) ...

  8. R语言学习笔记——C#中如何使用R语言setwd()函数

    在R语言编译器中,设置当前工作文件夹可以用setwd()函数. > setwd("e://桌面//")> setwd("e:\桌面\")> s ...

  9. R语言学习2:绘图

    本系列是一个新的系列,在此系列中,我将和大家共同学习R语言.由于我对R语言的了解也甚少,所以本系列更多以一个学习者的视角来完成. 参考教材:<R语言实战>第二版(Robert I.Kaba ...

随机推荐

  1. Spark RDD持久化说明

    以上说明出自林大贵老师关于Hadoop.spark书籍,如有兴趣请自行搜索购买! 这是我的GitHub分享的一些笔记:https://github.com/mahailuo/pyspark_notes

  2. form表单序列化数据之后,追加额外数据

    form表单序列化数据之后追加额外数据多使用在js中,下面是追加额外数据的代码: <span style="font-size:18px;">$.param({'inv ...

  3. PlayMaker Destroy Self 和 Destroy Object 和 Set Visibility

    1. 这个销毁是销毁状态机所在的游戏物体,不能销毁父物体. 2. 这个销毁只要把想销毁的游戏物体拖进去就可以. 3. 这个其实不是真正的销毁游戏对象,只是把它的 MeshRenderer 组件关上了, ...

  4. tcp的半连接与完全连接队列(三)源码分析

    TCP 协议中的 SYN queue 和 accept queue 处理 若要理解本文意图说明的问题,可能需要以下知识背景: listen 系统调用的 backlog 参数含义,以及与 net.cor ...

  5. JS arguments转array

    JS arguments转array? Array.prototype.slice.call(arguments)

  6. BNU 27847——Cellphone Typing——————【字典树】

    Cellphone Typing Time Limit: 5000ms Memory Limit: 131072KB This problem will be judged on UVA. Origi ...

  7. Ibatis.net 1.6.2 简单配置及Log4.Net日志记录

    看似简单的Ibatis配置起来注意的地方还挺多.里面的设置及功能还算强大.昨晚配置了半宿,结果一运行还是各种错误.急的直冒汗.果断下载实例去研究.英文不好文档只能作为功能参考. 下面一步步进入Ibat ...

  8. iOS-swift-函数和闭包

    一.函数 关键字:func 参数列表用 , 分割 使用 -> 分割参数和返回值 func greet(person: String, day: String) -> String { re ...

  9. checkBox 全选、全不选、反选

    checkBox的使用: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...

  10. css随堂笔记(二)

    css   sub注释 注释不能嵌套 sub生成结构代码快捷 复合选择器 1.后代选择器 语法:选择器1 选择器2 选择器3  { 属性名:属性值 } 2.子代选择器 子代选择器语法: 选择器1> ...