r语言 c 函数返回值,R语言入门 输出函数 cat、print、paste等区别理解
一、 簡介
cat、print函數(shù)都是輸出函數(shù)
> cat("hello world")
hello world
>> print("hello world")
[1] "hello world"
print的輸出有點像列表輸出的未命名元素
> alist=list(c(1,2,3,4,5),c('a','b','c','d','e'))
> alist
[[1]]
[1] 1 2 3 4 5
[[2]]
[1] "a" "b" "c" "d" "e"
二、 print與cat函數(shù)的差異
//測試返回值的差異
> x
hello world
> x//cat函數(shù)無返回值
NULL
> y
[1] "hello world"
> y//print函數(shù)有返回值
[1] "hello world"
cat()函數(shù)向控制臺輸出打印內(nèi)容,函數(shù)沒有返回值(=返回值為NULL);而print()函數(shù)在控制臺輸出打印的內(nèi)容,同時返回輸出內(nèi)容。
有以下兩個案例可以幫助理解他們之間的差異:
1. 玖-R語言關(guān)于cat以及print的事情
第一個案例說的是,用print函數(shù)對讀取的文件(csv)內(nèi)容進行輸出,在進行輸出的美化過程(不同輸出結(jié)果空行)時,把函數(shù)內(nèi)的轉(zhuǎn)義符一同輸出了(‘\n’)。
這一個現(xiàn)象還是因為在r里print用不了轉(zhuǎn)義符,print函數(shù)直接在控制臺輸出需要打印的內(nèi)容,包括字符、制表符,“轉(zhuǎn)義符”,全部按原樣輸出
> print("hello world\n")
[1] "hello world\n"//直接輸出的轉(zhuǎn)義符
> print("hello world\n ")
[1] "hello world\n "//這里是直接輸入的制表符
2. R語言學習記錄之踩坑cat()、print()與ifelse()
第二個案例更多是說ifelse(test, yes, no)這個函數(shù)的用法(ifelse()函數(shù)要求yes和no至少為一個單值向量)。正因為是cat函數(shù)沒有返回值不具備一個單值向量的條件,所以當ifelse語句邏輯判斷test[1]為真,返回yes[1]的值時發(fā)現(xiàn)cat函數(shù)無返回值所以出錯。而改成if() yes else(no)后,執(zhí)行yes操作就不會出錯了。
三、 paste函數(shù)
paste函數(shù)可以將任意數(shù)量的參數(shù)組合在一起
在控制臺輸入help(paste)得到幫助文檔
… - 表示要組合的任何數(shù)量的參數(shù)。
sep - 表示任選的參數(shù)之間的分隔符。
collapse - 用于消除兩個字符串之間的空間。
具體可以參考這篇文章(如何使用) R語言paste函數(shù)
總結(jié)
以上是生活随笔為你收集整理的r语言 c 函数返回值,R语言入门 输出函数 cat、print、paste等区别理解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言编程矩阵主对角线相同,急求!c语言
- 下一篇: android 动态移动xy,andro