gpt4 book ai didi

apache-spark - PySpark 错误 : AnalysisException: 'Cannot resolve column name

转载 作者:行者123 更新时间:2023-12-03 22:09:26 26 4
gpt4 key购买 nike

我正在尝试将整个 df 转换为单个向量列,使用
df_vec = vectorAssembler.transform(df.drop('col200'))

我被抛出这个错误:
File "/usr/hdp/current/spark2-client/python/pyspark/sql/utils.py", line 69, in deco
raise AnalysisException(s.split(': ', 1)[1], stackTrace)
pyspark.sql.utils.AnalysisException: 'Cannot resolve column name "col200" among (col1, col2..

我环顾互联网,发现错误可能是由于列标题中的一些空格引起的。问题是大约有 1600 列,检查每一列是一项艰巨的任务 - 特别是对于空格。我该如何处理?这是一个大约有 800000 行的 df,仅供引用。

通过执行 df.printSchema(),我看不到任何空格。至少不领先。我很肯定列名之间也没有任何空格。

在这一点上,我完全被阻止了!任何帮助将不胜感激。

最佳答案

这发生在我身上几次,试试这个:

tempList = [] #Edit01
for col in df.columns:
new_name = col.strip()
new_name = "".join(new_name.split())
new_name = new_name.replace('.','') # EDIT
tempList.append(new_name) #Edit02
print(tempList) #Just for the sake of it #Edit03

df = df.toDF(*tempList) #Edit04

代码修剪并删除 Dataframe 中每一列的所有空格。

关于apache-spark - PySpark 错误 : AnalysisException: 'Cannot resolve column name,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55453101/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com