Spark

Spark - [pyspark]

_data 2022. 12. 8. 19:53

pyspark 문법을 간단하게 알아보자.

데이터브릭스를 통해서 pyspark를 공부한다. 회원가입하고 Workspace를 만들어서 spark를 사용하면 된다.

 

http://databricks.com

 

Data Lakehouse Architecture and AI Company - Databricks

Databricks combines data warehouses & data lakes into a lakehouse architecture. Collaborate on all of your data, analytics & AI workloads using one platform.

www.databricks.com

Grammer

1. 파일 불러오기

from pyspark.sql import SparkSession
#build spark
spark = Spark.Session.builder.appName("Basic").getOrCreate()
#read data
df = spark.read.json("../file.json")

#show dataframe
df.show()

2. 변수 정보보기

df.printSchema()

#변수명 출력
#df.columns

#자료형 출력
#df.describe()

3. 기술통계량 보기

df.describe().show()

4. 구조 필드 리스트 만들기

데이터프레임 자료형을 바꾸는 작업이 조금 귀찮다.

from pyspark.sql.types import StructFiled, StringType, StringType, IntegerType, FloatType, StructType

#StructFiled(변수명, 바꿀 데이터 유형, Null 처리 방법)
## Null 처리 방법이 default로 'false'로 되어 있는데 True로 지정하지 않으면 Null 값이 있을때
## Error가 발생한다.
data_schema = [StructField('age',IntegerType(),True),
	StructField('name',StringType(),True)]
    
#최종 타입 지정
final_struc = StructType(fields = data_schema)

#schema 매개변수에 지정해줘 타입을 변경한다
df = spark.read.json("../file.json", schema = final_struc)

df.printSchema()

age column이 string에서 integer로 변환 되었다.