输出在S交互运行时要显示某一个对象的值只要键入其名字即可,如: > x x[1]123456789 10

这实际上是调用了print()函数,即print(x)。在非交互运行(程序)中应使用print()来输出。print()函数可以带一个digits=参数指定每个数输出的有效数字位数,可以带一个quote= 参数指定字符串输出时是否带两边的撇号,可以带一个print.gap=参数指定矩阵或数组输出时列之间的间距。

print()函数是一个通用函数,即它对不同的自变量有不同的反应。对各种特殊对象如数组、模型结果等都可以规定print的输出格式。

cat()函数也用来输出,但它可以把多个参数连接起来再输出(具有paste()的功能)。例如:

> cat(”i = “, i, “n”)

注意使用cat()时要自己加上换行符”n”。它把各项转换成字符串,中间隔以空格连接起来,然后显示。如果要使用自定义的分隔符,可以用sep=参数,例如: > cat(c("AB", "C"), c("E", "F"), "n", sep="")ABCDEFcat()还可以指定一个参数file=给一个文件名,可以把结果写到指定的文件中,如: > cat("i = ", 1, "n", file="c:/work/result.txt")如果指定的文件已经存在则原来内容被覆盖。加上一个append=TRUE参数可以不覆盖原文件而是在文件末尾附加,这很适用于运行中的结果记录。

cat()函数和print()都不具有很强的自定义格式功能,为此可以使用cat()与format() 函数配合实现。format()函数为一个数值向量找到一种共同的显示格式然后把向量转换为字符型。例如: > format(c(1, 100, 10000))[1] "1" "100" "10000"S-PLUS中的format()函数功能较强,具有较多的控制参数,请参见帮助。R中目前format() 函数功能仍较弱,但R有一个formatC函数可以提供类似C语言的printf格式功能。formatC对输入向量的每一个元素单独进行格式转换而不生成统一格式,例如:  > formatC(c(1, 10000))[1] "1""1e+004"在formatC()函数中可以用format=参数指定C格式类型,如”d”(整数),”f”‘(定点实数),”e”(科学记数法),”E”, “g”(选择位数较少的输出格式),”G”, “fg”(定点实数但用digits 指定有效位数),”s”(字符串)。可以用width指定输出宽度,用digits指定有效位数(格式为e,E,g,G,fg时)或小数点后位数(格式为f)时。可以用flag参数指定一个输出选项字符串,字符串中有”-”表示输出左对齐,有”0″表示左空白用0填充,有”+”表示要输出正负号,等等。例如,我们有一个矩阵da中保存了三个日期的年、月、日: > da[,1] [,2] [,3][1,]9913[2,]96119[3,]65518为了输出这三个日期,可以用apply函数指定对每一行作用一个输出函数,此输出函数利用cat()和formatC来控制: > apply(da, 1, function(r)+cat(formatC(r[1], format='d', width=2, flag='0'), '-',+formatC(r[2], format='d', width=2, flag='0'), '-',+formatC(r[3], format='d', width=2, flag='0'), 'n', sep=''))99-01-0396-11-0965-05-18NULL这里我们知道apply函数第一个参数指定了一个矩阵,第二个参数说明对行操作还是对列操作,第三个参数是一个函数,这里我们使用了直接定义一个函数作为参数的办法。输出结果中多了一个NULL函数,这是因为我们在交互运行,apply的结果作为一个表达式的值(NULL )会被显示出来。为避免显示,可以把结果赋给一个临时变量名,或者把整个表达式作为invisible() 函数的参数,这时不显示表达式值。

S的输出缺省显示在交互窗口。可以用sink()函数指定一个文件以把后续的输出转向到这个文件,并可用append参数指定是否要在文件末尾附加: > sink("c:/work/result.txt", append=TRUE)> ls()> d> sink()调用无参数的sink()把输出恢复到交互窗口。输入为了从外部文件读入一个数值型向量,S提供了scan()函数。如果指定了file参数(也是第一参数),则从指定文件读入,缺省情况下读入一个数值向量,文件中各数据以空白分隔,读到文件尾为止。例如:

> cat(1:12, ‘n’, file=’c:/work/result.txt’)

> x

如果文件中是一个用空白分隔的矩阵(或数组),我们可以先用scan()把它读入到一个向量然后用matrix()函数(或array()函数)转换。如:

> y

实际上,scan()也能够读入一个多列的表格,只要用what参数指定一个列表,则列表每项的类型为需要读取的类型。用skip参数可以跳过文件的开始若干行不读。用sep参数可以指定数据间的分隔符。详见帮助。

scan()不指定读取文件名时是交互读入,读入时用一个空行结束。

如果要读取一个数据框,S提供了一个read.table()函数。它只要给出一个文件名,就可以把文件中用空白分隔的表格数据每行读入为数据框的一行。比如,文件c:workd.txt 中内容如下: Zhou153"Li Ming" 9李明Zhang 10.2 Wang用read.table读入: > x xV1V2V31 Zhou1532 Li Ming 9李明3 Zhang10.2 Wang读入结果为数据框。函数可以自动识别表列是数值型还是字符型,并在缺省情况下把字符型数据转换为因子(加上as.is=T可以保留字符型不转换)。函数自动为数据框变量指定“V1 ”、“V2”这样的变量名,指定“1”、“2”这样的行名。可以用col.names参数指定一个字符型向量作为数据框的变量名,用row.names参数指定一个字符型向量作为数据框的行名。

