R語言的基本數據結構

一、向量

向量是用於存儲數值型、字符型或邏輯性數據的一維數組,執行組合功能的函數c()可用來建立向量java

下面建立向量a,並對其進行運算
python

> a<-c(2,3,4)
> a
[1] 2 3 4
> a*a
[1]  4  9 16
mysql

> a*(-a)
[1]  -4  -9 -16sql

二、矩陣

矩陣是一個二維數組只要每一個元素擁有相同的模式,可經過函數matrix建立矩陣mongodb

通常的格式:newmatrix<-matrix(vector,nrow=numbers_of_rows,ncol=number_of_columns,byrow=logical_value,dimnames=list(char_vector_rownames,char_vector_colnames))數組

上面的各個參數解釋:數據結構

vector:表示是一個向量,包含了矩陣的元素函數

nrow和ncol用以指定行和列的維數spa

dimnames包 列名含了可選的、以字符向量表示的行名code

byrows表示矩陣式按行填充(byrows=TRUE)仍是按列填充(byrows=FALSE).默認按行

一、建立一個矩陣

> y<-matrix(1:20,nrow=5,ncol=4)
> y
     [,1] [,2] [,3] [,4]
[1,]    1    6   11   16
[2,]    2    7   12   17
[3,]    3    8   13   18
[4,]    4    9   14   19
[5,]    5   10   15   20

二、按行填充

> cells<-c(1,2,3,4)
> rnames<-c("R1","R2")
> cnames<-c("C1","C2")
> y1<-matrix(cells,nrow=2,ncol=2,byrow=TRUE,dimnames=list(rnames,cnames))
> y1
   C1 C2
R1  1  2
R2  3  4
三、按列填充

> y2<-matrix(cells,nrow=2,ncol=2,byrow=FALSE,dimnames=list(rnames,cnames))
> y2
   C1 C2
R1  1  3
R2  2  4

三、數組

關於數組這個東西,基本上的語言裏都有這個東西,很少解釋了

用法:newarray<-array(vector,dimensions,dimnames)

vector:向量,也是數組中的數據.

dimensions是一個數值型向量,給出了各個維度下標的最大值

dimnames是可選的,各維度名稱的標籤列表

下面建立一個2*3*4的數組

> dim1<-c("A1","A2")
> dim2<-c("B1","B2","B3")
> dim3<-c("C1","C2","C3","C4")
> x=array((1:24),c(2,3,4),dimnames=list(dim1,dim2,dim3))
> x
, , C1
   B1 B2 B3
A1  1  3  5
A2  2  4  6
, , C2
   B1 B2 B3
A1  7  9 11
A2  8 10 12
, , C3
   B1 B2 B3
A1 13 15 17
A2 14 16 18
, , C4
   B1 B2 B3
A1 19 21 23
A2 20 22 24

四、數據框

數據框這個東西應該是R特有的。是R語言最常處理的數據結構

用法:data.frame(col1,col2,col3,...)其中列向量col1,col2,col3....能夠是任何類型.

> num<-c(2,4,6,8)
> code<-c("mysql","java","mongodb","python")
> state<-c("TRUE","FALSE","TRUE","FALSE")
> newdataframe<-data.frame(num,code,state)
> newdataframe
  num    code state
1   2   mysql  TRUE
2   4    java FALSE
3   6 mongodb  TRUE
4   8  python FALSE
> class(newdataframe)
[1] "data.frame"


五、因子

類別(名義型)變量和有序類別(有序性)在R中成爲因子,因子在R中是很是重要的存在,由於它決定了數據的分析方式以及如何進行視覺呈現。

我不知道怎麼用文字解釋了.......

六、列表

列表是R語言數據類型最複雜的一種,就是一些對象的有序集合,容許咱們整合若干對象到單個對象名下

mylist<-list(object1,object2,object3......)

其中object能夠是上面說的任何一種結構

下面這個例子能夠說列表就是個大雜燴吧。

> a<-"I LOVE python"
> b<-c(1,2,3,4)
> c<-matrix(1:4,nrow=2)
> d<-c("one","two","three")
> mylist<-list(title=a,sort=b,c,d)
> mylist
$title
[1] "I LOVE python"

$sort
[1] 1 2 3 4

[[3]]
     [,1] [,2]
[1,]    1    3
[2,]    2    4

[[4]]
[1] "one"   "two"   "three"




最後再說R語言中的美圓符號$能夠表示是取某一列的含義,而PHP中是變量名。。。

相關文章
相關標籤/搜索