con*_*xyz 5 scala dataframe pandas apache-spark apache-spark-sql
有没有一种方法可以使用整数按位置引用Spark DataFrame列?
类似的熊猫DataFrame操作:
df.iloc[:0] # Give me all the rows at column position 0
Run Code Online (Sandbox Code Playgroud)
Python 的等价物df.iloc是 collect
PySpark 示例:
X = df.collect()[0]['age']
Run Code Online (Sandbox Code Playgroud)
或者
X = df.collect()[0][1] #row 0 col 1
Run Code Online (Sandbox Code Playgroud)
不是真的,但你可以尝试这样的事情:
蟒蛇:
df = sc.parallelize([(1, "foo", 2.0)]).toDF()
df.select(*df.columns[:1]) # I assume [:1] is what you really want
## DataFrame[_1: bigint]
Run Code Online (Sandbox Code Playgroud)
或者
df.select(df.columns[1:3])
## DataFrame[_2: string, _3: double]
Run Code Online (Sandbox Code Playgroud)
斯卡拉
val df = sc.parallelize(Seq((1, "foo", 2.0))).toDF()
df.select(df.columns.slice(0, 1).map(col(_)): _*)
Run Code Online (Sandbox Code Playgroud)
注意:
Spark SQL 不支持并且不太可能支持行索引,因此不可能跨行维度进行索引。
| 归档时间: |
|
| 查看次数: |
4662 次 |
| 最近记录: |