R-大数据分析挖掘(5-R基础回顾)
(一)R函數
R是一種解析型語言,輸入后可直接獲取結果
????? 函數(輸入參數,參數)
R的函數分為“高級”和“低級函數”
??高級函數可調用低級函數
??高級函數稱為泛型函數
??函數名 ?<--‐ ?funcion(數據,參數=1,默認值){
??????異常處理
??????表達式
??????return ?返回值
??}
(二)R賦值與注釋
??2+2 ?
??a ?< ?--‐2
??c ?<--‐ ?a+b
??#注釋
(三)對象起名
??1.區分大小寫,China與china不同
??2.不能用數字作為變量,對象也不能用數字開頭
??3.保留字
–?NA,NaN,Pi,LETTERS,leBers,month ?等
(四)元素的類型
??數值型,Numeric
??字符串,Character
??邏輯型,Logical
??因子型,Factor
??復數型,Complex ?如2+3i
??向量(vector),一系列元素
–??c(1,2,3);c(“a”,”a”,”b”,”b”,”c”)
??因子(factor) ??因子是一個分類變量
??c(“a”,”a”,”b”,”b”,”c”)
??矩陣(matrix),二維的數據表,是一個數組的特例
??數組(array)
–?數組是k維的數據表(k ?in ?1:n ?,n ?為正整數)
??數據框(dataframe)
–?是由一個或幾個向量和因子構成,他們必須是等長的,但可以是不同但數據類型
??列表
–?列表可以包含任何類型的對象
–?可以包含向量、矩陣、高維數組也可以包含lixt
運算符
??數學運算
–?+,--‐ ?===
??比較運算 返回true ?or ?false
–?>,<,<=,>=,==
??邏輯運算
–?!,&,&&,|,||
外部數據讀取
??read.table()
??read.csv() ?讀取csv或者
??可以直接通過某些程序包讀取excel等格式數據
??read.csv(‘file’,header=T)
–?header=T ?表示將數據的第一行作為標題
類的判斷
??mode() ?判斷存儲類型
??class(),判斷數據的類
??is.numeric()
??is.logical()
??is.charactor()
數據框內元素的引用
??intake ?<--‐ ?data.frame(intake.pre,intake.post)
??1.? $ ?引用列,后面為列的名稱
–?例如:intake$ ?intake.pre
??2.? [,] ?方括號,逗號前為行,逗號后為列
??intake[,1]
??I ?= ?1:5;intake ?[i,]
類的轉換
??as.numeric()
??as.logical()
??as.charactor()
??as.matrix()
??as.data.frame()
??as.factor()
(五)R操作Json
1.安裝Json
2.加載進GUI中
3.從json轉到R上
4。class判斷類型,cat輸出不帶橫線的json字符串,peint輸出的帶有/,可以通過$取到深層次的json串,最內層的可以用[]去得到
5.將toJson之后字符串輸出到文件使用sink或者writeLines
(六)R 語言不僅在統計分析和數據挖掘領域計算能力強大,它在數據可視化領域也不遜于
昂貴的商業軟件。當然,R 在可視化上強大,其背后離不開各種開源軟件包的支持,Cairo
就是這樣一個用于矢量圖形處理的類庫。Cairo 可以創建高質量的矢量圖形 (GIF、SVG、
PDF、PostScript) 和位圖 (PNG、JPEG、TIFF),同時支持在后臺程序中高質量渲染!本節
將介紹 Cairo 在 R 語言中的使用。
1.安裝
2.加載進GUI并檢查Cairo包支持的圖片格式
3.畫散點圖
(七)R中的時間序列基礎庫ZOO
時間序列分析是一種動態數據處理的統計方法,通過對時間序列數據的分析,我們可
以感覺到世界正改變著什么! R 語言作為統計分析的利器,對時間序列處理有著強大的支
持。在 R 語言中,單獨為時間序列數據定義了一種數據類型 zoo,zoo 是時間序列的基礎,
也是股票分析的基礎。本節將介紹 zoo 庫在 R 語言中的結構和使用。
1.介紹
???? zoo 是一個 R 語言類庫,zoo 類庫中定義了一個名為 zoo 的 S3 類型對象,用于描述規
則的和不規則的有序的時間序列數據。zoo 對象是一個獨立的對象,包括索引、日期、時
間,只依賴于基礎的 R 環境。zooreg 對象繼承了 zoo 對象,只能用于規則的時間序列數據。
R 語言中很多其他的程序包,都是以 zoo 和 zooreg 作為時間序列數據的基礎的!
? zoo 包的API 主要有 6 類
(1)基礎對象
zoo: 有序的時間序列對象。
zooreg: 規則的時間序列對象,繼承 zoo 對象。與 zoo 相比,不同之處在于 zooreg 要求數據是連續的。
(2)類型轉換
as.zoo: 把一個對象轉型為 zoo 類型。
plot.zoo: 為 plot 函數提供 zoo 的接口。
xyplot.zoo: 為 lattice 的 xyplot 函數提供 zoo 的接口。
ggplot2.zoo: 為 ggplot2 包提供 zoo 的接口。
(3)數據操作
coredata: 查看或編輯 zoo 的數據部分。
index: 查看或編輯 zoo 的索引部分。
window.zoo: 按時間過濾數據。
merge.zoo: 合并多個 zoo 對象。
read.zoo: 從文件讀寫 zoo 序列。
aggregate.zoo: 計算 zoo 數據。
rollapply: 對 zoo 數據的滾動處理。
rollmean: 對 zoo 數據的滾動計算均值。
(4)NA 值處理
na.fill: NA 值的填充。
na.locf: 替換 NA 值。
na.aggregate: 計算統計值替換 NA 值。
na.approx: 計算插值替換 NA 值。
na.StructTS: 計算季節 Kalman 濾波替換 NA 值。
na.trim: 過濾有 NA 的記錄。
(5)輔助工具
is.regular: 檢查是否是規則的序列。
lag.zoo: 計算步長和差分。
MATCH: 取交集。
ORDER: 值排序,輸出索引。
(6)顯示控制
yearqtr: 以年季度顯示時間。
yearmon: 以年月顯示時間。
xblocks: 作圖沿 x 軸分割圖形。
make.par.list: 用于給 plot.zoo 和 xyplot.zoo 數據格式轉換。
?
?
轉載于:https://www.cnblogs.com/jackchen-Net/p/5143043.html
總結
以上是生活随笔為你收集整理的R-大数据分析挖掘(5-R基础回顾)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 两个服务之间的调用请求
- 下一篇: 获取执行计划的N种方式