R软件及编程应用第四讲报告.ppt_第1页
R软件及编程应用第四讲报告.ppt_第2页
R软件及编程应用第四讲报告.ppt_第3页
R软件及编程应用第四讲报告.ppt_第4页
R软件及编程应用第四讲报告.ppt_第5页
免费预览已结束,剩余86页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软件与程序设计应用,刘树东,中南财经政法大学信息与安全工程学院,第4讲:数据读写,预处理与字符串运算,1。数据读写。数据预处理,3 .字符串操作,1。数据读写,1。连接键盘和显示器,2。读写文件,3。正在连接数据库,4。从Hadoop获取数据,1。连接键盘和显示器提供了几种连接键盘和显示器的命令,包括扫描()、读取线()、打印()和cat()。(1)使用scan()函数:使用scan()函数从文件中读取向量或从键盘输入向量,向量可以是数字或字符向量,甚至可以读取数据以形成列表。函数描述:从控制台或文件读取数据到向量列表,函数定义形式:参数描述(1):当文件从文件读取数据时,用引号输入文件路径。

2、从键盘输入时,此参数为空。默认情况下,声明读取的是字符数据。您还可以设置读入数据的精度/类型,如什么=整数(0)、什么=数字(0)和什么=字符(0)。如果读入的数据有字符和数值,可以用what= 声明,读入的数值将隐式转换为字符。Sep指定每个读入数据之间的分隔符,默认为空字符,包括空格、回车、换行/制表符和水平制表符。参数描述(2):也可以通过列表指定读入变量的变量名,生成的对象是一个列表,此时可以同时读入字符和值。跳过从哪一行读入数据。Nlines指定读入的最大行数。如果不希望通过键盘输入时出现下标提示,可以使用quiet=TRUE。编码= 指定编码格式。阅读中文时,有时可能会出现乱码。您

3、可以通过此参数指定拉丁文-1或UTF-8。注意:它用于读取没有标题的纯字符或数字。如果输入单一类型的向量,所有示例都是字符,因此使用扫描功能更有效。默认情况下,扫描功能读入的数据会生成矢量类型。例如:键盘输入,命令行在每行开头提示的数字是下一个输入项的索引。键入一个空行来结束输入,例如:读取文件;(2)使用readline()函数:读取从键盘输入的单行数据。功能描述:从终端读取一行使用说明:一般来说,当调用readline时,可以指定一个提示字符串作为参数,提示用户输入什么。此参数是可选的。Readline()和readline()是两个不同的函数。例如,想一想:从输出结果的角度来看,扫描和读

4、取线有什么不同?(3)在交互模式的顶层使用print()时,您只需要简单地键入变量名或表达式来输出变量或表达式的值。Print()函数:在非交互模式下,如在函数体内部打印变量值或表达式,上述方法不起作用。此时,print()函数就派上了用场。print()函数可以用一个参数digits=参数指定每个数字输出的有效位数,用print.gap=参数指定输出矩阵或数组时各列之间的间距。(4)使用cat()功能。Cat()函数比print()函数稍好,因为后者只能输出一个表达式,而且输出内容有自己的编号,这可能会造成干扰。Cat()函数定义表:使用说明:cat()函数可以将多个参数连接到输出,并具有粘

