pyspark里怎么把一列日期转成是全年的第几周?

  统计/机器学习 数据预处理 Python sql    浏览次数:311        分享
0

比如有一列日期,是yyyy-mm-dd格式的字符,我想把它转成第几星期,比如2020-01-13就是第3周。

想要的效果是:

2020-01-13 ===== 3

2020-01-15 ===== 3

2020-01-29 ===== 5

2020-02-07 ===== 6


 

ysz_2020   2020-03-20 09:01



   2个回答 
3

pyspark的函数里有date_format,可以让日期变为week of year

from pyspark.sql import functions as F

把日期dt这列变成第几周的代码是

F.date_format(F.col('dt'), 'w')

然后得到的数就是表示是该年度中的第几周

SofaSofa数据科学社区DS面试题库 DS面经

baozi   2020-03-29 20:20

0


df2 = pd.DataFrame({'date':['2020-01-21 10:20:23', '2020-01-22 11:20:23', '2020-02-21 10:50:33']})
df2['date3']=pd.to_datetime(df2.date).dt.weekofyear

SofaSofa数据科学社区DS面试题库 DS面经

constant007   2020-03-28 18:14

你这个是pandas,题目里应该问的是pyspark - baozi   2020-03-29 20:17


  相关主题

spark里怎么refresh表?   3回答

spark sql里怎么用case when?   1回答

pyspark里怎么把类似‘yyyy-mm-dd‘的字符串转成星期几的形式?   1回答

怎么对pyspark.sql.dataframe按照某一列降序排列?   1回答

pyspark返回每个分组某个值最大的行   1回答

pyspark中怎么对dataframe里的行按照列去重?   1回答

SparkML里线性回归底层是什么原理?   1回答

返回pyspark dataframe的行数?   1回答

spark ml和spark mllib区别   5回答

得到一个pyspark.sql.dataframe中所有列的名称   2回答

sparkml里的word2vec是基于哪种模型的?   1回答

怎么对pyspark dataframe更改列名   2回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!