Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 获取属性错误:';数据帧';对象没有属性';形状';_Python_Pyspark_Apache Spark Sql_Pycharm - Fatal编程技术网

Python 获取属性错误:';数据帧';对象没有属性';形状';

Python 获取属性错误:';数据帧';对象没有属性';形状';,python,pyspark,apache-spark-sql,pycharm,Python,Pyspark,Apache Spark Sql,Pycharm,我正在使用以下方法将CSV读入名为“InputDataFrame”的Pyspark数据帧: 阅读后,我正在使用: 查找列名。但我在控制台上看到以下日志: 有人能解释为什么会这样吗?还有没有其他方法可以找到Pyspark Dataframe的推断模式 ''' 使用pyide进行开发 “”“在迁移到最新的Pycharm版本后,我在一些工作正常的代码上遇到了同样的问题 我假设您使用的是最新的Pycharm版本(2019.2)。我没有解释为什么会出现问题,但安装旧版Pycharm 2019.1.4为我解

我正在使用以下方法将CSV读入名为“InputDataFrame”的Pyspark数据帧:

阅读后,我正在使用:

查找列名。但我在控制台上看到以下日志:

有人能解释为什么会这样吗?还有没有其他方法可以找到Pyspark Dataframe的推断模式

''' 使用pyide进行开发
“”“

在迁移到最新的Pycharm版本后,我在一些工作正常的代码上遇到了同样的问题


我假设您使用的是最新的Pycharm版本(2019.2)。我没有解释为什么会出现问题,但安装旧版Pycharm 2019.1.4为我解决了问题。

我同意Ben的观点。新版本的PyCharm代码需要一个包含“shape”属性的Pandas数据帧,而不是RDD数据帧(不包含)。您需要回滚到旧版本,或者等待JetBrains发布修复程序

同意,在pycharm 2019.2上运行此操作没有问题。把断点放在某个地方,调试和错误就会发生

Traceback (most recent call last):

  File "/snap/pycharm-community/143/helpers/pydev/_pydevd_bundle/pydevd_xml.py", line 284, in frame_vars_to_xml
    xml += var_to_xml(v, str(k), evaluate_full_value=eval_full_val) 

  File "/snap/pycharm-community/143/helpers/pydev/_pydevd_bundle/pydevd_xml.py", line 384, in var_to_xml
    xml_shape = ' shape="%s"' % make_valid_xml_value(str(v.shape))  

  File "/home/ajinkya/.local/lib/python3.6/site-packages/pyspark/sql/dataframe.py", line 1300, in __getattr__
    "'%s' object has no attribute '%s'" % (self.__class__.__name__, name))  

AttributeError: 'DataFrame' object has no attribute 'shape'  
Unexpected error, recovered safely.


您可以使用
InputDataFrame.printSchema()
请提供您的代码好吗?根据错误消息
File”/snap/pycharm community/143/helpers/pydev/_pydevd_bundle/pydevd_xml.py”,第384行,在var_to_xml_shape='shape=“%s”'%make_有效的_xml_值(str(v.shape))
您在第384行中调用v.shape,其中v是spark数据帧,spark数据帧没有属性shape@Paul我知道在内部,shape属性被调用,但它不存在。但问题是我正在使用下面的代码:
InputDataFrame.schema.names,type(InputDataFrame),InputDataFrame.select(“Col1”).show(),InputDataFrame.select(“Col2”).show(),InputDataFrame.select(“Col3”).show(),
以上都不是working@MaFF是的InputDataFrame.printSchema()可以工作,但仍然存在问题。参考上面的评论。对不起,我弄错了。您是否在pycharm中通过调试运行?您的spark会话是本地的还是在集群上使用远程执行?我将尝试这样做。我可以确认使用旧版本(2019.1.4)修复了该问题。谢谢我将PyCharm更新到2019.2.1,现在它运行良好。非常感谢你,本!
InputDataFrame = spark.read.csv(path=file_path,inferSchema=True,ignoreLeadingWhiteSpace=True,header=True)
InputDataFrame.schema.names 
Traceback (most recent call last):

  File "/snap/pycharm-community/143/helpers/pydev/_pydevd_bundle/pydevd_xml.py", line 284, in frame_vars_to_xml
    xml += var_to_xml(v, str(k), evaluate_full_value=eval_full_val) 

  File "/snap/pycharm-community/143/helpers/pydev/_pydevd_bundle/pydevd_xml.py", line 384, in var_to_xml
    xml_shape = ' shape="%s"' % make_valid_xml_value(str(v.shape))  

  File "/home/ajinkya/.local/lib/python3.6/site-packages/pyspark/sql/dataframe.py", line 1300, in __getattr__
    "'%s' object has no attribute '%s'" % (self.__class__.__name__, name))  

AttributeError: 'DataFrame' object has no attribute 'shape'  
Unexpected error, recovered safely.

    spark = SparkSession.builder.getOrCreate()
    pdf = pd.DataFrame({'A': ['asdf', 'fdsa'], 'B': [1, 2]})
    sdf = spark.createDataFrame(pdf)
    print(pdf)
    sdf.show()