1、顯示工作區間所有物件ls()或objects()
2、清空空間中的物件 rm()
3、給物件賦值
1、輸出資料型別 class()
is.資料型別.() 判斷是否為此資料型別
可以用method(is)檢視is的所有方法
2、四種資料屬性
3、資料缺失 即資料為空用na表示
一張圖看懂r語言變數的基本型別
【一維】 向量、因子
1、向量(數值)
①建立向量的格式
c()或x:y
x=c(1,3,5,7)
y=1:10
②注意 冒號:的優先順序很高,因此1:10-1是先執行1:10再將每個數都減1
③這裡是乙個例子
2、因子(分類)
①建立因子的格式
factor(向量,[levels=],[labels=])
factor(1:4)
<1>不寫levels,則levels的值為所輸向量的種類集合
<2>設定levels的值,則輸出只能是levels包括的值,向量中有但levels中無的數輸出時會用na表示
即下圖中雖然輸入的向量為1到4,但levels的值只有1和2,所有原本的3和4輸出時用na代替
<3>輸出因子的分類
levels() #輸出因子的分類
<4>輸出分類的頻次
table() #輸出分類的頻次
【二維】 矩陣、資料框
1、矩陣
①建立矩陣
matrix(seq(x:y),nrow=,ncol=,[byrow=true],[dimnames=list(c(),c())])
matrix(seq(1:20),nrow=5,ncol=4)
<1> 預設按列輸出,加byrow=true後則按行輸出
<2>dianames 給每行每列命名
②刪除某行或某列
矩陣名[-行號,-列號]
③矩陣運算
<1>r語言中的矩陣相乘為對應元素的相乘即c=a*b 中的c[i]=a[i]*b[i] 和數學中的矩陣相乘不同
c=a%*%b 為數學意義上的矩陣運算
<2>diag(矩陣名稱) 輸出矩陣的對角線
diag(n) 輸出n行n列的單位矩陣
diag(x:y) 輸出以此向量為對角線的矩陣
2、資料框
資料框即乙個鍵對應許多值,有不同資料型別的資料
①建立資料框
data.frame(鍵1=c(),鍵2=c(),...,鍵n=c())
df=data.frame(name=c("zhangsan","xiaohong","lisi","xiaolan"),***=c("m","f","m","f"),age =c(20,21,19,20),weight=c(110,90,128,102))
②指定行名。 如果不指定行名,那麼就是從1開始自增的sequence來標識每一行。
rownames=c()
③輸出
<1> 資料框名稱[[鍵]]
<2>資料框名稱$鍵
上面兩種方式都輸出鍵對應的值
【三維】 陣列、列表
1、陣列
①建立陣列
array(n:m,dim=c(x,y)) #建立二維陣列
array(n:m,dim=c(x,y,z)) #建立三維陣列
②dim()
<1> dim(陣列) 返回陣列維度
<2> dim(向量w)=c(x,y,z) 則把此向量w轉化為陣列
2、列表
①建立列表
列表中不同的資料可以有不同的型別
list(鍵1=值1,鍵2=值2,...)
stu.lt=list(name="zhangsan",stu.no="20140224",age=21,grade=c(90,85,96))
②列表輸出
<1>輸出鍵和值
list[鍵] 或 list[n]
<2>只輸出值
list$鍵 或list[[n]]
<3>輸出列表中所有鍵的名稱 names(列表名)
③修改列表
用一句話來說,對列表進行操作都是列表名$鍵,如果這個鍵不是原列表的鍵,則此操作為新增鍵,若是列表中原有的鍵則為修改值,若值為null則為刪除鍵
<1> 為列表新增乙個鍵
列表名$鍵=值
stu.lt
$project =c("programming","sport")
<2>刪除列表中的鍵
列表名$鍵=
null
#null只能大寫
stu.
lt$stu.no
=null
<3>修改列表中某個鍵對應的值
列表名$鍵=值
stu.lt
$name ="lisi"
資料框和列表的區別
直觀上看,列表可以模擬為一維的向量,資料框則可以模擬為二維資料的矩陣。技術層面而言,資料框是每個元件長度都相等的列表。
資料框是列表的一種,資料框每一列就是列表的乙個元素,所以每一列可以是不同型別但長度要相等
不同資料結構之間的轉換
as.要轉成的資料型別.(m)`
可以用method(as)檢視as的所有方法
例如m是乙個矩陣,
m.frame
運算
1、數**算
2、比較運算
< 小於 > 大於 <= 小於或等於 >= 大於或等於 == 等於 != 不等於
==用來比較單個字元是否相等3、邏輯運算identical()比較整體是否完全相等
all.equal()比較整體是否近似相等
! x 邏輯非 x & y 或 x && y 邏輯與 x j y 或 x jj y 邏輯或
xor(x, y) 異或
R語言 資料操作小貼士合集
建立空的資料框 data data.frame id character age numeric stringsasfactors false 排序 data2 data order data 18 decreasing f 將data資料集按照第18列的值公升序排列命名為資料集data2 刪除空行...
R語言 深圳 面授 R語言 操作MySQL資料庫
用r語言做資料分析時,常常需要從多種資料來源取資料,其中資料庫是非常常見的資料來源。用r操作mysql資料庫,可以說是資料分析師必備的技能了,本文介紹rmysql包,可以在r語言中對資料庫進行增刪改查的操作。install.packages rmysql 用dbconnect函式建立連線,驅動型別設...
R語言檔案操作
path j lab ex29 在r語言中進行檔案 夾 操作 setwd path cat file a n file a 建立乙個檔案a,檔案內容是 file a n 表示換行,這是乙個很 好的習慣 cat file b n file b 建立乙個檔案b 有空行file.create a 建立乙個...