R语言读写数据-数据库MySQL

R语言连接数据库,通过数据库存放数据,使用R语言来调用数据。
一方面便于数据的管理,另一方面也便于数据计算流程的复用等

代码示例

library(RMySQL)
# 连接数据库
MySQLCon <- dbConnect(RMySQL::MySQL(), dbname = 'jdata',host='localhost', 
 user='***', password='***',  charset='GBK')
summary(MySQLCon )

# 查找数据
tablesname <- dbListTables(MySQLCon )
# 对表进行查看
querytablename <- tablesname[3]
SQLcommand <- paste("select count(*) from ",querytablename ,seq='')
countNum  <- dbGetQuery(MySQLCon , SQLcommand )
paste(querytablename ,' total ',countNum  ,seq='')


#方式一:通过SQL的特性查看 表的字段进行查看
fieldTableSQL  <- paste("show full columns from ",querytablename ,';',seq='')
fieldsum <- dbGetQuery(MySQLCon , fieldTableSQL  )
fieldname <- fieldsum['Field'][2,1]
filSQL <- paste( "select" ,fieldname, ", count(distinct user_id)  from", querytablename  ," group by", fieldname,';')
plotData <- dbGetQuery(MySQLCon , filSQL )

# 方式二,通过Dataframe的情况处理
fieldall  <- dbGetQuery(MySQLCon , paste( 'select * from ', querytablename,sep='' ))
head(fieldall  )

# 数据探索-最值
max(fieldall[,1])
max(as.numeric(fieldall[,1]))
min( fieldall[,1])

## 数据探索-缺失值
 which(is.na(fieldall$'user_id'))
 which(is.na(fieldall$'age')) 
 which(is.na(fieldall$'sex')) 
 which(is.na(fieldall$'user_lv_cd'))

## 分组等数据探索操作

# 关闭数据库连接
dbDisconnect(MySQLCon )

blogroll

social