R語言數(shù)據(jù)類型

R語言數(shù)據(jù)類型

在這里只講三種數(shù)據(jù)類型

數(shù)值型(numeric)

字符型(character)

邏輯型(logical)

來自生信技能樹小潔老師課件圖

在R語言里的數(shù)據(jù)框嚴(yán)格區(qū)分列(名)與行黍氮。第1列(gene)是字母和數(shù)字的組合厦章,第2列(logFC)是數(shù)字,第3列(positive)為邏輯值弟断,第4列(group)為字母和數(shù)字的組合贬媒,有重復(fù)摧阅。

1.數(shù)值型(numeric)

如1.3, 2侧甫,數(shù)字是最直觀的,直接寫就可以康铭,可以做運(yùn)算惯退。

2.字符型(character)

包含英文基因名,分組等从藤,不是純數(shù)字的東西寫在代碼里催跪,不能憑空寫,一定加上引號夷野,如”a“懊蒸,”nn“,不加引號會報(bào)錯悯搔,引號單或雙引號都可以骑丸。

3.邏輯型(logical)

R語言里嚴(yán)格區(qū)分大小寫和中英文,邏輯值只認(rèn)識TRUE或是T,F(xiàn)ALSE或是F通危,第三種取值為NA缺失值(未知值)铸豁,NA是存在但是未知,有一種叫不存在菊碟,不屬于NA节芥。數(shù)值型和字符型也有NA,意味著NA可以存在三種數(shù)據(jù)類型中逆害。

判斷數(shù)據(jù)類型的函數(shù):class()藏古,將要判斷的內(nèi)容寫在括號里。

#分別判斷”a“忍燥,TRUE,3是什么數(shù)據(jù)類型隙姿?
class("a")
#[1] "character"
#注意a要加引號梅垄,a是不加引號的情況,如a=1输玷,a被賦值队丝,是變量,可以直接寫成class(a)欲鹏,不需要加引號机久。
##用class()判斷,字符要加引號赔嚎,變量名不加引號膘盖。
class(TRUE)
[1] "logical"
class(3)
[1] "numeric"

數(shù)值型在R語言里可以做計(jì)算;字符型里存放各種信息尤误,如基因名字侠畔,分組信息等。計(jì)算機(jī)最底層就是1和0损晤;邏輯型软棺,在這里講TRUE和FALSE,作用其它運(yùn)算的返回結(jié)果會是邏輯值尤勋,非常重要喘落。

3.1邏輯型數(shù)據(jù)
  • 比較運(yùn)算的結(jié)果是邏輯值:>, <, <=, >=, ==, !=
######比較運(yùn)算的簡單做法
2==6
##2和6是相等的嗎?
#[1] FALSE
5!=7
##5不等于7嗎最冰?
#[1] TRUE

!表示否定的意思

  • 邏輯運(yùn)算多個邏輯條件的連接與&瘦棋,或|非!
######比較運(yùn)算的復(fù)雜化(用多個條件連接到一起成為一個新的條件去判斷)
7<9&8>9
#[1] FALSE
##&為and的意思锌奴,兩個條件同時滿足嗎兽狭,同時滿足返回TRUE,不同時滿足返回FALSE。&連接的多個條件只要一個條件不滿足箕慧,返回FALSE服球。

7<9|8>9
#[1] TRUE
##|為或者的意思,連接的多個條件颠焦,只要有一個滿足斩熊,就返回TRUE。

!(4>5)
#[1] TRUE
##!表示非伐庭,TRUE變FALSE粉渠,F(xiàn)ALSE變TRUE,白的為黑圾另,黑的為白

4.數(shù)據(jù)類型的判斷和轉(zhuǎn)換

4.1 is族函數(shù)霸株,判斷,返回值為TRUE和FALSE

is.numeric():是否數(shù)值型數(shù)據(jù)
is.logical():是否邏輯型數(shù)據(jù)
is.character():是否字符型數(shù)據(jù)

is問:xx數(shù)據(jù)屬于數(shù)值型嗎集乔?

回答:是(TRUE)或否(FALSE)

is.numeric('ABC')
#[1] FALSE
##判斷ABC屬于數(shù)值型嗎去件?不是返回FALSE。
is.numeric('68')
#[1]FALSE1
##'68'帶引號為字符型扰路,不是數(shù)值型尤溜,所以返回是FALSE。
4.2 as族函數(shù)實(shí)現(xiàn)數(shù)據(jù)類型之間的轉(zhuǎn)換汗唱。

as.numeric():將其他數(shù)據(jù)類型轉(zhuǎn)換為數(shù)值型
as.logical():將其他數(shù)據(jù)類型轉(zhuǎn)換為邏輯型
as.character():將其他數(shù)據(jù)類型轉(zhuǎn)換為字符型

as.numeric("8")
#[1] 8
##如果有成千上百個數(shù)需要轉(zhuǎn)換宫莱,先賦值給一個變量,括號里只寫變量的名字哩罪,就可以實(shí)現(xiàn)批量轉(zhuǎn)換授霸。

補(bǔ)充知識:

需要在Rstudio里通過運(yùn)行代碼來直觀感受R語言數(shù)據(jù)類型。了解初學(xué)者經(jīng)常遇到的幾種報(bào)錯际插,知道怎么解決以及避免報(bào)錯绝葡,對后面的學(xué)習(xí)(或是實(shí)戰(zhàn))非常有用。

常見報(bào)錯與避免報(bào)錯

