1.创建一个spark
-
配置,学习用途,选择最小配置
image.png
2.在synapse里使用spark
-
创建
image.png
- 这样就类似于jupyter一样的功能了
3. pyspark
3.1 基本操作
- 创建spark 对象
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("example").getOrCreate()
- 读取器csv
df_pyspark = spark.read.option('header','true').csv('test1.csv')

3.查看结构
df_pyspark.printSchema()

4.读取表格
df_pyspark.show()
5.读取表头信息
df_pyspark.head()
6.根据列明选择列
df_pyspark.select(['Name','Age']).show()
7.添加一列
df_pyspark.withColumn('Gender',df_pyspark['1'])
8.重命名列明
df_pyspark. withColunmRenamed('Name','New Name')
9.删除列
df_pyspark.drop('Gender’)
3.2 数据处理
1.读取数据
from pyspark.sql import SparkSession
spark = Spark.Session.builder.appName('Practise').getOrCreate()
spark.read.csv('test2.csv',header=True, inferSchema=True)
2.删除有空值的指定列
df_pyspark.na.drop(how='any', subset=['Age'])
3.填充缺失值
df_pyspark.na.fill('0','Age').show()
3.3 过滤
1.工资低于2000的人
df_pyspark.filter('Salary<=2000').show()
#选择需要的列
df_pyspark.filter('Salary<=2000').select(['Name','Salary']).show()
- 使用|(and)连接多个条件
df_pyspark.filter((df_pyspark['Salary']>=2000) | df_pyspark['Salary']<=15000))
- ~(not)
df_pyspark.filter(~df_pyspark['Salary']<=2000).show()
3.4 分组聚合
df_pyspark.groupBy('Name').sum().show()
网友评论