预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10
亲,该文档总共20页,到这已经超出免费预览范围,如果喜欢就直接下载吧~
如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
本文将介绍如何操作DataFrame里面的数据和打印出DataFrame里面数据的模式打印DataFrame里面的模式在创建完DataFrame之后,我们一般都会查看里面数据的模式,我们可以通过printSchema函数来查看。它会打印出列的名称和类型:students.printSchemaroot|--id:string(nullable=true)|--studentName:string(nullable=true)|--phone:string(nullable=true)|--email:string(nullable=true)如果采用的是load方式参见DataFrame的,students.printSchema的输出则如下:root|--id|studentName|phone|email:string(nullable=true)对DataFrame里面的数据进行采样打印完模式之后,我们要做的第二件事就是看看加载进DataFrame里面的数据是否正确。从新创建的DataFrame里面采样数据的方法有很多种。我们来对其进行介绍。最简单的就是使用show方法,show方法有四个版本:(1)、第一个需要我们指定采样的行数defshow(numRows:Int);(2)、第二种不需要我们指定任何参数,这种情况下,show函数默认会加载出20行的数据defshow();(3)、第三种需要指定一个boolean值,这个值说明是否需要对超过20个字符的列进行截取defshow(truncate:Boolean);(4)、最后一种需要指定采样的行和是否需要对列进行截断defshow(numRows:Int,truncate:Boolean)。实际上,前三个函数都是调用这个函数实现的。Show函数和其他函数不同的地方在于其不仅会显示需要打印的行,而且还会打印出头信息,并且会直接在默认的输出流打出(console)。来看看怎么使用吧:students.show()//打印出20行+---+-----------+--------------+--------------------+|id|studentName|phone|email|+---+-----------+--------------+--------------------+|1|Burke|1-300-746-8446|ullamcorper.velit...||2|Kamal|1-668-571-5046|pede.Suspendisse@...||3|Olga|1-956-311-1686|Aenean.eget.metus...||4|Belle|1-246-894-6340|vitae.aliquet.nec...||5|Trevor|1-300-527-4967|dapibus.id@acturp...||6|Laurel|1-691-379-9921|adipiscing@consec...||7|Sara|1-608-140-1995|Donec.nibh@enimEt...||8|Kaseem|1-881-586-2689|cursus.et.magna@e...||9|Lev|1-916-367-5608|Vivamus.nisi@ipsu...||10|Maya|1-271-683-2698|accumsan.convalli...||11|Emi|1-467-270-1337|est@nunc.com||12|Caleb|1-683-212-0896|Suspendisse@Quisq...||13|Florence|1-603-575-2444|sit.amet.dapibus@...||14|Anika|1-856-828-7883|euismod@ligulaeli...||15|Tarik|1-398-171-2268|turpis@felisorci.com||16|Amena|1-878-250-3129|lorem.luctus.ut@s...||17|Blossom|1-154-406-9596|Nunc.commodo.auct...||18|Guy|1-869-521-3230|senectus.et.netus...||19|Malachi|1-608-637-2772|Proin.mi.Aliquam@...||20|Edward|1-711-710-6552|lectus@aliquetlib...|+---+-----------+--------------+-----