5、贴()函数。使用cat()函数时,需要一个行尾字符“n”。如果没有,输入提示 将不会换行。默认情况下,打印参数由空格分隔。也就是说,sep=“”。您还可以设置各种字符,如“n”,以分隔每个输出参数,或者不设置如何分隔:sep=“”。此外,sep也可以设置为字符串向量。例如,2。读写文件。文本文件通常被定义为由ASCII字符或其他人类语言代码(如中文的国标代码)组成的文件。其中换行符用于表示文本内部的行距。r提供了几个读写文件的函数,包括readLines(),read。table()、read.fwf()、write.table()、writeLines()等。(1)使用read.table(

6、)函数:将文本文件(如表格数据)读入r并生成一个数据框对象。函数描述:读取一个表格格式的文件,并从中创建一个数据框,其中的事例对应于文件中的行,变量对应于文件中的字段。函数定义形式:参数描述(1):文件:指定读入文件或文件路径。表头:是否读入列名,默认不读入。Sep:用于指定分隔符。读入的数据需要常规分隔符,如空格、制表符、换行符、回车符等。原样:读取的字符是否转换为因子;默认情况下,所有读取的字符都被转换为因子。CalClasses:指定类的数据类型的格式。字符串因子=字符是否被转换成因子,默认情况下为真。参数描述(2):行。names=c()指定每行的名称,s=c()指定列

7、的名称。如果读入文件没有标题,可以指定它。跳过=从文件的哪一行读入数据。N行数=读取的行数。Na.string=c()指定哪些字符表示缺失值。Comment.char=指定注释的起始字符。默认值为#。Dec=指定小数点数字编码=指定编码规则。参数描述(3):还有一系列基于read.table函数不同选项的函数。例如,(2)使用read.fwf() read.fwf()函数适用于读取没有相应分隔符的数据,但读取数据字段的长度是固定的。将数据读入寄存器后,生成数据帧对象。将固定宽度格式的数据表读入数据。框架定义形式:参数描述(1):文件:指定读入文件或文件路径。表头:是否读入列名,默认不读入。Se

8、p:用于在标题中分隔变量名的符号。跳过=否:在文件头中指示要跳过的功能。Rs=c():设置数据框中的行名。Cs=c():设置数据框中的列名。n设置读入r. Buffersize的行数:设置一次读入的函数的最大值,例如,(3)使用readLines() readLines()交互输入数据。您可以控制读入的数据行数,而不是批处理。它适用于需要逐行处理的大型文件。其中,read.table()和scan()同时将文件读入内存。当文件非常大时,读取文件需要很长时间,这需要更高的内存。返回的是一个字符串向量,其中每个值对应于文件中的一行。函数描述:从连接中读取部分或全部文本行

9、,函数定义形式:参数描述:con:包含要读取的文件的字符串或路径。n:整数值,设置要读取的行数。好:逻辑值,设置当文件函数小于n时是否报告错误。警告:逻辑值,设置当文件不以EOL: Encoding: character结束时是否报告错误,设置输入文件的编码模式,例如,连接的介绍:“connection”是R中各种I/O(输入/输出)操作的基本机制,在这里用来读取文件。通常通过调用函数文件(),url()或其他函数来创建连接。应用程序:打开连接,将结果赋给变量c,然后设置参数n=1,使程序一次只能读取文件的一行。当r遇到文件结尾时,它返回一个空值。文件读取结束,关闭连接。如果需要处理每行的字,

10、可以使用字符串处理函数,如strsplit()、substr()、nchar()、grep()、regexpr()、sub()、gsub()和其他seak()来表示“倒带”,即从文件中再次读取。(4)数据对象(通常是数据帧或矩阵)也可以通过使用write.table()导出到文本文件中。write.table的功能描述:将所需的参数x(如果不是数据帧或矩阵,则将其转换为数据帧后)打印到文件或连接中。定义表单,参数描述:x:要导出的对象文件:字符串,用于写入输出的文件名或连接对象追加:逻辑值,设置是将输出添加到现有文件的末尾(追加=真)还是覆盖此文件(追加=假)。Sep:字符,它设置一行中分隔值

11、的字符。Rs:一个逻辑值,用于设置是否在输出中包含行名。Cs=c():一个逻辑值,用于设置输出中是否包含列名,例如:数据框,例如:矩阵。当输出矩阵时,您需要声明您不需要列名和行名。(4)用cat()注意:第一次调用cat()时,创建一个文件u.txt,在文件中写入一行内容“abc”,在第二次调用中写入第二行内容“de”。该文件将在每次操作后自动保存。您还可以编写多个字段。(5)使用writeLines()注意:第一次调用writeLines()时,会创建文件u.txt,并在文件中写入一行内容“w1”、“w2”和“w3”,在第二次调用中还会写入第二行内容“w4”、“w

