手动创建带有日期列的数据框
Manually create dataframe with date column
我正在阅读 pyspark 文档中的示例代码
https://spark.apache.org/docs/latest/api/python/pyspark.sql.html#pyspark.sql.SQLContext
在示例代码中,它创建了一个像这样的数据框
df = spark.createDataFrame([('2015-04-08',)], ['dt'])
df.select(add_months(df.dt, 1).alias('next_month')).collect()
[Row(next_month=datetime.date(2015, 5, 8))]
我想知道为什么'2015-04-08'后面必须有一个逗号,而只有一列。我觉得它可能与元组类型有关,但想了解更多。
单元元组有额外的逗号(',') 与算术表达式(1) 区别。下面的例子应该更清楚。
空气表达:
a = (1)
type(a)
#int
只有一个元素的元组:
b = (1,)
type(b)
#tuple
你可以用空括号定义零元素元组。
zero_element_tuple = ()
type(zero_element_tuple)
#tuple
只有单元素元组需要加逗号(',')来用算术表达式区分,多元素元组末尾不需要加逗号
我正在阅读 pyspark 文档中的示例代码
https://spark.apache.org/docs/latest/api/python/pyspark.sql.html#pyspark.sql.SQLContext
在示例代码中,它创建了一个像这样的数据框
df = spark.createDataFrame([('2015-04-08',)], ['dt'])
df.select(add_months(df.dt, 1).alias('next_month')).collect()
[Row(next_month=datetime.date(2015, 5, 8))]
我想知道为什么'2015-04-08'后面必须有一个逗号,而只有一列。我觉得它可能与元组类型有关,但想了解更多。
单元元组有额外的逗号(',') 与算术表达式(1) 区别。下面的例子应该更清楚。
空气表达:
a = (1)
type(a)
#int
只有一个元素的元组:
b = (1,)
type(b)
#tuple
你可以用空括号定义零元素元组。
zero_element_tuple = ()
type(zero_element_tuple)
#tuple
只有单元素元组需要加逗号(',')来用算术表达式区分,多元素元组末尾不需要加逗号