R语言十八讲(三)—数据输入

来源:互联网 发布:date pattern java 编辑:程序博客网 时间:2024/06/14 06:55

u=3970391046,1488941936&fm=21&gp=0  我们在做数据分析工作的前提,当然是得有数据,巧妇难为无米之炊,所以数据的获取和产生是非常重要和基础的,然而,在当前互联网时代,信息非常的膨胀,我们获取数据的方式很多,这里简单的将其归为三类,

1,自己输入数据

2,从数据源导入数据

3,从网络上爬取数据.我们按照从易到难,从简单到复杂的方式排列.来讲讲数据的获取.

一,自己输入数据

首先R中的数据类型我们来分个类:

1.按照数据模式分类: 数值型,字符型,逻辑型.

             数值型:顾名思义就是数字,如1,2,3等

             字符型:就是各种字母和汉字以及符号等,如"a","B","good","好"等

             逻辑型:就是真或假,即 TURE ,FLASE.有时候会用0和1代替.

 

2.按照数据的形式分类:

向量–向量通俗的理解就是一列数据,例如(1,2,3,4,5,23,5,7) 或者("a","c","e","A","aaaaw","good","?")或者      (T,F,T,T,F)我们用C(   )创建,括号里写数据就可以,注意字符型要用双引号,或者seq(起始数,终止数,其他参数  )来创建序列向量,rep( 数据,其他参数  )创建重复型的向量.如图:1111111111111111111111111111111112222222222222222222

 

矩阵–就是我们在操场上做体操,横竖排列.一个点一个数据.我们用matrix(向量数据, 行数, 列数   )创建.33333333333333

数据框–就像我们的表格,第一行就是每一列的名字,我们称之为字段,或者变量名.那么对应每列下面的数据就叫做记录或      者观测.用data.frame( 字段1,字段2,…. )创建44444444444444444

列表–与数据框类似,区别就是每一列向量类型和长度可以不一致.用list( 字段1, 字段2,….. )创建

数组–其形式就像我们玩的模方,每一个面都是一个矩阵数据,用array(数据,各维度的最大值,各维度的名称)创建666666666补充:数据框的意外一种创建方式,就像我们在EXCEL做表格里一样,直接自己填写每一格的数据,输入代码后,会出现一个弹出窗口是一个空表格,我们便可以直接在表格里填写数据,非常方便,代码和效果如下:7777788888888

 

 

二.从其他数据源导入数据

目前数据源太多了,数据源的格式也非常之多,幸好R的兼容性非常好,能从各种不同的数据源中获取数据,这里只简单介绍几个比较常用的数据导入方式

1.导入CSV格式数据

read.csv("E:\\课件\\11.csv")引号下面就是你要导入的文件的路径.当如果文件存放R的工作空间时,便可以直接忽略路径,在引号下写出文件名和后缀即可如 read.csv("21.csv")导入其他格式数据也是如此,当没有写路径时,R会默认在工作空间里导入同名文件.

2.导入Excel文件

方法一.安装并加载RODBC包 使用odbcConnectExcel("E:\\课件\\11.csv")但只适用于32位系统的电脑.

方法二.将Excel文件另存为CSV文件导入

3.导入数据库文件

方法一:安装并加载RODBC包 使用odbcConnect("数据源名称",uid = "用户名",pwd="密码")连接,并使用sqlFetch( )读取      表格

例,mycon <- odbcConnect("mysql",uid = "root",pwd="0") #连接mysql数据库

 data <- sqlFetch(mycon, test )              # 读取test表格

方法二:安装并加载RMYSQL包,这里以MariaDB数据库为例

先安装这个数据库,然后打开其图形界面000000000000输入密码即可登入,此时要记住主机名/IP 用户,密码,端口,为后续R连接准备,登入后,选择一个数据库,右键单击点击创建一个表,就可以创建一个表格.然后用下面代码连接此数据库,当然实际工作中数据库早已经建好,故只需输入数据正确的参数就可以连接.举例:

con <- dbConnect(MySQL(),host="127.0.0.1",port=3306,dbname = "test",user="root",password="123456")
######修改成自己数据库名称.地址.端口.用户名.密码.等


con_query=dbSendQuery(con,"select * from all_gzdata where fullurlid =107001")

#####R通过连接对表按条件查询,查询fullurl中带有_的并且fullurlid为107001的数据(即知识类型页面)

data=dbFetch(con_query,n=-1)

####提取查询到的数据,n=-1代表提取所有数据,n=100代表提取前100行

这时我们便已经成功导入数据到R中了.


未完待续,

PPV原创文章,严禁转载. (文:@白加黑治感冒)

0 0
原创粉丝点击