12、5”和“w6”。如果该文件目录中存在u.txt,则首次写入时,文件中的原始内容将被覆盖。3,连接数据库4,从Hadoop获取数据,2,预处理数据,1,合并数据2,转换数据3,分段和子集数据4,汇总数据5,修剪数据6,清理数据,为什么要预处理数据?在一个典型的项目中,80%的精力花在寻找、清理和准备分析2的数据上,不到5%的精力花在分析上(剩下的时间花在写报告上)。现实世界中的数据通常是肮脏、不完整和不一致的。数据预处理可以提高数据质量,有助于提高后续挖掘过程的准确性和性能。数据挖掘中的数据预处理主要包括:数据清理(填充缺失值、平滑噪声数据、识别或删除异常值并解决不一致)、数据集成(合成来自多个

13、数据源的数据并将其存储在一致的数据文件或数据库中)、数据转换(标准化和聚合数据)和数据规范(维度规范和数值规范)。1.数据合并,R提供了将多个数据结构粘贴到一个数据结构中的多种功能。例如,粘贴()、rbind()、cbind()和合并()(1)粘贴()函数粘贴()函数将多个字符向量连接成一个向量。如果要连接两种不同类型的矢量,它们将被强制转换为字符矢量。默认情况下,向量值由空格分隔,其他类型的分隔符可以由sep参数指定。如果要将向量中的所有值连接成一个字符串,可以使用折叠参数,例如1。数据合并,(2)cbind()和rbind()函数。有时,需要将几个向量、矩阵或数据帧合并在一起,因此cbin

14、d()和rbind()可以实现这一功能。Cbind()函数:通过添加列来组合几个对象。这相当于将两张桌子水平拼接在一起。Rbind()函数:通过添加线条来组合多个对象。这相当于将两块手表垂直拼接在一起。用法:c/rbind(arg1,arg2,arg3),当arg1,arg2,arg3和其他参数的长度(列数和行数)不相等时,将出现循环完成。1.数据合并;(3)merge()函数merge()函数:通过公共字段合并数据框。通过公共列或行名称合并两个数据框,或者执行其他版本的database _ join _ operations。定义形式:合并(x,y,by=相交(名称(x),名称(y),by.

15、x=by,by.y=by,all=FALSE,all.x=all,all.y=all,sort=TRUE,后缀=c()。x。y),不匹配=空,),参数说明x用于合并数据框y用于合并数据框通过对应于列的字符向量,而默认值相交(名称(x),名称(y)通过。x/y对应于x/y中列名的字符向量,它将覆盖由提供的all.x/y逻辑值列表。指定数据框x/y中的所有行是否都应包含排序逻辑值,以及结果是否应根据列名进行排序。默认值为真。例如,2。数据转换。原始数据中的一些变量可能有问题,例如变量名或数据类型不一致,因此需要进行数据转换。(1)变量重新分配:例如,在“使用rbind()和cbind()函数的数据框”中,使用name()函数重新分配数据框组件的名称。(2)转换函数:常用于改变数据框变量的函数是转换,定义如下:转换(_data),该函数没有命名参数。调用此函数时,必须首先指定一个数据框,然后是表达式列表。表达式中的变量是数据框中的变量,该函数将完成表达式中的计算并返回一个新的数据框。例如,2。数据转换,(3)对对象中每个元素的函数操作:在数据转换过程中,同一函数经常在一系列(或一个复合对象的所有元素)上运行,并返回一系列对象(或一个新的复合对象)。r的基本库提供了一系列函数来完成这个功能。a .在数组上运行一个函数应用函数可以在数组(或矩阵)的每个部分上运行相同的函数:应用(X

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论