read.table()可以读入带有表头的文件,只要加上header=TRUE参数即可。可以用sep 参数指定表行各项的分隔符。例如,为了读入如下带有表头的逗号分隔文件c:workd.csv: Name,score, cnZhou,15,3Li Ming, 9,李明Zhang, 10.2, Wang使用如下语句: > x xName scorecn1Zhou15.032 Li Ming9.0李明3Zhang10.2Wang其它一些用法见帮助。

C语言cat函数的功能,R语言cat()函数相关推荐

  1. R语言ggplot2可视化:使用R原生plot函数为指定曲线下面的区域着色、ggplot2可视化在曲线的特定下方添加分割线、ggplot2为指定曲线下面的区域着色

    R语言ggplot2可视化:使用R原生plot函数为指定曲线下面的区域着色.ggplot2可视化在曲线的特定下方添加分割线.ggplot2为指定曲线下面的区域着色 目录

  2. r语言python对比_Python和R语言之分析对比

    在Python中调用R或在R中调用Python,为什么是"和"而不是"或"? 在互联网中,关于"R和Python"的文章,排名前十的搜索结果 ...

  3. c语言调色板5个参数,R语言中的颜色以及色板

    可视化数据时,色彩往往是最欠考虑的因素.的确,在一个图中,数据的选择和图表类型的确定才是最重要,最需要确定的因素.但是,适当的选择颜色不仅仅能使数据图的阅读者赏心悦目,而且有助于图中数据关系的呈现,使 ...

  4. R语言小白学习笔记3—R语言读取数据

    R语言小白学习笔记3-R语言读取数据 笔记链接 想说的话 学习笔记3-R语言读取数据 3.1 读取CSV文件 3.1.1 read_delim函数 3.1.2 fread函数 3.2 读取Excel数 ...

  5. Mac版R语言入门(一)R语言入门操作

    文章更新于2023年1月29日: 视频教程--微信公众号:R语言数据分析与实践                      bilibili: R语言数据分析与实践 CSDN:ZhenniLi 第一集: ...

  6. r语言 c 函数返回值,R语言入门 输出函数 cat、print、paste等区别理解

    一. 简介 cat.print函数都是输出函数 > cat("hello world") hello world >> print("hello wor ...

  7. predict函数 R_学习|R语言做机器学习的常用函数总结

    预测函数:predict() type="prob"判别该量度的昆虫归类为A.B和C的概率:type="response":判别该量度的昆虫的类别: 预测分类的 ...

  8. r语言 c语言调用函数返回值,r语言中怎样查看函数源代码

    在R中,代码可以分为如下几个级别: ​首先,是你输入了函数对象名称,你可以直接看到代码的,如要获得函数对象fivenum的代码,就只需要在Console中键入函数对象名称fivenum就可以得到结果, ...

  9. r语言c函数怎么用,R语言学习笔记——C#中如何使用R语言setwd()函数

    在R语言编译器中,设置当前工作文件夹可以用setwd()函数. > setwd("e://桌面//") > setwd("e:\桌面\") > ...

  10. R语言对数线性模型loglm函数_使用R语言进行混合线性模型(mixed linear model) 分析代码及详解...

    1.混合线性模型简介 混合线性模型,又名多层线性模型(Hierarchical linear model).它比较适合处理嵌套设计(nested)的实验和调查研究数据.此外,它还特别适合处理带有被试内 ...

最新文章

  1. 三种方法,用Python轻松提取PDF中的全部图片
  2. iterator与iterable
  3. c语言明解课后答案,明解C语言 中级篇 第一章答案
  4. python内存管理_Python内存管理(一):预备知识
  5. 裁员消息满天飞,我们整理了一份真实名单
  6. oracle 查询月份
  7. 如何在word2016中使用自带的公式编辑器
  8. Python的Numpy库下载及安装
  9. 1人30天44587行代码,分享舍得网开发经验(修订版)
  10. 数字版权管理 (DRM)
  11. JSP 页面缓存以及清除缓存
  12. 真正拖垮打工人的,是沉没成本
  13. 联想ghost重装系统_联想笔记本系统重装图文教程
  14. 姿态估计1-07:FSA-Net(头部姿态估算)-源码无死角讲解(2)-网络框架整体结构分析
  15. 板块分析:筑底阶段 智能家居开启蓝海
  16. 周期函数的傅里叶级数展开
  17. go语言的类型之间的相互转化和float保留小数时的四舍五入
  18. 凝思科技linux关机密码,如何关机不需要管理员密码?
  19. 超级计算机作文650字,努力初中作文650字(通用11篇)
  20. 新闻发布系统之增删改查

热门文章

  1. 感谢有你,一路同行,历史文章汇总,涉及STM32、模块使用、传感器、物联网、鸿蒙、仿真和综合实例等嵌入式的方方面面,欢迎关注。
  2. KMO检验和Bartlett球形检验
  3. mac pdf去水印_Inpaint For Mac :超强去水印工具
  4. [国家集训队] 矩阵乘法
  5. 标签上title属性与alt属性的区别是什么
  6. 配置文件中的后缀dev、test和prod是什么意思
  7. 工作那些事(十)谈谈技术主管(总监)
  8. 迷你世界显示服务器错误,迷你世界登陆失败怎么办-迷你世界登陆未成功_牛游戏页游...
  9. 3207: 花神的嘲讽计划Ⅰ
  10. 【python】google的经纬度定位查询API