當前位置:首頁 » 參考文獻 » r語言與資料庫

r語言與資料庫

發布時間: 2021-03-29 23:28:57

1. R語言如何資料庫讀取數據

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) 經測試,Windows 平台上的 Microsoft SQL Server、Access、Oracle、MySQL、PostgreSQL,和

2. R語言怎麼建立資料庫

R 對於基於 SQL 語言的關系型資料庫有良好的支持,這些資料庫既有商業資料庫 Oracle、Microsoft SQL Server、IBM DB2 等,也包含在 GNUGeneral Public License (GPL) 下發布的 MySQL 等開源資料庫。RMySQL 包中提供了到 MySQL 資料庫的介面;

3. r語言處理數據用不用連接資料庫

:R 對於基於 SQL 語言的關系型資料庫有良好的支持,這些資料庫既有商業資料庫 Oracle、Microsoft SQL Server、IBM DB2 等,也包含在 GNUGeneral Public License (GPL) 下發布的 MySQL 等開源資料庫。RMySQL 包中提供了到 MySQL 資料庫的介面

4. R語言可以用SQL語句導入資料庫內容么

當然也可以將R與外部資料庫連接,直接在R中操作資料庫,並生成最終結果,這也是一專種可行的方法。在R中連屬接資料庫需要安裝其它的擴展包,根據連接方式不同我們有兩種選擇:一種是ODBC方式,需要安裝RODBC包並安裝ODBC驅動。另一種是DBI方式,可以根據已經安裝的資料庫類型來安裝相應的驅動。因為後者保留了各資料庫原本的特性,所以個人比較偏好用DBI連接方式。有下面這幾種主要的包提供了DBI連接:RMySQL,RSQLite,ROracle,RPostgreSQL。由名字看得出它們分別對應了幾種主流的資料庫。
註:以上文字來自R-blogger—–《在R語言中使用SQL》

5. 如何讓R語言通過RODBC庫讀寫資料庫的數據

一、 安裝RODBC庫
1、進入R語言的GUI界面(RGUI.EXE),在菜單欄選擇「程序包/安裝程序包」(如圖)
2、在彈出的窗口裡往下拉,選擇RODBC如圖,點擊確定
3、在ODBC數據源管理器里將需要的資料庫添加進去,這里筆者使用的是SQL Server2008,驅動程序選擇Native Client10.0
3、在R語言窗口輸入連接語句
> library(RODBC)
**這里是載入RODBC庫
> channel<-odbcConnect("MyTest",uid="ripley",case="tolower")
**連接剛才添加進數據源的「MyTest」資料庫
**ch <- odbcConnect("some dsn ", uid = "user ", pwd = "**** ")
**表示用戶名為user,密碼是****,如果沒有設置,可以直接忽略
> data(USArrests)
**將「USArrests」表寫進資料庫里(這個表是R自帶的)
> sqlSave(channel,USArrests,rownames = "state",addPK = TRUE)
**將數據流保存,這時候打開SQL Server就可以看到新建的USArrests表了
> rm(USArrests)
> sqlTables(channel)
**給出資料庫中的表
> sqlFetch(channel,"USArrests",rownames = "state")
**輸出USArrests表中的內容
> sqlQuery(channel,"select * from USArrests")
**調用SELECT查詢語句並返回結果(如圖)
> sqlDrop(channel,"USArrests")
**刪除表
> odbcClose(channel)
**最後要記得關閉連接

6. 如何在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

7. 如何用r語言抓取資料庫中的資料庫

一、 安裝RODBC庫

1、進入R語言的GUI界面(RGUI.EXE),在菜單欄選擇「程序包/安裝程序包

2、在彈出的窗口裡往下拉,選擇RODBC如圖,點擊確定

3、在ODBC數據源管理器里將需要的資料庫添加進去,這里筆者使用的是SQL Server2008,驅動程序選擇Native Client10.0

3、在R語言窗口輸入連接語句
> library(RODBC)
**這里是載入RODBC庫
> channel<-odbcConnect("MyTest",uid="ripley",case="tolower")
**連接剛才添加進數據源的「MyTest」資料庫
**ch <- odbcConnect("some dsn ", uid = "user ", pwd = "**** ")
**表示用戶名為user,密碼是****,如果沒有設置,可以直接忽略
> data(USArrests)
**將「USArrests」表寫進資料庫里(這個表是R自帶的)
> sqlSave(channel,USArrests,rownames = "state",addPK = TRUE)
**將數據流保存,這時候打開SQL Server就可以看到新建的USArrests表了
> rm(USArrests)
> sqlTables(channel)
**給出資料庫中的表
> sqlFetch(channel,"USArrests",rownames = "state")
**輸出USArrests表中的內容
> sqlQuery(channel,"select * from USArrests")
**調用SELECT查詢語句並返回結果(如圖)

