日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

R语言基本知识

發布時間:2023/12/8 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 R语言基本知识 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目前看的是R語言實戰這本書

1、當輸入png("lxc.png")這種需要加雙引號。但是如果在括號中多加了一個雙引號,那么"lxc.png"", R ide就會顯示是函數輸入的類型,顯示加號,原因是雙引號沒有匹配,自己輸錯了,所以遇到沒有匹配的直接輸入缺失的匹配即可。

2、但是還有一點很重要,R給人感覺就是png("lxc.png")這個好像是打開畫板,但是如果下面不畫畫是什么都沒有的,并不是說ide界面上顯示圖像了,就可以直接png()保存了,其實png就是打開畫板,然后畫圖句子使用,然后dev.off()這個函數關閉畫板才會flush到真正的文件中。同理,pdf()都是如此。保存圖片與圖片自身是否顯示無關。

3、help("sink")記得加引號。而其中sink函數的結束方法是再次輸入空參數。sink()即可。file="lxc"注意要添加雙引號。當然sink函數使用也是,先打開,然后后面的輸出才寫上,當然結束不再是dev.off()而是sink()參數空即可。

4、options(digits=3)其中options是顯示(空的時候就是顯示)或者設定R的運行環境變量。而digits=3表示顯示小數點3個數長。默認是7.

5、對普通的畫圖為:

plot(number, count, yaxt="n", xaxt="n",xlab="x 軸名字",type="b")

上述表示為:yaxt xaxt都是將數據軸的標度和標度值完全去掉,但是可以設置軸的名字,后面設置標度和標度值使用:

axis(side=1, at=c(1,3,5,6,7), lables=(ni, hao, a , man, go));等均可匹配,at表示刻度值范圍。

但是有個問題就是太擁擠的不可見怎么縮小y軸的尺寸,而縮小尺寸值是在axis()命令設置at這個參數的時候就設置,使用cex.axis=0.5就表示縮小一半。而當直接使用默認的坐標刻度的時候,那么就在plot中直接放cex.axis=0.5即可。同樣兩個地方可以用的有:cex.lab=0.5 只縮放坐標軸的名稱。 cex.main=0.只縮放主標題? cex.sub只縮放副標題。

當然上述除了axis要設置at值,還有par函數,但是該函數主要是作用于整個畫布環境,設置完后,不會對當前已經顯示的影響,而只會影響后面重新生成的圖片。可以設置,par(cex.axis=0.5, )

?

其中設置畫布大小的為:par(pin(11,7))是目前自己試出來的最大畫布。

6、對于定義的function來說,x<-function(type=1){}

這種function中的參數意思是有一個參數,如果你不輸入參數默認就是1,所以參數仍然是一個,雖然看著是個等式

7、時間函數是大寫Sys.time()這個就足以輸出了,但是如果想自己控制格式用format(Sys.time(), "%a,%b,%d,%y") 與"%A,%B,%d,%y"顯示還不一樣,后者顯示的星期和月份都是全稱,而前者是縮寫因為是小寫的a b

8、對于read.table()讀txt文件的時候,需要使用read.table("路徑加引號",seq="空格還沒識別出來")

然后讀成矩陣或者數據框。重命名其中列名用names(xxx)[n]<-c(x,x,x,x)必須是向量,不能是標量,但是單個的時候還是可以的例如單個1默認成向量1,單個字符串加雙引號默認成單個向量。且必須是xxx[n]兩者分開使用好奇怪。或者names()[1:n]都修改。

實在不會修改,還有fix()這個函數將數據框顯示成表格讓你使用。

rename(data3, c(oldname="newname".......))而 直接names(data3)是打印出原有的表頭列名字。

9、對取出來的值進行判斷是否空缺,is.na()即可對向量判斷,也可以對數據框進行判斷。

10、apply函數是對矩陣,數組,數據框的一個維度上面使用函數的,apply(x, margin, fun, ...)而sapply(x, fun, option)和lapply(x, fun , option)? 其中sapply是對任何數據都可用,而lapply是用于list專用。

11、就是說對于TRUE當參數,只能將向量類型的傳進去,例如一個矩陣10*3,怎么把矩陣中全部是數字的給輸出出來,那么就是將矩陣這個矩陣轉為由TRUE填充的矩陣,這樣就可以將其當成參數,而如果只用下標表示,那么不行。mean(!is.na(x))這樣才行。就是說TRUE值想起作用,只能以數據結構形式組織起來當成參數使用

12、注意自己可以創造邏輯值。例如y<-c("c","b","a")是一個向量用is.na()判斷倒是能夠生成3個邏輯值。而自己用c(TURE,TRUE,TRUE)才是一個邏輯值向量。與11條相結合就可以將向量或者數據框的內容利用邏輯向量編程一個向量使用。因為涉及到數據計算的時候,有時候只能使用純數值的向量,不能使用數據框去計算。例如sd()標準差函數,只能使用vectory這種類型對于mtcars這種date.frame不能直接計算的。

13、x=read.table(file.choose())這個還讓選擇路徑。哈哈。

14、對于不規則的txt文件,那么使用readLines(“路徑”)函數,即可得到字符串向量,是真的大啊。例如自己的?chr [1:93906]有這么多行。必須得一行一行分析,首先怎么去掉特定的一些內容??

其實處理文本這些臟活是可以給python來處理的。。!!先處理了再用R來統計也行。

下面專門開始學習的『正則表達式』和『字符處理函數』https://www.cnblogs.com/awishfullyway/p/6601539.html

nchar()字符串長度。它與length()函數的區別是后者統計的是元素個數。

paste()是用于黏合多個字符串到一個字符串上的。即使有不是 字符串的內容也能轉換為字符串、

strsplit()函數正好是將字符串按照某種形式進行劃分的。是paste()的逆向操作。(參數是同樣的可以輸入以什么做間隔的雙引號即可)

substr()字符串截取函數,參數是:從子集開始位置到終止位置。就是源頭參數加兩個數字。substring()函數同樣。

gsub()字符串替代,找到sub字符串然后用新的字符串代替。而sub()函數只替換第一個發現的結果,并不會都替換的。而chartr()函數也是字符串替換。

grep()字符串匹配。搜索到后返回其位置索引。grepl()函數多了一個l表明找到索引后返回的是邏輯值。

大小寫轉換函數,toupper(), tolower(), casefold(),

?

字符(串)的格式化(定制)輸出函數:sprintf()、sink()、cat()、print()、strtrim()、strwrap()

?

例子:strsplit(x, split="\\s+") ?這個效果等效于strsplit(x, split=" ")其中s+是正則表達式中所有與空格相關的空格項。

?

例子中:?num1<-grep(pattern="for finished",x)表示的是只要有個元素中含有這部分pattern內容,那么就返回這個元素的下標。只要x1<-x[-num1]其中num1是一些下標組成的數組。

怎么去除方括號內的內容??有什么命令。

gsub("\\(.*\\)","",字符串)例如這個就是匹配到括號內所有值的,替換即可。

?

1、向量就是使用c表示連接的,并且向量的元素表示就是與數組相同為:x[1]或者x[2:5]都行。

2、超級賦值<<-賦值運算符,可以在函數內給全局變量賦值。

3、查看類型mode(x)

4、矩陣往向量處變化時候,使用m<-rbind(c(), c())可以生成一個矩陣。因此矩陣含有行,列。同樣矩陣使用下標索引,但是單個元素使用兩個下標,而想找一行或者一列的,那么使用的下標是:? ?逗號和一個值。 m[,1]表示第一列。而創建矩陣方法:m<-matrix(vector,nrow=, ncol=, byrow=TRUE, dimnames=list(rname,cname))? 其中rname cname分別是字符串向量。此時涉及到了一個行列名稱問題,但是還沒有學習list的。

5、矩陣都是2維的,而只有數組才是可以使維數超過2維,但是數組同樣是同類型的元素。a<-arrary(vector, dimensions, dimnames)? 其中vector是數據,第二個是數值向量。第三個是名稱列表。已經說明了其內容。

6、列表list是與向量很像,但是每個元素都可以擴充為一組元素組成的向量(向量可以由不相同的元素組成,只是都看成字符而已)。所以才會出現list(rname,cname)這樣才是將其按照同等地位組合在一起,很多時候是一個函數的返回值,更像結構體,各種類型都可以放進去返回,例如hist(Nile)這個返回值就是一個list類型。而list的訪問也是使用mingcheng $xxx? 例如:x<-list(u=2,v="abc")那么x$u就是2.

注意也就是list使用美元訪問,但是也是在有listname情況下,如果沒有listname的話,是不能使用$的。。。只能使用雙方括號!!![[ ]]。然后選中一個小組件,然后再用另外方括號選擇更小的內部例如:x[[1]][2]和y$u[2]效果是一樣的。都是選第一組中的第二個元素。? ? ? ? ? ?數組矩陣是為了使用數據的幾行幾列,而list是為了更簡便粗暴地包含更多元素內容

