PySpark数据分析基础:PySpark基础功能及DataFrame操作基础语法详解_pyspark rdd(1)

df



DataFrame[a: bigint, b: double, c: string, d: date, e: timestamp]


#### 通过由元组列表组成的RDD创建



rdd = spark.sparkContext.parallelize([
(1, 2., ‘string1’, date(2000, 1, 1), datetime(2000, 1, 1, 12, 0)),
(2, 3., ‘string2’, date(2000, 2, 1), datetime(2000, 1, 2, 12, 0)),
(3, 4., ‘string3’, date(2000, 3, 1), datetime(2000, 1, 3, 12, 0))
])
df = spark.createDataFrame(rdd, schema=[‘a’, ‘b’, ‘c’, ‘d’, ‘e’])
df



DataFrame[a: bigint, b: double, c: string, d: date, e: timestamp]


 以上的DataFrame格式创建的都是一样的。



df.printSchema()



root
|-- a: long (nullable = true)
|-- b: double (nullable = true)
|-- c: string (nullable = true)
|-- d: date (nullable = true)
|-- e: timestamp (nullable = true)


### 2.查看


#### DataFrame.show()


使用格式:



df.show()



df.show(1)



±–±–±------±---------±------------------+
| a| b| c| d| e|
±–±–±------±---------±------------------+
| 1|2.0|string1|2000-01-01|2000-01-01 12:00:00|
±–±–±------±---------±------------------+
only showing top 1 row


#### spark.sql.repl.eagerEval.enabled


spark.sql.repl.eagerEval.enabled用于在notebooks(如Jupyter)中快速生成PySpark DataFrame的配置。控制行数可以使用spark.sql.repl.eagerEval.maxNumRows。



spark.conf.set(‘spark.sql.repl.eagerEval.enabled’, True)
df


 ![](https://img-blog.csdnimg.cn/471e354555894d3eb4632ab23a4311b7.png)



spark.conf.set(‘spark.sql.repl.eagerEval.maxNumRows’,1)
df


 ![](https://img-blog.csdnimg.cn/b64ac192ab9942e58a0c25f05ed596f9.png)


#### 纵向显示


行也可以垂直显示。当行太长而无法水平显示时,纵向显示就很明显。



df.show(1, vertical=True)



-RECORD 0------------------
a | 1
b | 2.0
c | string1
d | 2000-01-01
e | 2000-01-01 12:00:00
only showing top 1 row


####  查看DataFrame格式和列名



df.columns



[‘a’, ‘b’, ‘c’, ‘d’, ‘e’]



df.printSchema()



root
|-- a: long (nullable = true)
|-- b: double (nullable = true)
|-- c: string (nullable = true)
|-- d: date (nullable = true)
|-- e: timestamp (nullable = true)


#### 查看统
  • 18
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值