第一個“當”功能結果的發布錯誤消息(見圖片)。print語句df_td_amm計數的作品。“df_td_amm”數據幀的printSchema證實,“年齡”是一個列。一個select語句也是成功的,所以想知道為什麼列不是“當”功能的訪問。我試著df_td_amm引用列。年齡和得到同樣的錯誤。
我試著在其他兩個小dataframes不使用熊貓和創建遇到同樣的錯誤。另外兩個多列dataframes,“當”功能工作正常引用的列。
熊貓作為pd導入導入pyspark。從pyspark.sql sql。函數從pyspark.sql進口*。類型導入*個月=列表(範圍(26))pdf = pd。DataFrame(月,列=[‘年齡’])df_td_amm = spark.createDataFrame (pdf) .cache()打印(df_td_amm.count ()) df_age_bucket = df_td_amm \ .withColumn時(“COMPOUNDING_FREQ \(坳(“年齡”)< = 3,“00-03月”)當(坳(“年齡”)< = 6,“04-06月”)當(坳(“年齡”)< = 9,“07-09月”),其他(“其他”))顯示(df_age_bucket)