① 如何用R 语言 建立 股票价格的时间序列
在下想用R语言对股票价格进行时间序列分析。
问题出在第一步,如何将股票价格转换为时间序列。
我想用的语句是 pri <- ts (data, start=(), frequency= )
但是我不知道frequency 项该如何填?
因为股票的交易日是一周五天的。 那么这个frequency 该如何设置呢?
我知道通常frequency= 12 为月度数据,frequency= 4 为季度数据,frequency= 1 为年度数据 但日数据怎么写我就不知道了
初学R语言,还望各位大侠多多帮助。
② 怎么让R语言读写SQL的数据
R 对于基于 SQL 语言的关系型数据库有良好
的支持,这些数据库既有商业数据库 Oracle、Microsoft SQL Server、IBM DB2 等,也包含在 GNU
General Public License (GPL) 下发布的 MySQL 等开源数据库。
RMySQL 包中提供了到 MySQL 数据库的接口;RODBC 包提供了更为广泛数据库接口的解
决方案 支持所有标准 ODBC 接口的数据库。通过这种方式,相同的 R 代码可以方便地应用于
不同类型的数据库。
library (RODBC)
ch <- odbcConnect("stocksDSN",uid = "myuser",pwd = "mypassword")
stocks <- sqlQuery(ch ,"select * from quotes")
odbcClose(ch)
http://blog.csdn.net/lglgsy456/article/details/44806305
③ 根据上面E-R图和要求,用SQL语句建立数据库和YGB表(包含主键、参照完整性等信息)。
CREATETABLEYGB
(
yg_noINTPRIMARYKEY,
nameNVARCHAR(45)NOTNULL,
positionNVARCHAR(32)NOTNULL,--或者另器一张职位表这个用职位表的主键做外键
SuperiorINTNULL
)
④ R语言可以用SQL语句导入数据库内容么
当然也可以将R与外部数据库连接,直接在R中操作数据库,并生成最终结果,这也是一种可行的方法。在R中连接数据库需要安装其它的扩展包,根据连接方式不同我们有两种选择:一种是ODBC方式,需要安装RODBC包并安装ODBC驱动。另一种是DBI方式,可以根据已经安装的数据库类型来安装相应的驱动。因为后者保留了各数据库原本的特性,所以个人比较偏好用DBI连接方式。有下面这几种主要的包提供了DBI连接:RMySQL,RSQLite,ROracle,RPostgreSQL。由名字看得出它们分别对应了几种主流的数据库。
注:以上文字来自R-blogger—–《在R语言中使用SQL》
⑤ 如何用R语言连接和管理MYSQL数据库
链接数据库其实很简单具体代码如下:
package db;
import java.sql.*;
public class DB {
private Connection con=null;
private Statement stmt=null;
private ResultSet rs=null;
public DB(){}
public Connection getConnection(){
String url="jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8";
String dbuser="root";
String dbpass="sa";
String name="com.mysql.jdbc.Driver";
if(con==null){
try{
Class.forName(name).newInstance();
}catch(Exception e){
System.out.println(e);
}
try{
con=DriverManager.getConnection(url,dbuser,dbpass);
}catch(Exception e){}
}
return con;
}
public ResultSet exeQuery(String sql){
try{
con=getConnection();
if(con==null){
throw new Exception("没有可连接对象");
}
stmt=con.createStatement();
rs=stmt.executeQuery(sql);
}catch(Exception e){}
return rs;
}
public boolean update(String sql){
boolean flag=true;
try{
con=getConnection();
if(con==null) throw new Exception("没有可连接对象");
stmt=con.createStatement();
stmt.executeUpdate(sql);
}catch(Exception e){
flag=false;
System.out.println("异常:"+e);
}
return flag;
}
public void close(){
try{
if(rs!=null)try{rs.close();}catch(Exception e){System.out.println("rs"+e);}
try{stmt.close();}catch(Exception e){System.out.println("stmt"+e);}
try{con.close();}catch(Exception e){System.out.println("con"+e);}
}catch(Exception e){}
}
⑥ R语言怎么建立数据库
R 对于基于 SQL 语言的关系型数据库有良好的支持,这些数据库既有商业数据库 Oracle、Microsoft SQL Server、IBM DB2 等,也包含在 GNUGeneral Public License (GPL) 下发布的 MySQL 等开源数据库。RMySQL 包中提供了到 MySQL 数据库的接口;
⑦ 如何在R语言中使用SQL语句 怎样使用r语言读取的sql数据
另一种是DBI方式,所以个人比较偏好用DBI连接方式。有下面这几种主要的包提供了DBI连接,可以根据已经安装的数据库类型来安装相应的驱动。因为后者保留了各数据库原本的特性,根据连接方式不同我们有两种选择:一种是ODBC方式,需要安装RODBC包并安装ODBC驱动当然也可以将R与外部数据库连接,直接在R中操作数据库,这也是一种可行的方法。在R中连接数据库需要安装其它的扩展包,并生成最终结果
⑧ SQL如何绘制E-R数据模型。。求助。。
不知你是光做图(只做文档)呢还是要设计模型呢?
1 只是制作图的话,viso或其他什么制图工具均可吧。
2 设计模型,包括逻辑模型(E-R图、数据模型)、物理模型、及使用模型在数据库生成数据表。可以使用的工具:
PowerBuilder;
CA Erwin Data Molerer r7;
网上均有下载和教程。
⑨ 如何在R语言中使用SQL语句
R中还有一个有趣的sqldf包,它可以让你用SQL来操作dataframe,这种功能能让会R的人能练习SQL,会SQL的人能练习R,不得不感叹R语言的强大技能和神奇魅力。
当然也可以将R与外部数据库连接,直接在R中操作数据库,并生成最终结果,这也是一种可行的方法。在R中连接数据库需要安装其它的扩展包,根据连接方式不同我们有两种选择:一种是ODBC方式,需要安装RODBC包并安装ODBC驱动。另一种是DBI方式,可以根据已经安装的数据库类型来安装相应的驱动。因为后者保留了各数据库原本的特性,所以个人比较偏好用DBI连接方式。有下面这几种主要的包提供了DBI连接:RMySQL,RSQLite,ROracle,RPostgreSQL。由名字看得出它们分别对应了几种主流的数据库。
注:以上文字来自R-blogger—–《在R语言中使用SQL》
值得一提的是在运用sqldf包时可能要对R软件升级到3.1.0版以上,否则安装不会成功,这里简单介绍一种在Windows环境下对R软件自动升级的方法。
Windows上升级R语言:
install.packages("installr");
library(installr) #加载包
updateR()
之后选择“确定”就可以自动更新了
虽然在R语言中有很多优秀的函数如aggregate()和daply()可以对数据框统计,但sql功能强大,不仅能实现数据的清洗、统计、运算,还可以实现数据存储、控制、定义和调用。越来越多的公司在招聘的时候都要求数据分析师除了要掌握统计建模和数据挖掘的理论方法和编程能力外,还要求其具备使用sql的能力,楼主也在积极学习sql当中。
下面是我利用sqldf()完成的一些程序,虽然简单,但这是学习的第一步
> name<-c(rep('张三',1,3),rep('李四',3))
> subject<-c('数学','语文','英语','数学','语文','英语')
> score<-c(89,80,70,90,70,80)
> stuid<-c(1,1,1,2,2,2)
> stuscore<-data.frame(name,subject,score,stuid)
> library(sqldf)
1.计算每个人的总成绩并排名(要求显示字段:姓名,总成绩)
> sqldf('select name,sum(score) as allscore from stuscore group by name order by allscore')
name allscore
1 张三 239
2 李四 240
2.计算每个人的总成绩并排名(要求显示字段: 学号,姓名,总成绩)
> sqldf('select name,stuid,sum(score) as allscore from stuscore group by name order by allscore')
name stuid allscore
1 张三 1 239
2 李四 2 240
3.计算每个人单科的最高成绩(要求显示字段: 学号,姓名,课程,最高成绩)
> sqldf('select stuid,name,subject, max(score) as maxscore from stuscore group by stuid')
stuid name subject maxscore
1 1 张三 数学 89
2 2 李四 数学 90
4.计算每个人的平均成绩(要求显示字段: 学号,姓名,平均成绩)
> sqldf('select stuid,name,subject, avg(score) as avgscore from stuscore group by stuid')
stuid name subject avgscore
1 1 张三 英语 79.66667
2 2 李四 英语 80.00000
5.列出各门课程成绩最好的学生(要求显示字段: 学号,姓名,科目,成绩)
> sqldf('select stuid,name,subject,max(score) as maxscore from stuscore group by subject order by stuid')
stuid name subject maxscore
1 1 张三 语文 80
2 2 李四 数学 90
3 2 李四 英语 80
8.列出各门课程的平均成绩(要求显示字段:课程,平均成绩)
> sqldf('select subject,avg(score) as avgscore from stuscore group by subject')
subject avgscore
1 数学 89.5
2 英语 75.0
3 语文 75.0