python - pyspark - 'DataFrame' 对象没有属性 'map'
问题描述
我有以下数据集摘要,在 databricks 上使用 pyspark
订单月年 | 销售额 |
---|---|
2012-11-01T00:00:00.000+0000 | 473760.5700000001 |
2010-04-01T00:00:00.000+0000 | 490967.0900000001 |
我在将 OrderMonthYear 转换为整数类型时遇到此映射函数的数据帧错误
results = summary.map(lambda r: (int(r.OrderMonthYear.replace('-','')), r.SaleAmount)).toDF(["OrderMonthYear","SaleAmount"])
有任何想法吗?
AttributeError: 'DataFrame' object has no attribute 'map'
解决方案
在这里找到解决方案Pyspark date yyyy-mmm-dd 转换
from datetime import datetime
from pyspark.sql.functions import col, unix_timestamp, from_unixtime, date_format
from pyspark.sql.types import DateType
df = summary.withColumn('date', from_unixtime(unix_timestamp("OrderMonthYear", 'yyyy-MMM')))
df2 = df.withColumn("new_date_str", date_format(col("date"), "yyyyMMdd"))
display(df2)
谢谢@mck 的帮助!干杯
推荐阅读
- jboss - 如何改善由于 ManagedBean 中的许多 @Inject 而导致的缓慢
- java - 如何在java中检查重复/相同值的条件
- c++ - 在图像顶部模拟天体(恒星)
- django - django>=1.7 django.setup() 正在提高 AppRegistryNotReady
- visual-studio - 运行时的 Visual Studio 热键检测
- reactjs - AutocompleteArrayInput 显示空白条目
- c++ - 具有相对路径的 CMake 安装目标
- c++ - C++:在多个文件中定义类
- python - 继承中带/不带下划线的python变量
- vbscript - crt.Dialog.FileOpenDialog([title, [buttonLabel, [defaultFilename, [filter ]]]])