PySpark DataFrame 的 select(~) 方法返回具有指定列的新 DataFrame。
參數
1.*cols | string、Column 或 list
要包含在返回的 DataFrame 中的列。
返回值
一個新的 PySpark 數據幀。
例子
考慮以下PySpark DataFrame:
df = spark.createDataFrame([["Alex", 25], ["Bob", 30]], ["name", "age"])
df.show()
+----+---+
|name|age|
+----+---+
|Alex| 25|
| Bob| 30|
+----+---+選擇 PySpark DataFrame 的單列
要選擇單個列,請將列名稱作為字符串傳遞:
df.select("name").show()
+----+
|name|
+----+
|Alex|
| Bob|
+----+或者等效地,我們可以傳入一個 Column 對象:
df.select(df["name"]).show()
+----+
|name|
+----+
|Alex|
| Bob|
+----+這裏, df["name"] 的類型是 Column 。在這裏,您可以將 select(~) 的作用視為將 Column 對象轉換為 PySpark DataFrame。
或者等效地,也可以使用 sql.function 獲取 Column 對象:
import pyspark.sql.functions as F
df.select(F.col("name")).show()
+----+
|name|
+----+
|Alex|
| Bob|
+----+選擇 PySpark DataFrame 的多個列
要選擇列 name 和 age :
df.select("name","age").show()
+----+---+
|name|age|
+----+---+
|Alex| 25|
| Bob| 30|
+----+---+或者等效地,我們可以提供多個 Column 對象:
df.select(df["name"],df["age"]).show()
+----+---+
|name|age|
+----+---+
|Alex| 25|
| Bob| 30|
+----+---+或者等效地,我們可以提供從 sql.functions 獲得的 Column 對象:
import pyspark.sql.functions as F
df.select(F.col("name"), F.col("age")).show()
+----+---+
|name|age|
+----+---+
|Alex| 25|
| Bob| 30|
+----+---+選擇 PySpark DataFrame 的所有列
要選擇所有列,請傳遞 "*" :
df.select("*").show()
+----+---+
|name|age|
+----+---+
|Alex| 25|
| Bob| 30|
+----+---+選擇給定列標簽列表的列
要選擇給定列標簽列表的列,請使用 * 運算符:
cols = ["name", "age"]
df.select(cols).show()
+----+---+
|name|age|
+----+---+
|Alex| 25|
| Bob| 30|
+----+---+這裏,* 運算符用於將列表轉換為位置參數。
選擇以某個子字符串開頭的列
要選擇以特定子字符串開頭的列:
cols = [col for col in df.columns if col.startswith("na")]
df.select(cols).show()
+----+
|name|
+----+
|Alex|
| Bob|
+----+在這裏,我們使用 Python 的列表理解來獲取以子字符串 "na" 開頭的列標簽列表:
cols = [col for col in df.columns if col.startswith("na")]
cols
['name']相關用法
- Python Pandas DataFrame select_dtypes方法用法及代碼示例
- Python PySpark DataFrame selectExpr方法用法及代碼示例
- Python Pandas DataFrame set_axis方法用法及代碼示例
- Python Pandas DataFrame set_index方法用法及代碼示例
- Python Pandas DataFrame sem方法用法及代碼示例
- Python Pandas DataFrame sample方法用法及代碼示例
- Python Pandas DataFrame swaplevel方法用法及代碼示例
- Python PySpark DataFrame sampleBy方法用法及代碼示例
- Python PySpark DataFrame show方法用法及代碼示例
- Python Pandas DataFrame stack方法用法及代碼示例
- Python Pandas DataFrame shift方法用法及代碼示例
- Python Pandas DataFrame sort_index方法用法及代碼示例
- Python Pandas DataFrame size屬性用法及代碼示例
- Python Pandas DataFrame swapaxes方法用法及代碼示例
- Python PySpark DataFrame sort方法用法及代碼示例
- Python PySpark DataFrame sample方法用法及代碼示例
- Python Pandas DataFrame sub方法用法及代碼示例
- Python Pandas DataFrame sum方法用法及代碼示例
- Python Pandas DataFrame std方法用法及代碼示例
- Python PySpark DataFrame summary方法用法及代碼示例
- Python Pandas DataFrame shape屬性用法及代碼示例
- Python Pandas DataFrame sort_values方法用法及代碼示例
- Python Pandas DataFrame slice_shift方法用法及代碼示例
- Python Pandas DataFrame squeeze方法用法及代碼示例
- Python Pandas DataFrame empty屬性用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 PySpark DataFrame | select method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
