반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- numpy
- Google Excel
- django
- PANDAS
- GIT
- hive
- Redshift
- Apache
- matplotlib
- Mac
- SQL
- Github
- array
- Tkinter
- Google Spreadsheet
- list
- 파이썬
- PostgreSQL
- Excel
- Java
- google apps script
- Kotlin
- gas
- c#
- PySpark
- dataframe
- math
- Python
- string
Archives
- Today
- Total
달나라 노트
Python pyspark : filter (spark dataframe filtering) 본문
Python/Python pyspark
Python pyspark : filter (spark dataframe filtering)
CosmosProject 2021. 5. 19. 05:36728x90
반응형
spark dataframe에서도 특정 조건을 만족하는 행만을 추출할 수 있습니다.
from pyspark.sql import SparkSession
from pyspark.sql.functions import col
import pandas as pd
spark = SparkSession.builder.getOrCreate()
df_test = pd.DataFrame({
'a': [1, 2, 3],
'b': [10.0, 3.5, 7.315],
'c': ['apple', 'banana', 'tomato']
})
df_spark = spark.createDataFrame(df_test)
df_spark_filtered = df_spark.filter( # 1
df_spark.a == 2
)
df_spark_filtered.show()
df_spark_filtered = df_spark.filter( # 2
col('a') == 2
)
df_spark_filtered.show()
df_spark_filtered = df_spark.filter( # 3
col('a') == 1
& col('c') == 'apple'
)
df_spark_filtered.show()
df_spark_filtered = df_spark.filter( # 4
col('a') == 2
| col('c') == 'tomato'
)
df_spark_filtered.show()
-- Result
+---+------+-------+
| a| b| c|
+---+------+-------+
| 2| 3.5| banana|
+---+------+-------+
+---+------+-------+
| a| b| c|
+---+------+-------+
| 2| 3.5| banana|
+---+------+-------+
+---+------+-------+
| a| b| c|
+---+------+-------+
| 1| 10.0| apple|
+---+------+-------+
+---+------+-------+
| a| b| c|
+---+------+-------+
| 2| 3.5| banana|
| 3| 7.315| tomato|
+---+------+-------+
1. filter method 안에 column에 대한 조건을 명시하면 해당 조건을 만족하는 row만 뽑아낼 수 있습니다.
2. col 키워드도 사용 가능합니다.
3. 다중 조건 and는 & 기호를 이용할 수 있습니다.
4. 다중 조건 or은 | 기호를 이용할 수 있습니다.
728x90
반응형
'Python > Python pyspark' 카테고리의 다른 글
Comments