メインコンテンツまでスキップ

列クラス

DataFrame 内の列。

Spark Connectをサポート

構文

「列インスタンスの作成」を参照してください。

方法

手法

説明

alias(*alias, **kwargs)

この列を新しい名前で別名付けして返します (explode など、複数の列を返す式の場合)。

asc()

列の昇順に基づいて並べ替え式を返します。

asc_nulls_first()

列の昇順に基づいて並べ替え式を返します。null 値は非 null 値の前に返されます。

asc_nulls_last()

列の昇順に基づいて並べ替え式を返します。null 値は非 null 値の後に表示されます。

astype(dataType)

cast()のエイリアス。

between(lowerBound, upperBound)

現在の列の値が指定された下限値と上限値の間 (両端を含む) にあるかどうかを確認します。

bitwiseAND(other)

この式と別の式のビットごとの AND をコンピュートします。

bitwiseOR(other)

コンピュート この式と別の式のビットごとの OR。

bitwiseXOR(other)

コンピュート この式と別の式のビットごとの XOR。

cast(dataType)

列をdataType型に変換します。

contains(other)

他の要素が含まれます。

desc()

列の降順に基づいて並べ替え式を返します。

desc_nulls_first()

列の降順に基づいて並べ替え式を返します。null 値は非 null 値の前に表示されます。

desc_nulls_last()

列の降順に基づいて並べ替え式を返します。null 値は非 null 値の後に表示されます。

dropFields(*fieldNames)

名前によって StructType 内のフィールドを削除する式。

endswith(other)

文字列は次で終わります。

eqNullSafe(other)

null 値に対して安全な等価性テスト。

getField(name)

StructType 内の名前でフィールドを取得する式。

getItem(key)

リストから ordinal 位置の項目を取得するか、dict からキーによって項目を取得する式。

ilike(other)

SQL ILIKE 式 (大文字と小文字を区別しない LIKE)。

isNaN()

現在の式が NaN の場合は True です。

isNotNull()

現在の式が null でない場合は True になります。

isNull()

現在の式が null の場合は True です。

isin(*cols)

この式の値が引数の評価された値に含まれている場合に true と評価されるブール式。

like(other)

SQL のような表現。

name(*alias, **kwargs)

alias()のエイリアス。

otherwise(value)

条件のリストを評価し、複数の可能な結果式のうちの 1 つを返します。

over(window)

ウィンドウ列を定義します。

rlike(other)

SQL RLIKE 式 (正規表現を使用した LIKE)。

startswith(other)

文字列は以下で始まります。

substr(startPos, length)

列の部分文字列である列を返します。

try_cast(dataType)

これはcastの特別なバージョンであり、同じ操作を実行しますが、invoke メソッドが例外をスローした場合にエラーを発生させる代わりに NULL 値を返します。

when(condition, value)

条件のリストを評価し、複数の可能な結果式のうちの 1 つを返します。

withField(fieldName, col)

StructType 内のフィールドを名前によって追加/置換する式。

オペレーター

Column クラスは、算術演算、比較演算、論理演算用の標準 Python 演算子をサポートしています。

  • 算術 : +-*/%**
  • 比較 : ==!=<<=>>=
  • 論理 : & (AND)、 | (OR)、 ~ (NOT)

列の使用方法を示すより簡単な例については、 「列操作」を参照してください。

列インスタンスを作成する

DataFrame から列を選択します。

Python
df = spark.createDataFrame(
[(2, "Alice"), (5, "Bob")], ["age", "name"])

# Access by attribute
df.name
# Column<'name'>

# Access by bracket notation
df["name"]
# Column<'name'>

式から列を作成します。

Python
df.age + 1
# Column<...>

1 / df.age
# Column<...>

基本的な列操作

Python
# Arithmetic operations
df.select(df.age + 10).show()

# Comparison operations
df.filter(df.age > 3).show()

# String operations
df.filter(df.name.startswith("A")).show()

# Null checking
df.filter(df.name.isNotNull()).show()

条件付きロジック

Python
from pyspark.sql import functions as F

df.select(
F.when(df.age < 3, "child")
.when(df.age < 13, "kid")
.otherwise("adult")
.alias("age_group")
).show()

ソート

Python
df.orderBy(df.age.desc()).show()
df.orderBy(df.age.asc_nulls_last()).show()