list也很特殊,當元素相同時候,可看成向量,不相同的時候,可看成數據框,不看成向量即可。

7、數據框? ? ? ? ? ?數據框其實就是列表,只是數據框是以不同類型元素的數組類型表示的。可以看成由同一列構成的向量當成list的每個成員。。。內容都一樣,只是組織形式不一樣,有時候統計員工信息,肯定數據框更方便顯示,但是硬把每一列當成向量。而數據框要當成數組使用,所以訪問元素使用下標要更好的。

d<-data.frame(list())這種方式組成數據框,也能看出其與list相同。而數據框一般是通過讀取文件和數據庫得到的。

使用方括號取值,不同級別才用[][]類型,例如list中的矩陣類。而相同級別的使用[x,y]這種。。數據框中直接p[1:2]取值,表明取1和2列。。類似于list.

8、因子是為了給向量進行分類,并將其存儲為級別的數據對象,

9、R語言類的意義:就是函數會根據數據類型的不同,做出不同的處理,例如summary()函數,自己就不用擔心數據類型。

10、read.table()得到的是數據框類型的r對象,

11、可以使用attributes()列出所有組件。而str()? mode()都是一種打印,而summary()打印的信息更詳細。 typeof()是查看數據類型。

12、R都是使用一種方法解出一種答案。

13、想得到函數help函數名不用加雙引號,但是如果是特殊字符或者一些保留字例如for那就要加上雙引號查詢了。

14、example(seq)這個就是給你一系列使用方法,而畫圖總example(persp)就是各種等高線圖。按回車鍵就是下一個圖片顯示。

15、谷歌搜索技巧:filetype:R? permutations -rebol? 表示搜索文件類型是R的語言腳本,并且排除rebol類型。

16、自動補齊,能看出來。20位加上1:2就是自動補齊。? 向量化就是函數對每個元素應用函數。 查找向量的一部分。

本來R中可以不定義就使用,但是涉及到部分成員,那是不行的,y[1]=5就不對,必須y<-vector(length=2)然后賦值。y[1]? y[2]? ?即可。等效于y<-c()

17、R語言中運算符都是一個函數,所以可以做向量式運算的。

18、很重要向量的取部分使用的索引:? 向量索引:? 向量1 [向量2]? 返回的是向量1中索引為向量2的那些值。 下標可以重復使用,符號代表刪除

19、符號:也可以創造向量的!!! 冒號比加減更有優先級。輸入?syntax就可以顯示出符號優先級。? seq也可以創建向量。但是seq還有個用途就是參數非空的時候,seq(x)與1:length(x)等效。即使x<-c(5,11,9)都可以得到的是:seq(x)是1,2,3

20、req()函數同樣可以生成一個向量。

21、any() all()函數都是判斷邏輯值的。

22、round函數是四舍五入。

23、sapply()函數是對向量使用,然后返回矩陣類型。

24、在函數中加上na.rm=TRUE就可以將na無效值給刪除掉。

25、%%求余運算。 NULL是什么都沒有,而NA是會一直存在,只是表達無效而已。所以a<-NULL 時候a<-c(a, 1)這種是會不顯示NULL的,但是NA的話還是會在的為NA,1

26、z[z*z<8]表示的是索引為布爾值向量。所以可用有效。

27、向量x中所有大于3的值替換為0那么一行就可以x[x>3]<-0

28、subset的刪選可以去掉NA,? subset(x, x>5)

29、which(z*z>8)返回的是下標組成的向量。當然也是根據布爾向量判斷出來的下標。

30、就是看著的ifelse(b,u,v)同樣是對b,u,v這三個向量中每個元素進行的判斷!!!!

31、判斷兩個向量是否相等,使用==是對每個元素判斷,這樣不好。而all()? identical()函數則是完全判斷成一個結果。但是identical有點太謹慎,同樣值是1一個整數,一個浮點數,雖然值都是1也不行。

32、name()函數是查看名字或者命名,而name(x)<-NULL則是去除名字。

32、注意,R語言是可以比c語言少for循環的,因為其可以向量化的特征,所以很容易從向量集中得出某些特征的值。但是如果涉及到重新排序的類似操作,那么必須得有個新的向量被定義出來使用,原向量只是操作對象。例如找到每個單詞的出現次數,就是將單詞作為標簽創建一個新的list即可,然后在此基礎上還能排列詞頻順序,使用order返回的是對應的索引值!!這樣就簡化多了,因為將order結果直接用于向量索引就是新的向量或者鏈表

33、還有,由于數據框要比list約束多,當然數據框是隸屬于list的,所以數據框可以使用list的訪問方式訪問數據框,但是list卻不能使用數據框的矩陣訪問方式。因為數據框就是比list多出一個矩陣結構。

34、subset函數里面是有兩個參數的,第一個是數據集,第二個是判斷條件,而平常是將判斷條件產生的布爾向量當成索引的,但是為了防止NA的破壞,所以使用subset自動刪除NA

35、complete.cases是對數據框中的行進行NA判斷產生布爾值的。可以用于刪除NA的索引。

36、對于數據框可以使用rbind和cbind.但是添加的長度要符合原數據框。添加也可以直接list$a<-就算是添加了。多用于類似矩陣的數據框添加新列等操作。

37、前面提到apply一般是用于向量的,因為向量的類型相同,而apply也可以用于數據框,只是要求數據框內容要完全類型相同,例如對于數據進行mean計算。apply(frame, 1, hanshu)表示對每一行進行hanshu操作。

38、一般來說,數據框的數據處理,是想使用因子的,而list的使用是不想使用因子,如果read的字符串不想當成因子,那么使用stringisfactor=TRUE,true表示不當成因子這個有點相反的意思。,

39、merge()用于合并有相同列名稱的兩個數據框,還有by.x? by.y兩個參數,用于指定合并數據框中值相同但是名稱不同的情況。這樣就可以按照指定來合并了。merge(a,b, by.x=行數,by.y=行數)

40、判斷數據框中每個記錄行是否有相同的長度,使用count.fields("數據集", sep=",") 就可以得到每個記錄行的長度,然后使用all判斷上述結果向量是否全部大于某個值。。

41、如果對數據框使用lapply那么就是用于數據框的每個列!!!并且返回值成了列!!!

42、當你想按照某個列的值排序并保持數據框中的變量關系不變,例如一個人的年齡還是這個人的年齡,不會變錯位。那么就要使用因子了,所以因子適用于數據框是有原因的。。

43、因子對應的是統計學中的名義變量或者分類變量。,本質不是數字,

44、因子可以看成是包含了更多信息的向量。更多的信息一般是指不同的level.? 可以使用factor函數將向量變為一組因子。例如x<-c(5,12,3,12)得到的因子是3個level。cf<-factor(x)cf只有三個level但是length(cf)顯示的是實際數據長度不是因子的level長度

45、因子向量,首先包含的是數據,只是根據數據,然后進行的因子分類,所以包含的數據就是數據,只是factor因子化后多包涵了特性,levels而已。所以在給因子向量添加levels時候,是不顯示在數據中的。直到添加真正數據,而一旦成因子再添加不存在的level的數據就會報警告被識別成NA。所以需要加入新的level,而加入新的level看著好像是加入數據,其實是level,雖然他們的值相等。加入level為:newf<-factor(原向量, levels=c(a,b,c))像這樣加入新的level值,才能用newf[3]<-數據。 這種給值改數據。

46、即使是向量你認為只有20這么長,但是使用f[21]<-數據? ?那么就可以得到數據的增長。沒有問題的,前提是有個f已經存在了。那么輸入f[23]的數據,此時22處的數據就默認是NA了。長度是23.

47、tapply(x, f, g)用于針對某個因子對某個數據集合進行某種函數的操作,所以可以看到是三個元素。數據集合(數據框中的一組向量!!!不能是數據框本身,例如對工資統計平均值。只能是工資數據。因子為年齡和性別兩個即可。),因子列表,函數g

其中x的向量的元素個數要與f因子向量的元素個數相同。因為按照因子向量分配的,不能x樣本中有逃離在f因子level之外的吧。當然因子可以是兩個因子。使用list(因子1,因子2)

tapply的核心是將數據按照因子分成不同的數據組,然后對每組使用指定函數。

并且f這個值可以是list例如:list(c(1,2,3),c(a,b,c))就是說按照兩種因子進行分類,就類似與按照年齡和性別分別對工資歸類。!!并不是單純地當成123abc? 這樣6個等效的向量。是兩個分類標準因子

