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

  统计/机器学习 数据预处理 Python sql    浏览次数:1276        分享
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


  相关主题

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

spark里怎么refresh表?   3回答

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

怎么在pyspark里把dataframe写入csv文件?   2回答

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

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

怎么用pyspark取出hive表里的json串中某一个key的值?   1回答

返回pyspark dataframe的行数?   1回答

pyspark获取当月的最后一天的日期?   1回答

pyspark dataframe的collect()方法是什么意思?   2回答

怎么对pyspark dataframe里的空缺值填值?   1回答

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



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

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

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

我们谢绝答非所问。

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

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