Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.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
Apache spark pyspark.sql.functions.from_utc_timestamp(timestamp,tz)的语法错误_Apache Spark_Pyspark - Fatal编程技术网

Apache spark pyspark.sql.functions.from_utc_timestamp(timestamp,tz)的语法错误

Apache spark pyspark.sql.functions.from_utc_timestamp(timestamp,tz)的语法错误,apache-spark,pyspark,Apache Spark,Pyspark,我尝试从utc时间戳(timestamp,tz)导入pyspark.sql.functions。我们如何使用此模块将历元时间中的一组值转换为spark中的UTC?一些示例代码(取自文档,并进行了修改)来完成您想要的操作: >>> from pyspark.sql.functions import from_utc_timestamp >>> df = sqlContext.createDataFrame([('1997-02-28 10:30:00',)],

我尝试从utc时间戳(timestamp,tz)导入
pyspark.sql.functions。我们如何使用此模块将历元时间中的一组值转换为spark中的UTC?

一些示例代码(取自文档,并进行了修改)来完成您想要的操作:

>>> from pyspark.sql.functions import from_utc_timestamp
>>> df = sqlContext.createDataFrame([('1997-02-28 10:30:00',)], ['t'])
>>> df.select(from_utc_timestamp(df.t, "PST").alias('t')).collect()
[Row(t=datetime.datetime(1997, 2, 28, 2, 30))]
一些示例代码(取自文档,并进行了修改)可以实现您想要的功能:

>>> from pyspark.sql.functions import from_utc_timestamp
>>> df = sqlContext.createDataFrame([('1997-02-28 10:30:00',)], ['t'])
>>> df.select(from_utc_timestamp(df.t, "PST").alias('t')).collect()
[Row(t=datetime.datetime(1997, 2, 28, 2, 30))]

你能详细说明一下你试过的代码吗?您建议导入
pyspark.sql.functions.from_utc_timestamp(timestamp,tz)
,这是一个函数调用,因此python无效(语法错误)哦!然后是的,我尝试从utc时间戳(timestamp,tz)导入pyspark.sql.functions.from。我已经在问题中添加了额外的代码。我已经用pyspark文档中的一些代码回答了问题,这些代码具有导入函数的适当代码。您可以详细介绍一下您尝试的代码吗?您建议导入
pyspark.sql.functions.from_utc_timestamp(timestamp,tz)
,这是一个函数调用,因此python无效(语法错误)哦!然后是的,我尝试从utc时间戳(timestamp,tz)导入pyspark.sql.functions.from。我已经在问题中添加了额外的代码。我已经用pyspark文档中的一些代码回答了这个问题,并提供了导入函数的适当代码。谢谢!成功了。但是现在我得到了一个错误:df=sqlContext.createDataFrame(logLine,['t'])说TypeError:无法推断类型的模式:type'unicode'我的文件只包含5个历元时间值。logLine是什么类型的?它是UTC时间戳元组的数组吗?它的形式应该是
[列1的Tuple\u,列2的Tuple\u,…]
其中
列1的Tuple\u
类似于
('1994-05-18 12:30:00','1997-02-28 10:30:00','2007-05-02 1:30:00',…)
。如果它已经是一个文本文件,您可能需要使用
sc.textFile
。我建议你对与本主题无关的问题提出新的SO问题,谢谢!成功了。但是现在我得到了一个错误:df=sqlContext.createDataFrame(logLine,['t'])说TypeError:无法推断类型的模式:type'unicode'我的文件只包含5个历元时间值。logLine是什么类型的?它是UTC时间戳元组的数组吗?它的形式应该是
[列1的Tuple\u,列2的Tuple\u,…]
其中
列1的Tuple\u
类似于
('1994-05-18 12:30:00','1997-02-28 10:30:00','2007-05-02 1:30:00',…)
。如果它已经是一个文本文件,您可能需要使用
sc.textFile
。我建议您针对与本主题无关的问题提出新的SO问题