48、而split是只做tapply的分組步驟,就是分類使用的。但是split(x,f)中x可以是數據框。split返回的值是列表類型。因為tapply是使用函數計算,所以返回的是值。

49、排列文本,那么使用split(1:length(x), x) x是一個列表時候,即將順序數字按照x的因子類型分類,這樣就將txt文本內容按照相同值將其位置歸納到結果的同一個list元素中了。

50、將數據框數據變為向量來處理,為:ee<-as.matrix(x)? dd<-as.vector(ee)即可。

51、by函數與tapply函數是類似的,區別在于by函數的x可以是任何類型,不再是一個向量的約束了。

52、lm()函數是組線性liner model 就是這種線性擬合的,對兩列值得出線性表達式的參數值。例如:lm(a~b)? 就是對a=kb+c進行擬合。

53、table函數適用于統計:將每個向量都當成因子向量來分別分類,然后做成矩陣圖表示發生的次數。例如:f<-list(c(1,2,3), c(a,b,c))。 table(f)表示的是把f當成因子向量進行統計,得出一個3*3統計次數的矩陣。主要用于統計發生次數。例如既是1又是a的次數1.? 當然table的參數可以是數據框,畢竟list與數據框都類似。統計的類型都是單個人以行統計,就是一行是一個人的所有信息,而統計的是按照所有信息分類的人數之和。

54、說的表就是有table函數生成的,由于table函數是生成的數字,所以表就是數據矩陣或者數組,當然可以用矩陣方法提取子表了。

55、對于一個向量也可以使用table函數,將其轉換為表。而tabdom(表, 個數)? 表示找出表格中頻數最高的幾位。

56、cut用于生成因子,cut(x, b, labels=FALSE)? 表示x是數據向量。b是范圍集合。產生結果:表示x的值落在哪個區間。這些數結果組成的向量。

?

?

?

1、編程結構:

1、循環:

for(i in x)表示的意思是循環會對x向量中的每個元素進行一次迭代。i會取遍 x[1]? x[2]等

R語言中沒有分號,就是一行一個計算。但是有大括號。 也有while repeat break都可以使用。repeat{ i<i+4? ? ? ? ? ?if(i>10) break}

當然有自己獨特的next .用于類似continue,就是此次for循環next下面的后面的都不再執行重新下一次for循環。

2、scan()函數中填入文件名。只能填入文件名字。

3、但是很明顯,R不支持非向量集合的循環,但是有些間接方法。例如lapply可以對每個列進行。

get函數,get接受的參數是非向量集合組成的字符串參數,例如get(c("fei1","fei2"))

4、if else即使只有一句話,也要寫大括號,而且判斷語句只能是邏輯值不能是邏輯向量!!!!

5、標量的邏輯與 或? ? ?向量的邏輯與 或? 是不同的,前者是雙個&&,或者是單個。且結果前者是值后者是向量。

6、返回值有多個的情況,可以將結果加在list中返回。

7、t<-function(x) return (x^2)??

? ? return t

這個返回值就是返回一個函數。。。所以返回值類型有好多的。

