首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在PySpark SQLContext DataFrame中显示列

无法在PySpark SQLContext DataFrame中显示列
EN

Stack Overflow用户
提问于 2020-11-09 02:19:38
回答 1查看 116关注 0票数 0

很抱歉这个菜鸟问题,但我已经被这个问题卡住了几个小时:

如果我键入:

代码语言:javascript
复制
df['avg_wind_speed_9am'].head()

它返回:

代码语言:javascript
复制
TypeError Traceback (most recent call last) <ipython-input-42-c01967246c17> in <module>() ----> 1 df['avg_wind_speed_9am'].head() TypeError: 'Column' object is not callable

如果我输入:

代码语言:javascript
复制
df[['avg_wind_speed_9am']].head()

它返回:

代码语言:javascript
复制
Row(avg_wind_speed_9am=2.080354199999768)

我不明白,通常它应该打印一列。

下面是我导入数据帧的方式:

代码语言:javascript
复制
from pyspark.sql import SQLContext
sqlContext = SQLContext(sc)
df = sqlContext.read.load('file:///home/cloudera/Downloads/big-data-4/daily_weather.csv', format='com.databricks.spark.csv', header='true', inferSchema='true')

下面是我的数据集的样子:

代码语言:javascript
复制
number,air_pressure_9am,air_temp_9am,avg_wind_direction_9am,avg_wind_speed_9am,max_wind_direction_9am,max_wind_speed_9am,rain_accumulation_9am,rain_duration_9am,relative_humidity_9am,relative_humidity_3pm
0,918.0600000000087,74.82200000000041,271.1,2.080354199999768,295.39999999999986,2.863283199999908,0.0,0.0,42.42000000000046,36.160000000000494
1,917.3476881177097,71.40384263106537,101.93517935618371,2.4430092157340217,140.47154847112498,3.5333236016106238,0.0,0.0,24.328697291802207,19.4265967985621
EN

回答 1

Stack Overflow用户

发布于 2020-11-09 02:37:31

尝试以下方法之一:

代码语言:javascript
复制
df.select('avg_wind_speed_9am').head()

df.select('avg_wind_speed_9am').show()
n = 10
df.select('avg_wind_speed_9am').take(n)

通常在pyspark中查询数据帧,而不是单个列,因此要查询单个列,您需要使用:

df.select(<list_of_cols>),其中<list_of_cols>是您案例中的单个列。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64741585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档