常見報(bào)錯:

引號不成對腹鹉,函數(shù)名字拼寫錯誤藏畅,英文字母不區(qū)分大小寫。

報(bào)錯信息永遠(yuǎn)出現(xiàn)Error這個關(guān)鍵詞功咒。

來自生信技能樹小潔老師課件圖

截圖里最后一個報(bào)錯:class?愉阎,問號在哪兒就錯在哪兒,因?yàn)槭褂弥形妮斎敕ǖ睦ㄌ枴?/p>

報(bào)錯Error后常出現(xiàn)的提示信息

  • object表示數(shù)據(jù)有問題力奋;

  • function表示函數(shù)有問題榜旦;

  • unexpected表示代碼有問題,出現(xiàn)什么對應(yīng)從哪兒操作景殷。

避免錯誤的小竅門:
  • 第一個小竅門:鍵盤上的上下鍵

控制臺上運(yùn)行命令出錯了溅呢,想改澡屡。

光標(biāo)放在>后面,摁向上鍵咐旧,即可修改上一條命令重新運(yùn)行驶鹉。在控制臺運(yùn)行過的命令直接可以按鍵盤上的上下鍵進(jìn)行翻看,可以修改铣墨。比如class(a)室埋,忘了加引號,在控制臺上的>后面按向上鍵伊约,雙擊a選中姚淆,按shift鍵之后按引號鍵,注意一定是在英文狀態(tài)下操作屡律。

  • 第二個小竅門:Tab鍵

打出前幾個字母腌逢,即出現(xiàn)提示,摁上下鍵可翻動超埋,按tab鍵可自動補(bǔ)全上忍。對于名字長的函數(shù),輸入前幾個字母纳本,按tab鍵補(bǔ)全,避免手寫錯誤腋颠。

需要用引號繁成,一般先寫引號,或是寫完后選中淑玫,按shift“ ”巾腕,引號一定要成對出現(xiàn)。

說明

以上內(nèi)容是聽生信技能樹小潔老師的R語言線上課絮蒿,根據(jù)自己的理解記錄下來尊搬,小潔老師授課非常細(xì)心,對不同水平的同學(xué)都照顧到土涝,并且補(bǔ)充很多技巧以及注意事項(xiàng)佛寿。

R語言有兩大功能:統(tǒng)計(jì)數(shù)據(jù)和可視化(作圖)。了解R語言的數(shù)據(jù)類型但壮,知道R語言用什么數(shù)據(jù)類型能畫什么圖冀泻,很重要,基礎(chǔ)很重要蜡饵!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末弹渔,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子溯祸,更是在濱河造成了極大的恐慌肢专,老刑警劉巖舞肆,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異博杖,居然都是意外死亡椿胯,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進(jìn)店門欧募,熙熙樓的掌柜王于貴愁眉苦臉地迎上來压状,“玉大人,你說我怎么就攤上這事跟继≈侄” “怎么了?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵舔糖,是天一觀的道長娱两。 經(jīng)常有香客問我,道長金吗,這世上最難降的妖魔是什么十兢? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮摇庙,結(jié)果婚禮上旱物,老公的妹妹穿的比我還像新娘。我一直安慰自己卫袒,他們只是感情好宵呛,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著夕凝,像睡著了一般宝穗。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上码秉,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天逮矛,我揣著相機(jī)與錄音,去河邊找鬼转砖。 笑死须鼎,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的府蔗。 我是一名探鬼主播莉兰,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼礁竞!你這毒婦竟也來了糖荒?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤模捂,失蹤者是張志新(化名)和其女友劉穎捶朵,沒想到半個月后蜘矢,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡综看,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年品腹,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片红碑。...
    茶點(diǎn)故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡舞吭,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出析珊,到底是詐尸還是另有隱情羡鸥,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布忠寻,位于F島的核電站惧浴,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏奕剃。R本人自食惡果不足惜衷旅,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望纵朋。 院中可真熱鬧柿顶,春花似錦、人聲如沸操软。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽寺鸥。三九已至,卻和暖如春品山,著一層夾襖步出監(jiān)牢的瞬間胆建,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工肘交, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留笆载,地道東北人。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓涯呻,卻偏偏與公主長得像凉驻,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子复罐,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評論 2 353

推薦閱讀更多精彩內(nèi)容

  • 內(nèi)容來源:https://www.runoob.com/r/r-data-types.html[https://w...
    驚鴻影閱讀 455評論 0 0
  • 數(shù)據(jù)類型變量不會聲明為某種數(shù)據(jù)類型涝登。 變量分配有R對象,R對象的數(shù)據(jù)類型變?yōu)樽兞康臄?shù)據(jù)類型常用R對象類型矢量列表矩...
    yuanyb閱讀 685評論 0 0
  • R語言支持的數(shù)據(jù)類型 數(shù)值型(numeric) 復(fù)數(shù)型(complex) 邏輯型(logical) 字符型(cha...
    ad12c86b9c4f閱讀 24,966評論 0 5
  • 通常效诅,在使用任何編程語言進(jìn)行編程時胀滚,需要使用各種變量來存儲各種信息趟济。變量只是保留值的存儲位置。這意味著咽笼,當(dāng)你創(chuàng)建一...
    D_MarsD閱讀 914評論 0 0
  • 1.字符串 1.連接字符串 - paste()函數(shù) 語法說明 參數(shù)解釋 2.格式化數(shù)字和字符串 - format(...
    地平線上的背影閱讀 803評論 0 1