8、函數都是對象。 而函數范圍很廣,{都可以看成函數,,作用是將幾個句子組織成一個單元。函數定義的兩個參數可以銅鼓formals()和body函數得到,第一個得到參數,第二個得到函數體。g<-function(x){}? ?那么就是formals(g)? ?body(g)

9、當要查看的函數之類很長時候可以使用page(abline)使用頁看。

10、改變函數主體使用body(g)<-quote(2*x+3)如果少了quote這種帶call性質的引用,那么就會出現g直接是一個值而不是一個函數。。

11、ls()函數會打印出目前環境下所有的變量,對象。還有ls.str()表示目前環境下對象的詳細內容。

12、找函數的運行范圍,是從近處開始,然后往外圍上層找。

13、print(ls (envir=parent.frame(n=1)))? 表示為當前環境網上升一級。

14、與c語言一樣,函數不會修改非局部變量。總是拷貝一份然后執行。原來的并不改變。只有superassignment opertator這個超賦值運算符才可以。<<-? 和assign()才能在局部變量處對非局部變量進行修改。但是<<-和assign只是標識要對調用上一層進行賦值并不是一定到最頂層!!!

15、showframe()就是函數帶一個參數,代表調試時候想看上幾級的變量內容,里面數字是幾就是往上幾層的框架 數目。showframe()其實就是調用的parent.frame()這個函數,而且,ls(envir=env)表示指定特定的層次的調用。

16、R中沒有指針體現在x<-c(3,2,4)那么執行sort(x)后出現的是一個值但是并沒有改變x的值,x仍然是原值,但是python就可以改變。。。只能重新給x賦值為:x<sort(x)? ?如果輸出包含很多變量,那么怎么辦呢?只能用list來做變量,然后傳輸list即可

17、一個函數中定義f<-function(u){u<<-u*2}

那么當x<-2? f(x)時候只是將x這個值傳進去,當然計算的是u=4并不是x=4.所以不論傳進去的是什么,都是一個值,不是一個變量!!!!!然后會在調用f的上層環境中多出一個u=4的值,而不是變量x。

18、再次強調x[-1]出現負號表示的是將第幾個值扔掉!!!!

所以quicksort自己用R編程,當然可以直接用sort就是快排。

qs<-function(x){

if(length(x)<=1) return ( x)? ? ? ? ? ? ? ?注意同樣是相等用==兩個等號這種來判斷!!!!

19、是挺厲害的,可以自己定義類,然后類內部自己重新定義常規的"[."和"[<-"這兩個操作。是"[.newclass"<-function(){}操作和 "[<-.newclass"<-function(){}。

20、將自己的文本后綴是.R 的代碼加入是:source(xxx.R)即可。? 如果想單純修改下已經在環境中的f1()函數,或許edit(f1)會單獨有個框修改,不影響目前。或者想拷貝一份再修改,那么更要用edit為:f1<-edit(f2)即可。

21、創建自己的二元運算符,例如:? ?"%a2b%"<-function(a,b) return (a+2*b)

那么就可以使用:3? %a2b%? 5 結果是:13

22、f<-function(x) return(x+2)? ?這個過程是先定義一個函數,function定義的,然后把這個函數賦值給f,注意f叫做函數名,而return(x+2)并不是返回給f,而是將function(x) return(x+2)整個無名稱函數給了f,這樣自己使用時候用f(2)這樣就是調用f函數名。而在apply函數中直接調用function(x) return(x+2)例如:apply(x, 1, function(x)return(x+2))就是匿名函數的用法。而apply(x, 1,f)就是非匿名函數的用法。因為apply的第三個參數必須是函數,所以使用匿名或者有名的都行。其實function(x) return (x+2)有沒有return都一樣的,因為僅僅一個表達式就能返回,自帶返回函數。所以不帶return就行,并且賦予f的是一個函數,并不是x+2而是整個函數形式。即function(x) x+2 才是完全的f.

?

一、數學運算和模擬

1、exp()是以e為底的指數函數。 log()自然對數。log10()以10為底的對數,sqrt()平方根函數? abs()絕對值。sin? cos

min() max()? which.min()? which.max()表示最大最小的位置索引。pmax() pmin()比較所有等長向量中位置在k處的最大值或者最小值。sum()? prod()是求向量和和求向量積。cumsum() cumprod()表示對一個向量前k個元素進行求和和求積,是分別計算k從1到length(x)的方法.例如x向量有10個元素,那么給出10個結果。。round() floor() ceiling()分別是四舍五入, 向上取整,向下取整。 factorial()是階乘。

在求向量的最小最大值后,還有nlm()? ?optim()來得到函數的最小值和最大值。但是需要給函數先設定一個初始值,這樣nlm或者optim才可以進行收斂得到。

微分積分:

derivative 和integrate()

D(expression(exp(x^2)),"x")? 表示是e的x^2次方進行對x進行求導。即表達式和求導對象

integrate(function(x) x^2, 0, 1)? //默認是對x進行求積分。表示對x^2這個表達式進行從0到1的積分。

上述兩者區別是式子分別用expression和function表達。

?

其中R的odesolve包提供處理微積分函數,而ryacas包提供了R與yacas符號系統的接口

2、統計分布函數

函數名有一套統一的前綴名字。

d表示概率密度函數

p對應累計分布函數

q代表分布的分位數。

r是隨機數生成函數

然后常規分布函數名稱: norm()正態分布, chisq()卡方分布 , binom()二項分布

上面的四個前綴都可以與這些分布函數名字隨機組合

模擬生成1000個自由度為2的卡方隨機變量,再求其平均值

mean(rchisq(1000,df=2))? ?

這個rchisq表示從卡方隨機分布中隨機生成1000個數,這些帶有前綴R打頭的分布函數第一個參數是個數,后面就是自己所屬的分布族自身帶有的參數了。例如df是卡方分布的參數表示自由度。?

想查詢使用? ? ? ? ? ? ? ? ? ? ?rchisq即可。

3、sort()排序但是不改變原值。order()

對數據框進行排序,是:order(list&one)然后將得到的位置當成行位置指導 list[order(list&one),]表示的就是以one列進行的排序方式將每一行重新排序。

rank()還能得到每個元素的排序大小,表示按照從小到大在整個向量中處于第幾位。而同樣大小的,分列3,4位,那么結果就是分別排位值為3.5都是相等的。

4、向量和矩陣的線性代數運算

普通向量與標量相乘是*即可。但是如果想計算兩個向量的內積。使用crossprod(x, y)函數即可。

矩陣乘法是:%*%而不是*

solve()函數求解線性方程,即將線性方程先用矩陣將其表示出來,然后solve(x,y) x表示等號左邊。y表示右邊值。而只加入一個參數的solve是用于求解矩陣的逆矩陣。

關于矩陣的計算還有很多函數,但是自己已經忘記了好多。t() qr()? chol()? det()? eign()? diag()//該函數有兩用性 sweep()?

其中擴展的示例:向量的叉積。則很好。行列式是一個與矩陣類型相關的函數,所以說行列式是用一個復雜函數計算得到一個值的過程。記住三維的行列式計算就可以了。其實是個迭代的過程,-1的k次方再乘以子矩陣的行列式det(子行列式)

只有方陣才有特征值,和特征向量,要不然不能匹配個數:特征空間包含所有的特征值。雖然說的是矩陣,但是核心是拉縮向量,但是特征值和特征向量就是從矩陣得到的,雖然叫矩陣的特征值特征向量其實這兩個值就是為了總結矩陣的。

Ax=入x? 其中入是一個數值,x是一個向量,列類型,那么為了元素個數匹配,那么只能A為方陣與x相乘,然后得到一列值。

矩陣乘以向量的作用就是對向量進行的一個拉伸或者扭轉的結果。。是以向量為核心的,這才是矩陣的意義(例如矩陣乘以一個向量后變成另一個向量。)。而特征值和特征向量是找出能讓該矩陣只拉伸的向量(就是特征向量),且其拉伸程度!!!!程度就是特征值,。一個矩陣的一組特征向量是一組正交向量(什么是正交向量),正交向量是指兩兩正交。而正交是向量相互垂直,判斷方法是:

?

向量的內積也叫點積意義是:正交是內積。不是叉積。正交表示兩個向量垂直。

向量的叉積:就是使用行列式方法的乘積。兩個三維向量的叉積結果是新的三維向量

?

5、集合運算。

求并集union()? intersect表示交集。setdiff()表示差集,誰在前表示以誰為主,在前面參數中不在后面參數中。setequal(x,y) 檢測集合x和y是否相等。

c %in% y? 不是函數,是判斷元素c是否在y中,返回一個布爾變量結果。

自己定義函數時候,長名字使用雙引號添加!!!"長名字"<-

combn()函數用于一個向量產生指定個數的所有向量集合,產生的結果是按列組成的矩陣。combn(1:3, 2)? 也可以指定一個函數對于得出的子向量集合進行操作。combn(x, 2, sum)對每個結果進行求和。

6、x<-rbinom(10000,5,0.5)即一個二項分布(n次獨立實驗),每次結果只有兩種可能,并且產生的是x值是每5次結果中正面朝上的次數。。所以找到x向量中大于4的次數。求平均值就是硬幣四次都是朝上的概率。函數生成的是隨機變量結果集合。

雖然好多概率可以用公式計算,但是R還可以模擬,做百萬次模擬得到結果。這個很厲害的。

一、類

1、R中從數字,字符串,矩陣都是對象,是類的實例化。R支持封裝(是把數據封裝為一個類實例。),多態,繼承。

S3是原始的類結構。一個s3類是包含一個list并且有類名屬性,和dispatch調度(調度功能使泛型函數成為可能)。什么是泛型函數?就是含有多態的函數都叫做泛型函數。

例如print()函數。如果識別出來對象是lm類型類,那么調用的實際是print.lm()函數。

unclass(函數)是表明,去除函數的類聲明,顯示出核心輸出部分,手冊看的更清晰一些。

methods()里面放泛型函數可以顯示出來真實包含的所有實現方法,例如print可以顯示n多,print.acf* ....等。但是對于print.aspell*這種帶星號的是不能顯示出來的,即只能使用aspell讓系統默認調用print.aspell但是如果自己顯式調用的話,print.aspell會報錯找不到,那么就只能使用getAnywhere(print.aspell)找到。

?

讀寫:

scan是只識別空白符號,而且只能識別為數字或者字符二選一。所以這些限制著不能讀成數據框形式。

read.table卻是可以讀成數據框形式,要變矩陣使用as.matrix變化。或者使用scan讀成向量再把向量切割成matrix。

read.table一定是可以根據空格和回車來識別文件。

c<-file("1.txt","r")

readLines(c, n=1)注意,是遇到EOF停止,但是可以讀取空的行,并不會忽略空的行。

close(c)表示關閉。

人口普查,可以提取某個數據量組成數據框。很方便。

提取字符串方法:substr(s, 起始數字,結束數字)然后再使用as.integer(sbustr())結果,表示是數值。

都到這時候了list還不清楚?list(gender=c(1,2),age=c(15,16))然后names(list)

1、還是要實踐,例如矩陣,數據框類型就可以rbind? cbind等函數,而向量,list只能使用list$xx? <-數 或者 NULL? ?等函數。而且list的索引是數字或者[[加引號的名字]]? 而由于向量是連續的!!!所以不能使用添加刪除,只能 重造,c<-c(c[3:4],xxx,c[5:6])這種。

所以制作數據時候,先定義數據類型再使用d<-data.frame()然后d<-rbind(d, listxxx)才行,只要保證list的個數是相同的即可。不能d<-rbind(list1,list2)這樣不首先對d定義,得到的d沒有作用。。因為list不能使用rbind.

2、新建時候,list使用? ? ? ? ? l<-vector(mode="list", length=5)表明是5個長度的list。使用時候,for (i in 1:5)? ? ? ? list[[i]]<-socketconnection()

同樣,寫入文件,使用數據框操作或者矩陣操作,就用write.table(data.frame, "文件名")即可,如果寫入矩陣那么就是需要:人為去掉矩陣的行列的頭。 write.table("data.frame", "wenjianming", row.names=FALSE, col.names=FALSE)? ?而且stringAsFactors=FALSE是大寫波浪式的。

writeLines(xxx, c)同樣是內容和connection. 并且connection建立時候使用"w"然后使用close(c)關閉connection。

?

對文件的操作:file.info()這種可以顯示文件的大小,創建時間,是否為目錄等。

dir()返回一個字符向量。列出第一個參數指定目錄下的所有文件名稱。使用getwd就可以看見目錄,然后加入dir中即可。如果里面加入recursive =TRUE那么就會出現整個目錄樹。

不希望scan()輸出讀的個數加上quiet=TRUE.

與網絡連接同樣需要使用socket連接。

?

一、

字符串操作:

grep("pattern" , 向量) 返回的是向量中能匹配pattern的索引。? nchar("字符串")返回字符串長度,注意R字符串長度沒有最后結束符。past是粘貼起來幾個字符串。s<-sprintf("xxx%d is %d\n", i,i*2)這種是按照格式輸出到s中。substr(x,? 起始位置, 終結位置)。strsplit(x ,split="-")使用字符串中已有的-來分割。regexpr("pattern", text)返回pattern在text中的起始字符第一次匹配起始字符位置。而gregexpr()與regexpr很像是返回所有匹配字符開始位置,前者是只返回第一個起始字符位置。。

grep("c.e","acxecue")像這樣,只會將后面引號中當成一個向量元素,返回的也是一直是這個向量元素位置,有了就只能是1沒有就是0。是以向量為單位的。

grep("pattern", xxx)這種正則表達式使用方法,當pattern是[au]時候表示字符串中有a或者u的。? pattern? c.e其中.表示任意一個字符。c..e表示中間有兩個任意字符。

如果想查找.句號本身,那么使用"\\."因為反斜杠自身也是元字符屬性。

strsplit(向量,? ?"."? , fixed=TRUE)帶上fixed=TRUE表示的是不把.當成正則表達式。看來正則表達式是默認生效不僅是在grep這個查找中生效。當然效果與使用 \\.是一樣的。

當然還有個問題:paste("a", "b")是有空格的所以如果使用paste產生名字變化的pdf文件,那么會出現空格,在paste中多用seq=""來控制無空格。

另一種方法是使用sprintf()函數。只是注意,使用浮點類型時候,%g去掉了數值的多余的0.

一、繪圖

最基本的plot

plot(c(),c())表示的分別是x,y軸的值組成的點。這是最簡單的圓點。開始逐步加入復雜的修飾。

point character=pch 值表示不同的點形狀。

plot函數是分階段執行的,所以可以加入坐標。plot(c(-3,3),c(-3,3),type="n", xlab="x", ylab="y")

該命令只是添加坐標軸。必須xy軸坐標相同,并且這個type是n決定了不畫點只畫畫布。這個自己寫錯了,是c(a,b)不是c(a:b)代表的是如果有type=n就是只畫圖的范圍。這樣就不會再提示不匹配了。當然無type=n是當成點的,并且n y x這些等號后面的值都要加雙引號。

添加線條:abline()? 這個函數里面是一個線例如lm(y~x)結果。按道理abline()參數是截距和斜率。但是如果判斷出來是回歸線,那么會將回歸線的斜率截距提取出畫圖的。一般abline會將結果加在目前的plot圖中。

lines()由于已經確定是直線,所以使用兩個點向量參數(內部是x,y值)作為參數即可畫出線。但是如果不想要點,只要線,那么加上type="1"

目前只能在圖上加線,但是一旦重新加點plot調用就更新畫布了。。。。

新增個窗口:windows()? x11()

畫兩條線的確實是先用plot然后用lines。或者abline()此時需要注意先畫范圍比較廣的圖線,然后把小圖加上,這樣才不會超范圍。

有增加點的,!!!points(c(),c(), pch="+") 就是添加points,添加前兩個指定向量對 的。

使用text((x,y),"name")例如加標簽,指定位置x,y然后加上名字。legend()加圖片,可以輸入quit來停止顯示。

locator(1)locator(2)分別可以顯示出自己鼠標點的坐標點值。2表示可以得到兩個點擊的坐標值。并且不用復制,只用text(locator(1),"wenzi")這樣點擊就能填上文字。

plot(c(-3,3),c(-2, 3))這個操作既畫點也畫坐標軸。自己的圖發現已經不能再大了,所以需要定制圖了。

也說了,想撤銷最好用source(.R)方法。

定制方法:

cex=1.5這個參數可以放在text或者plot任何畫圖的命令中當參數。。坐標軸更長同樣在命令中使用參數:ylim=c(0,90000)表示起始范圍。

curve可以繪制函數中一段內容。在現有的圖中想添加,那么使用curve的參數中加入add=T

確實兩次調用就顯示顏色重了,但是自己想專門放大。怎么辦?抄人家的源代碼

?

保存:dev.list()可以看到有幾個設備。一般是一個畫圖的,一個標準命令的。然后顯示dev.cur()看活動的是哪個。想保存誰,就dev.set(n)是設定激活目的窗口。然后dev.copy(n)就是將現在活的屏幕內容拷貝到括號內的設備中,然后關閉設備dev.off(n)關閉對應的才可以真正寫入。

?

三維圖:persp ,wireframe() cloud().

?

調試的時候,使用stopifnot(x>0) 與assert很像。print確實使人很煩,R包含了基本調試工具,確實,輸入debug(hanshumingchneng)就出現了下次調用hanshumingcheng時候自動跳到browser這個debug環境中。還有一種是,不想函數開始就調試,而是函數大概位置,開始插入browse()這樣,到了就debug,函數結束停止。兩種調試方法。還有改進debug方法,就是因為每次debug完了還要undebug,很麻煩,使用debugonce()

Q是退出,然后n是在browser下與gdb一個命令。c是退出循環或者到下一個暫停點,暫停點是browse位置。并且可以browser(x>0)表示大于0是才進入調試。還有一個即使 正在調試,不用退出加break而是setBreakpoint(x.R , 28)表示對哪個文件第28行加斷點,此處加斷點是進入browser模式調試的。。

不想要斷點了,就看在哪個函數中,然后untrace(那個函數)。

當已經崩潰的時候,可以調用traceback()函數,然后看看卡死在哪。

當有n與命令重復,那么使用print(n)來打印n的內容。

使用save保存注意要輸入save(xx, file="xx")??

定義函數的時候不用加括號,只是調用的時候加上參數即可。

注意每次edit編輯的時候前面一定要加上目的函數,然后最后將函數再次執行save,保存到文件中,因為edit是編輯的內存中的,編輯完并沒有保存,只有賦值給自己定義的名稱才有效!!!!!!!

?

?

?

總結

以上是生活随笔為你收集整理的R语言基本知识的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

在线岛国av | 成人网页在线免费观看 | 欧美污污网站 | 国产精品普通话 | 亚洲国产成人高清精品 | 免费男女羞羞的视频网站中文字幕 | 国产自偷自拍 | 中文字幕视频观看 | 九九九热精品免费视频观看 | 国产精品九九九九九九 | 亚洲精品视频 | 黄色看片 | 最新av在线网站 | 久久国产精品免费一区 | 高潮毛片无遮挡高清免费 | 超碰在线97观看 | 一区二区三区精品在线视频 | 天天操天天色天天射 | 日韩特级黄色片 | 韩国精品一区二区三区六区色诱 | 亚洲一区 影院 | 亚洲精品国偷拍自产在线观看蜜桃 | 久久乐九色婷婷综合色狠狠182 | 中文字幕久久精品亚洲乱码 | 黄色在线观看网站 | 国产日产精品一区二区三区四区 | 2019中文字幕第一页 | 日日操天天操狠狠操 | 久久99精品久久久久久久久久久久 | 日韩欧美精品在线视频 | 91福利区一区二区三区 | 色99中文字幕 | 久久色在线观看 | 丁香五婷| 丁香影院在线 | 999视频在线播放 | 黄污视频大全 | japanesexxxxfreehd乱熟| 国产精品高潮久久av | 一级黄色在线免费观看 | 国产一线二线三线在线观看 | 亚洲成a人片77777潘金莲 | 91传媒视频在线观看 | 成人一级在线观看 | 成人啪啪18免费游戏链接 | 久久综合激情 | 久久综合狠狠综合久久激情 | 日韩电影中文字幕在线 | 成人在线播放网站 | 欧美精品一区在线发布 | 亚洲aⅴ免费在线观看 | 精品久久久久国产免费第一页 | 国产精品手机在线播放 | www.xxxx欧美 | 日日夜夜骑 | 天天爽天天射 | 亚洲最大色 | 国产精品第一页在线 | 国产精品手机在线 | 亚洲精品乱码久久久久久高潮 | 亚洲第一区在线播放 | 日日夜夜人人天天 | 日本黄色免费网站 | 999视频精品 | 天堂av免费观看 | 在线看国产日韩 | 国产精品综合久久久久 | 在线 国产一区 | 日本午夜免费福利视频 | 日韩欧美国产视频 | 欧美日韩一区二区久久 | 激情五月婷婷综合 | 国产女人免费看a级丨片 | 午夜精品久久久久久久久久久 | 免费观看av网站 | 五月天伊人| 婷婷av网站 | 91丨九色丨国产女 | 日韩黄色av网站 | 日韩精品免费一线在线观看 | 在线观看黄色免费视频 | 久久免费看av | 高清色免费 | 天天射天天干天天操 | 成人午夜片av在线看 | 国产精品国产三级在线专区 | 欧美日韩一区二区三区视频 | 天天草网站| 亚洲成人精品在线观看 | 免费高清在线一区 | 国产视频久久 | 国产精品理论在线观看 | www.99热精品| 99亚洲精品 | 欧美性粗大hdvideo | 精品国产福利在线 | 麻豆91精品视频 | 精品免费视频 | 久久精品区 | 亚洲三级黄色 | 久久激情五月丁香伊人 | 九九久久成人 | 成人久久久电影 | 亚洲精品资源在线观看 | 99国产精品久久久久老师 | 免费三及片 | 西西人体www444 | www.人人草 | 在线视频日韩一区 | 亚洲国产精品视频在线观看 | 在线观看www. | 精品在线免费观看 | 国产一二三四在线观看视频 | 国产经典三级 | 久久99精品国产麻豆婷婷 | 一区二三国产 | 最新在线你懂的 | 免费观看一级特黄欧美大片 | 欧美日韩激情网 | 亚洲专区在线视频 | 九九九九色 | 免费黄色小网站 | 国产群p视频 | 在线观看你懂的网站 | 色婷婷激情五月 | 国产午夜小视频 | 九九视频在线 | 欧美视频网址 | 99久久久成人国产精品 | 在线观看中文字幕dvd播放 | a电影免费看 | 欧洲精品一区二区 | 在线观看视频精品 | 免费日韩一区二区三区 | 国产一级片在线播放 | 免费亚洲成人 | 91tv国产成人福利 | 免费亚洲黄色 | 久久精品www人人爽人人 | 久久免费视频3 | 伊人www22综合色 | 久久久久亚洲精品成人网小说 | 91完整版在线观看 | 国产精品免费久久久久影院仙踪林 | 狠狠色丁香婷婷综合久久片 | 2000xxx影视| 中文字幕精品三级久久久 | 久久国产精品视频观看 | av在线播放不卡 | 中文字幕日韩免费视频 | 五月综合在线观看 | 国产成人av福利 | 日日干美女 | 成年人在线观看视频免费 | 天天操夜夜操天天射 | 黄色一级片视频 | 日韩av在线一区二区 | 日韩在线视频观看 | 国产资源精品 | 91麻豆看国产在线紧急地址 | 久久av网址 | 国产成人777777 | 中文字幕乱在线伦视频中文字幕乱码在线 | 91麻豆看国产在线紧急地址 | 日本高清dvd| 97看片网| 亚洲激情在线播放 | 成人免费一区二区三区在线观看 | 久久久久日本精品一区二区三区 | 日韩久久一区二区 | 成人福利在线播放 | 日韩毛片在线播放 | 中文字幕中文字幕中文字幕 | 六月婷婷久香在线视频 | 国产精品久久久久av免费 | 国产成人亚洲在线观看 | 色爱成人网 | 国产香蕉视频在线播放 | 久久人人添人人爽添人人88v | 国产伦理精品一区二区 | 国产精品毛片一区二区 | 精品久久一区二区 | 久久97久久97精品免视看 | 精品国产免费看 | 特级黄色片免费看 | 久久久精品一区二区三区 | 91视频在线免费下载 | 亚洲在线观看av | 99色在线观看 | 日本久久久久久久久久久 | www.黄色片.com| 99综合视频 | 久久久久国产一区二区三区 | 九九免费在线看完整版 | 美女av在线免费 | 国产免费观看av | 久久综合久久综合久久 | 亚洲精品视频在线观看视频 | 日韩欧美综合在线视频 | www色婷婷com | 香蕉97视频观看在线观看 | 久久久久久久久艹 | 人操人| 国产精品永久 | 国产精品18久久久久久久久久久久 | 2020天天干天天操 | 骄小bbw搡bbbb揉bbbb | 在线观看日韩av | 又色又爽又黄高潮的免费视频 | 一区二区三区免费看 | 美女免费视频黄 | 欧美日韩久久不卡 | 91视频久久 | 就要色综合 | 高潮久久久久久 | 国产色婷婷精品综合在线手机播放 | 久久国产精品免费一区二区三区 | 色视频在线观看 | 人人爽人人香蕉 | 又爽又黄又无遮挡网站动态图 | 综合久久五月天 | 国产精品久久久久久久久免费 | 最新av在线网站 | 久久久久欧美精品999 | av看片在线| 九九视频热 | 久久综合影视 | 国产成年人av | 91日韩精品一区 | 精品久久久久国产免费第一页 | 久久99精品视频 | 国产中文字幕av | 91黄色免费看 | 99产精品成人啪免费网站 | 天天色 天天 | 国产精品av免费在线观看 | 波多野结衣视频一区 | www.色婷婷.com| 国产精品久久久久一区二区三区 | 色999视频 | 亚洲禁18久人片 | 亚洲精品18日本一区app | 一级黄色大片 | 奇米影视四色8888 | 国产欧美日韩视频 | 中文字幕av全部资源www中文字幕在线观看 | 色爱区综合激月婷婷 | 中日韩免费视频 | 99精品热视频只有精品10 | 精品国产伦一区二区三区观看说明 | 久久亚洲综合国产精品99麻豆的功能介绍 | 黄色成人毛片 | 免费看片网页 | 国产99久久久国产精品成人免费 | 日本少妇久久久 | 波多野结衣视频一区二区 | 91精品国产欧美一区二区成人 | 欧美日韩精品电影 | 久久国产精品一国产精品 | 在线观看视频免费播放 | 亚洲另类久久 | 久久一区国产 | 在线观看黄 | 69国产盗摄一区二区三区五区 | 在线国产福利 | 成年人黄色av | 中文字幕在线视频第一页 | 欧美日韩一区二区三区不卡 | 伊人电影在线观看 | 欧美成人视 | 欧美一进一出抽搐大尺度视频 | 国产在线视频在线观看 | 久久精品视频网站 | 日韩中文字幕免费视频 | 天天操天天操天天 | 天天干天天射天天爽 | 四虎伊人| 亚洲高清在线观看视频 | 成人va天堂 | 激情丁香综合五月 | 欧美日韩国产高清视频 | 成人久久电影 | 免费黄色一区 | 欧美日韩国产三级 | 色婷婷综合五月 | 国产精品免费一区二区 | 久久精品直播 | 夜夜夜| 久久伊人操 | 中文字幕视频播放 | 欧美精品久久久久久久久久 | 国产高清视频免费最新在线 | 91桃色视频| 国产精品不卡在线 | 新版资源中文在线观看 | 99在线视频免费观看 | 日日日日 | 91激情| 亚洲va欧美 | 日本少妇视频 | 一级免费看 | 国内精品久久久久久久久久久久 | 亚洲最新视频在线 | 在线观看视频亚洲 | 区一区二区三区中文字幕 | 免费观看av网站 | 久久久久久蜜桃一区二区 | a视频免费在线观看 | 97香蕉超级碰碰久久免费软件 | 久久久精品网 | 婷婷色在线视频 | 国产又黄又爽又猛视频日本 | 亚洲精品1区2区3区 超碰成人网 | 国语精品免费视频 | 国际精品久久 | 99re在线视频观看 | 欧洲精品亚洲精品 | 国产手机av | 国际精品久久 | 国产精品入口66mio女同 | 成人a在线观看高清电影 | 色综合天天干 | 亚洲va欧美va人人爽春色影视 | 一本一道久久a久久精品 | 在线视频app | 色综合 久久精品 | 992tv又爽又黄的免费视频 | 日日夜夜草 | 国产精品福利在线观看 | 免费看日韩片 | 亚洲一区精品二人人爽久久 | 亚洲欧美日韩精品一区二区 | 国产精品毛片一区视频 | 97在线观看免费 | 天天弄天天干 | 国产99在线免费 | 黄色电影小说 | 色网站免费在线观看 | 国产在线不卡视频 | 国产成人精品免高潮在线观看 | 久久电影国产免费久久电影 | 精品国产大片 | 亚洲天堂首页 | 久久久久久久久久久久久国产精品 | www视频在线免费观看 | 国产免费国产 | www.国产视频 | 欧美性天天 | 国产一级a毛片视频爆浆 | 天天天色综合 | 在线视频 你懂得 | 粉嫩av一区二区三区免费 | 日本中文不卡 | av福利在线免费观看 | 免费观看的黄色片 | 国产精品久久久视频 | 97精品超碰一区二区三区 | 亚洲区精品 | 天堂入口网站 | 亚洲综合日韩在线 | 久操视频在线播放 | 久久久亚洲麻豆日韩精品一区三区 | 97成人在线观看 | 久久精品99精品国产香蕉 | 久久最新| 国产一区二区三区免费视频 | 久久国产精品视频免费看 | 国产中文字幕在线 | 超碰97公开 | 亚洲一区二区精品在线 | 91免费看片黄 | 在线观看亚洲成人 | 8x8x在线观看视频 | 国产精品一区二区在线播放 | 91亚洲永久精品 | 91av原创 | 国产在线观看你懂的 | 91在线免费视频观看 | 免费在线观看黄色网 | 亚洲激情视频在线观看 | 天天爽夜夜爽精品视频婷婷 | 成人午夜网址 | 亚洲精品乱码白浆高清久久久久久 | 91av久久 | 操操日 | 香蕉久久国产 | 日韩精品一区二区三区第95 | 在线观看福利网站 | 国产精品午夜av | 中文字幕av免费 | 中文字幕在线影院 | 亚洲视频专区在线 | 久久草精品| 精品久久久久久亚洲综合网站 | 99国产精品久久久久老师 | 日韩综合色 | 国产精品第7页 | 91av欧美| 国产福利av在线 | 久久成人在线 | 免费黄色激情视频 | 99r在线精品| 日韩理论影院 | 在线成人欧美 | 国产香蕉97碰碰碰视频在线观看 | 99热在线观看免费 | 操操操人人人 | 成 人 黄 色 视频播放1 | 99人成在线观看视频 | 久久一区二区三区超碰国产精品 | 日日爽天天爽 | 国产在线精品福利 | 日韩色中色| 成人动态视频 | 爱av在线网 | 九九久久影院 | 午夜性盈盈 | 欧美日韩久 | 国产精品福利无圣光在线一区 | 最近日本中文字幕a | 久久久久久久久黄色 | av电影中文字幕在线观看 | 国产一二三区在线观看 | 4hu视频| 欧美精品亚州精品 | 在线观看麻豆av | 亚洲精品午夜国产va久久成人 | av免费网| 国产小视频你懂的在线 | 日韩天天干 | 国产亚洲精品日韩在线tv黄 | 欧美成年网站 | 超级碰碰视频 | 久久麻豆视频 | 国产视频一二区 | 欧美日韩激情视频8区 | 四川妇女搡bbbb搡bbbb搡 | 黄色在线观看网站 | 久久日本视频 | 在线观看国产一区二区 | 国产在线观看xxx | 日韩高清不卡在线 | 国产成人在线网站 | 黄色小网站在线 | 在线 视频 亚洲 | 欧美精品久久久久久久久免 | 黄色一级在线观看 | 99久久精品无免国产免费 | 成人国产精品久久久 | 国产精品国产亚洲精品看不卡15 | 99婷婷狠狠成为人免费视频 | 精品国产伦一区二区三区观看体验 | 夜夜骑日日操 | 欧美日韩中 | 国产精品久久久久久久久久了 | 国产五十路毛片 | 午夜视频在线观看一区二区 | 97超碰国产精品 | 日韩欧美区 | 一区二区高清在线 | 欧美日韩不卡在线视频 | 国产精品久久久久免费 | 免费在线观看的av网站 | 久久婷婷视频 | 久久久久亚洲天堂 | 国产国产人免费人成免费视频 | 免费黄a | 国产免费又爽又刺激在线观看 | 999国内精品永久免费视频 | 国产精品福利午夜在线观看 | 在线观看日本高清mv视频 | 中文字幕免费 | 久操久 | 久久艹艹 | 中文字幕一区二区三区四区视频 | 欧美乱码精品一区二区 | 国产高清视频 | 91香蕉国产在线观看软件 | 激情在线免费视频 | 中文字幕免费高 | 黄色软件在线观看 | 成人免费一区二区三区在线观看 | 精品国产伦一区二区三区免费 | 国产精品嫩草影院123 | 欧美日韩在线视频一区二区 | 国产一区二区在线视频观看 | 天天操网址 | 国产高清久久久 | 免费久久精品视频 | 国产精品a久久 | 免费看搞黄视频网站 | 国产一区不卡在线 | 精品999| 91精品国产成人 | 久久视频网 | 日本 在线 视频 中文 有码 | 手机色在线 | 黄色大片中国 | 在线看av网址 | 亚洲精品大片www | 日韩av免费观看网站 | 欧美一区二区视频97 | 色网站免费在线看 | 婷婷新五月 | www.天天操.com | 久av在线| 97成人精品视频在线播放 | aa级黄色大片| 一区二区三区电影在线播 | 久久久久久久久久久网 | 日韩黄色网络 | 91av色| 夜夜躁狠狠躁 | 9在线观看免费高清完整版在线观看明 | 天天操夜操 | 亚洲一区在线看 | 久草在线免费播放 | 久久久.com | 欧美一区二区三区不卡 | 亚洲香蕉视频 | 久草在线视频资源 | 成人黄色毛片视频 | 99久久99| 狠狠地日| 精品国产一区二区三区在线观看 | 欧美最爽乱淫视频播放 | 精品一区二区免费在线观看 | 国产va饥渴难耐女保洁员在线观看 | 亚洲黄色片在线 | 亚洲视屏 | 91污污| 黄色片毛片| 亚洲国产小视频在线观看 | 国产乱对白刺激视频不卡 | 欧美日韩网址 | 日韩成人免费在线 | 日日操日日干 | 中文字幕大全 | 国产精品综合在线 | www.人人草| 美女在线免费视频 | 欧美成人xxx | 婷婷六月中文字幕 | 欧美精品亚洲二区 | 午夜视频免费播放 | 午夜精品区| 日韩欧美一区二区在线观看 | 亚洲一本视频 | 激情综合色综合久久 | 一级c片 | 日本三级久久久 | 久久全国免费视频 | 亚洲另类在线视频 | 91在线亚洲 | 免费看黄色毛片 | 国产视频一区在线免费观看 | 色多多污污 | 午夜av免费观看 | 一本一本久久aa综合精品 | 日韩中文字幕在线看 | 久久精品91视频 | 成人黄色电影在线播放 | 丁香激情综合国产 | 香蕉91视频| 久久精品成人欧美大片古装 | 久久久久亚洲精品男人的天堂 | 日韩三级中文字幕 | 中文字幕资源网 国产 | 国产中文字幕91 | 日韩中午字幕 | 免费成人在线视频网站 | 在线观看国产永久免费视频 | 国产涩图| 久久免费试看 | 国产大陆亚洲精品国产 | 狠狠久久 | 国产精品免费大片视频 | 日韩一区二区三区高清免费看看 | 在线播放精品一区二区三区 | 在线观看第一页 | 成人精品视频久久久久 | 精壮的侍卫呻吟h | 中文av不卡 | 欧美一区二区三区在线观看 | 色偷偷中文字幕 | 天天操天天操一操 | 欧美日韩免费观看一区二区三区 | 免费av视屏| 婷婷色中文网 | 九九热免费在线观看 | 国产一区二区在线免费视频 | 久久久天天操 | 国产伦精品一区二区三区无广告 | 一区二区电影网 | 天堂网在线视频 | 国产伦精品一区二区三区四区视频 | 国产999精品 | 69久久夜色精品国产69 | 九九热在线观看视频 | av不卡免费看| 国产不卡高清 | 日韩在线小视频 | 97在线精品视频 | 国产高清第一页 | 亚洲成a人片77777kkkk1在线观看 | 黄色激情网址 | 亚洲精品国偷拍自产在线观看 | 久久久精品 一区二区三区 国产99视频在线观看 | 日韩在线电影一区二区 | 国内一级片在线观看 | 久精品视频在线观看 | 国产成人无码AⅤ片在线观 日韩av不卡在线 | 最新av网站在线观看 | 欧美日韩在线免费观看视频 | 麻豆91视频 | 日日射天天射 | 国产成人精品999在线观看 | 天天射综合网站 | 免费色网 | av 一区二区三区 | 国产精品午夜久久久久久99热 | 久久精品视频国产 | 国产一级视频在线观看 | 亚洲精品成人av在线 | 久久草草影视免费网 | 中文字幕高清有码 | 国产亚洲精品久久久久久无几年桃 | 91亚洲精品在线观看 | 日本女人逼| 天天操一操| 一本一本久久a久久精品综合 | 国产一区视频免费在线观看 | 亚洲另类视频在线 | 国产成人av电影在线 | 国产a视频免费观看 | 国产h片在线观看 | 久久在线观看视频 | 国产做aⅴ在线视频播放 | 玖玖玖国产精品 | 久久久久国产精品免费网站 | 2019中文字幕第一页 | 91av播放 | 国产福利资源 | 超碰97国产在线 | 国产精华国产精品 | 亚洲综合色视频 | 999精品视频 | 成人在线免费视频观看 | 免费看十八岁美女 | 91麻豆福利 | 亚洲国产精品500在线观看 | 久久久国产精品一区二区三区 | 国产美女免费观看 | av蜜桃在线 | 久久精品国产精品亚洲精品 | 99久久久免费视频 | 叶爱av在线 | av一级在线 | 992tv在线观看网站 | 色婷婷伊人 | 高清在线一区 | 国产91成人在在线播放 | 日韩爱爱片 | 久久免费视频8 | 国产人成在线观看 | 国产精品久久久久久久久软件 | 午夜精品成人一区二区三区 | 亚洲综合小说 | 国产精品视频专区 | 91精品视屏 | 亚洲伊人第一页 | 黄色资源网站 | 国产一区二区三精品久久久无广告 | 91丨九色丨丝袜 | 91中文视频 | 久久精品美女视频 | 国产精品高潮呻吟久久av无 | av在线一二三区 | 97视频免费看 | 亚洲精品久久久久中文字幕二区 | 久久久国产精品亚洲一区 | 精品九九九 | 天天操综合 | 免费网站在线观看成人 | 97国产超碰 | a级成人毛片 | 久精品视频免费观看2 | 亚洲成人精品在线观看 | 精品一区在线 | 欧美成人性网 | 婷婷视频在线播放 | 在线91视频 | 最近中文字幕免费av | 91成人精品一区在线播放 | 亚洲第一中文网 | 综合黄色网 | 不卡视频国产 | 日韩a在线 | 久久五月婷婷丁香 | 在线观看 亚洲 | 天天干人人插 | 国产午夜精品久久久久久久久久 | 玖草影院 | 欧美va日韩va | 一区二区三区四区在线免费观看 | 成人91在线 | 久久视频一区 | 激情五月亚洲 | 在线视频手机国产 | 日韩免费中文字幕 | 99免费在线观看 | 国产免费av一区二区三区 | 精品久久久久一区二区国产 | 在线观看视频精品 | 色干干| 亚洲 欧美 变态 国产 另类 | 亚洲高清视频在线观看免费 | 亚洲精品一区二区精华 | 亚洲成人中文在线 | 久久免费影院 | 亚洲视频分类 | 亚洲日本va在线观看 | 欧美经典久久 | 亚洲三级毛片 | 国产精品99久久久久的智能播放 | 久久夜色电影 | 五月开心婷婷网 | 在线观看黄色的网站 | 日韩欧美视频免费在线观看 | 96久久久 | wwwwww色| 91在线91拍拍在线91 | 亚洲精品视频免费在线观看 | 九九久久久久久久久激情 | 久久久久久久久久电影 | 欧美日韩三区二区 | 中国黄色一级大片 | 亚洲视频1区2区 | 精品中文字幕在线 | 欧美一区二区日韩一区二区 | 在线看av网址| 婷婷激情在线 | 久久最新视频 | 国产乱对白刺激视频在线观看女王 | 日本精品久久久久 | 超碰97.com | 国产色视频网站2 | 国产成人久久久久 | 日韩欧美视频在线观看免费 | 日本久久精品视频 | 91黄色在线视频 | 成人久久久久久久久久 | 日韩电影一区二区在线 | 区一区二区三在线观看 | 射久久 | a级国产乱理论片在线观看 特级毛片在线观看 | 超碰在线人人艹 | 天天综合久久 | www免费黄色 | 久久精品精品电影网 | 久久久久久久久久久久亚洲 | av免费片| 国产美女在线免费观看 | 日本狠狠干 | 91精品网站在线观看 | 久久综合一本 | 国产精品一级在线 | 日本精品小视频 | 五月天中文字幕mv在线 | 日日天天狠狠 | 91在线在线观看 | 欧美中文字幕久久 | www.av免费 | 99精品免费在线 | 色在线国产 | 国产黄色片免费 | 国产丝袜美腿在线 | 中文字幕在线观看视频一区 | 在线观看视频日韩 | 欧美综合在线视频 | 91亚洲精品久久久久图片蜜桃 | 日韩中文在线电影 | 国产成人亚洲精品自产在线 | 亚洲欧洲精品视频 | 色橹橹欧美在线观看视频高清 | 97视频免费在线观看 | 国产做aⅴ在线视频播放 | 亚洲欧美国产精品 | 黄色毛片在线观看 | av免费看看 | 国产美女视频免费观看的网站 | 免费欧美高清视频 | 久久久久久久18 | 国产精品自在线 | 1区2区视频| 九九九热视频 | 色播五月激情五月 | 国产麻豆精品久久 | 免费在线观看av电影 | 国产黄色在线网站 | 久久99精品国产麻豆宅宅 | 日韩欧美一区二区三区视频 | 国产精品乱码在线 | 午夜精品久久久久久久99婷婷 | 欧美性一级观看 | 伊人看片| 97人人射 | 日韩在线免费观看视频 | 九九九九九九精品 | 中国一级片在线 | 看污网站| 国内精品久久久久影院男同志 | 一个色综合网站 | 中文字幕婷婷 | 久久精品9 | 99精品视频在线观看免费 | 瑞典xxxx性hd极品 | 亚洲综合在线观看视频 | 黄色一级大片在线免费看国产一 | 综合久久影院 | www.久久久精品 | 人人草人人草 | 欧美一区二区精品在线 | 最近高清中文字幕 | 国产在线精品一区二区不卡了 | 国产成人亚洲在线观看 | 欧美一级在线看 | 日日干美女| 国产精品久久久久9999吃药 | av资源中文字幕 | 97成人超碰| 国产亚洲精品女人久久久久久 | 国产精品系列在线观看 | 午夜精品一区二区三区在线观看 | 久久精品久久99精品久久 | 黄色在线网站噜噜噜 | 手机在线欧美 | 免费av大全| 亚洲电影成人 | 久久久免费看视频 | 91在线视频免费观看 | 日韩区欧美久久久无人区 | 天天综合网天天 | 日批在线看 | 激情黄色av | 国产精品一区二区三区99 | 在线播放第一页 | 美女网站在线 | 特级免费毛片 | 黄色在线观看免费网站 | 色网站在线看 | 亚洲影院天堂 | 色干综合 | 国产96在线 | 日本精品中文字幕在线观看 | 亚洲激精日韩激精欧美精品 | 一级c片 | 人人爽人人爽人人爽人人爽 | 成人午夜剧场在线观看 | 韩国精品一区二区三区六区色诱 | 欧美日韩视频一区二区三区 | 丁香综合av | 日韩特级黄色片 | 国产二区电影 | 日韩成人中文字幕 | 亚洲资源在线 | 久久女教师| 国产片免费在线观看视频 | 精品免费视频. | 国内三级在线 | 日韩激情视频在线 | 久久久麻豆精品一区二区 | 天天射天天做 | 中文字幕欧美激情 | 欧美日韩二区三区 | 国产精品日韩欧美一区二区 | 久草精品在线播放 | 国产成人黄色 | 久久系列 | 成人久久18免费网站图片 | 激情网站免费观看 | 国产精品免费麻豆入口 | 亚洲精品999 | 18性欧美xxxⅹ性满足 | 中文在线中文a | 91丨九色丨蝌蚪丰满 | 久久精品99国产精品亚洲最刺激 | 天天综合网在线观看 | 91成人欧美| 免费视频一区 | 日韩三级精品 | 一级片免费视频 | 久久精品草 | 97超碰人人爱| 国产综合香蕉五月婷在线 | 天天色综合天天 | 黄色亚洲| 五月天com | 久久久久久久久综合 | 国产免费观看久久黄 | 免费观看91 | 久久tv视频 | 国产啊v在线 | 久久国产成人午夜av影院潦草 | 国产视频一区在线免费观看 | 丝袜精品视频 | 免费观看视频黄 | 国产精品久久久久久久久久尿 | 日韩成人精品一区二区三区 | 超碰公开在线观看 | 欧美精品亚州精品 | 日韩欧美国产视频 | 国产高清视频免费在线观看 | 午夜电影中文字幕 | 国产麻豆剧果冻传媒视频播放量 | 人人爽人人爽人人爽人人爽 | 97精品视频在线播放 | 九九导航 | 亚洲黄色一级电影 | 在线观看精品国产 | 久久成电影 | 国产精久久久 | 国产一区二区三区高清播放 | 草在线 | 2018亚洲男人天堂 | 亚洲欧美成人在线 | 国产精品视频久久 | 激情影院在线 | 中文字幕在线观看视频网站 | 国产免码va在线观看免费 | 中文av在线播放 | 久久久久亚洲国产 | 五月婷婷中文字幕 | 亚洲天天综合 | 91麻豆精品久久久久久 | 在线电影日韩 | 国产精品一区二区av日韩在线 | 日本性xxx | 免费a v视频 | 亚洲情影院 | 日韩久久精品一区 | 欧美日韩在线第一页 | 国产精品一区二区精品视频免费看 | 狠狠色伊人亚洲综合网站野外 | 天天爱天天 | 色网站中文字幕 | 玖玖视频免费在线 | 久久久久久久久久久电影 | 成年人看片网站 | 久久综合亚洲鲁鲁五月久久 | 九九热av| 天堂麻豆| 午夜视频免费在线观看 | 成人看片| 成年人免费电影在线观看 | 字幕网av | 国产在线观看高清视频 | 欧美福利视频一区 | 日韩欧美在线观看一区二区 | 一区三区视频在线观看 | 日韩欧美在线国产 | 九九精品毛片 | 奇米影视777四色米奇影院 | 亚洲区另类春色综合小说 | 精品国产乱码久久久久 | 国产高清日韩欧美 | 99久久精品午夜一区二区小说 | 成人在线观看影院 | 九九热有精品 | 在线91观看| 九九免费观看全部免费视频 | 亚洲成av人电影 | 午夜狠狠操| av 在线观看 | 中文伊人 | 久草精品视频在线看网站免费 | 一级免费黄色 | 91视频a| 91色吧| 五月婷亚洲| 日本在线精品视频 | 中文字幕在线色 | 亚洲精品乱码久久久久久9色 | 亚洲精品国产品国语在线 | 免费在线色视频 | 99国产精品免费网站 | 国产视频在线免费 | 久久精品伊人 | 日韩电影在线一区 | 成人精品国产免费网站 | 中文字幕丰满人伦在线 | 久久乱码卡一卡2卡三卡四 五月婷婷久 | 69国产在线观看 | 九九热在线精品 | 中文字幕在线精品 | 免费黄a大片 | 成人小视频在线观看免费 | 国产69熟 |