> sqlDrop(channel,"USArrests")
**刪除表
> odbcClose(channel)
**最後要記得關閉連接
當然,通過這個辦法也可以讀取Excel、Access表中的內容,具體方法類似,這里不再重復

8. 如何用R語言連接和管理MYSQL資料庫

首先在開始菜單打開控制面板。點擊開始,選擇右側的控制面板。

在控制面板中,以所有控制面板的格式查看,選擇管理工具,並打開。

在管理工具中,可以看到有個數據源(ODBC),打開數據源。

在數據源管理面板中,選擇添加,由於我這里已經添加了一個數據源,只是介紹一下操作。

根據自己的資料庫,選擇相應的驅動,比如我這里是MYSQL ODBC 5.3。點擊完成,進行下一步的配置。

這里根據提示,填寫相應的欄位即可。最後點擊OK,由於這里沒有填寫任何欄位,所以OK按鈕是灰色的。

打開R軟體,數據源設置好了之後,還要載入RODBC包。如果沒有安裝,參考經驗「R語言關於R包的管理:安裝載入查看,移除,卸載」。回車之後沒有錯誤提示便是成功了。

9. 怎樣使用r語言讀取的sql數據

一、 安裝RODBC庫

1、進入R語言的GUI界面(RGUI.EXE),在菜單欄選擇「程序包/安裝程序包

2、在彈出的窗口裡往下拉,選擇RODBC如圖,點擊確定

3、在ODBC數據源管理器里將需要的資料庫添加進去,這里筆者使用的是SQL Server2008,驅動程序選擇Native Client10.0


3、在R語言窗口輸入連接語句
> library(RODBC)
**這里是載入RODBC庫
> channel<-odbcConnect("MyTest",uid="ripley",case="tolower")
**連接剛才添加進數據源的「MyTest」資料庫
**ch <- odbcConnect("some dsn ", uid = "user ", pwd = "**** ")
**表示用戶名為user,密碼是****,如果沒有設置,可以直接忽略
> data(USArrests)
**將「USArrests」表寫進資料庫里(這個表是R自帶的)
> sqlSave(channel,USArrests,rownames = "state",addPK = TRUE)
**將數據流保存,這時候打開SQL Server就可以看到新建的USArrests表了
> rm(USArrests)
> sqlTables(channel)
**給出資料庫中的表
> sqlFetch(channel,"USArrests",rownames = "state")
**輸出USArrests表中的內容
> sqlQuery(channel,"select * from USArrests")
**調用SELECT查詢語句並返回結果(如圖)


> sqlDrop(channel,"USArrests")
**刪除表
> odbcClose(channel)
**最後要記得關閉連接
當然,通過這個辦法也可以讀取Excel、Access表中的內容,具體方法類似,這里不再重復

10. 數據分析工作中,R語言和SQL哪個接觸得多

當然也可以將R與外部資料庫連接,直接在R中操作資料庫,並生成最終結果,這也是一種可行的方法。在R中連接資料庫需要安裝其它的擴展包,根據連接方式不同我們有兩種選擇:一種是ODBC方式,需要安裝RODBC包並安裝ODBC驅動。另一種是DBI方式,可以根據已經安裝的資料庫類型來安裝相應的驅動。因為後者保留了各資料庫原本的特性,所以個人比較偏好用DBI連接方式。有下面這幾種主要的包提供了DBI連接:RMySQL,RSQLite,ROracle,RPostgreSQL。由名字看得出它們分別對應了幾種主流的資料庫。

熱點內容
塗鴉論文 發布:2021-03-31 13:04:48 瀏覽:698
手機資料庫應用 發布:2021-03-31 13:04:28 瀏覽:353
版面217 發布:2021-03-31 13:04:18 瀏覽:587
知網不查的資源 發布:2021-03-31 13:03:43 瀏覽:713
基金贖回參考 發布:2021-03-31 13:02:08 瀏覽:489
懸疑故事範文 發布:2021-03-31 13:02:07 瀏覽:87
做簡單的自我介紹範文 發布:2021-03-31 13:01:48 瀏覽:537
戰略地圖參考 發布:2021-03-31 13:01:09 瀏覽:463
收支模板 發布:2021-03-31 13:00:43 瀏覽:17
電氣學術會議 發布:2021-03-31 13:00:32 瀏覽:731