Ton*_*ony 1 apache-spark pyspark
简单的问题:假设我们
import pyspark.sql.functions as F
Run Code Online (Sandbox Code Playgroud)
那么如何从 pyspark.sql.column.Column object 恢复列名字符串 'a' F.col('a')。
例如,如果我们输入str(F.col('a')),我们有
而不是原始的列名称“a”。
没有受支持的方法可以执行此操作。你可以稍微修改一下并尝试围绕这些线进行一些操作
from pyspark.sql.functions import lit, col
from pyspark.sql.column import Column
from py4j.protocol import Py4JError
def name(self):
try:
return self._jc.expr().name()
except Py4JError:
return None
Column.name = property(name)
Run Code Online (Sandbox Code Playgroud)
这将给出:
from pyspark.sql.functions import lit, col
col("a").name
Run Code Online (Sandbox Code Playgroud)
'a'
Run Code Online (Sandbox Code Playgroud)
lit(1).name is None
Run Code Online (Sandbox Code Playgroud)
True
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
503 次 |
| 最近记录: |