pyspark 修改python版本_python – Pyspark从日期到字符串更改列的类型
我有以下数据帧:
corr_temp_df
[('vacationdate', 'date'),
('valueE', 'string'),
('valueD', 'string'),
('valueC', 'string'),
('valueB', 'string'),
('valueA', 'string')]
现在我想将列vacationdate的数据类型更改为String,这样数据帧也会采用这种新类型并覆盖所有条目的数据类型数据.例如.写完后:
corr_temp_df.dtypes
应该覆盖vacationdate的数据类型.
我已经使用了诸如cast,StringType或astype之类的函数,但我没有成功.你知道怎么做吗?
解决方法:
让我们创建一些虚拟数据:
import datetime
from pyspark.sql import Row
from pyspark.sql.functions import col
row = Row("vacationdate")
df = sc.parallelize([
row(datetime.date(2015, 10, 07)),
row(datetime.date(1971, 01, 01))
]).toDF()
如果Spark> = 1.5.0,您可以使用date_format函数:
from pyspark.sql.functions import date_format
(df
.select(date_format(col("vacationdate"), "dd-MM-YYYY")
.alias("date_string"))
.show())
在Spark< 1.5.0可以使用Hive UDF完成:
df.registerTempTable("df")
sqlContext.sql(
"SELECT date_format(vacationdate, 'dd-MM-YYYY') AS date_string FROM df")
它当然仍然可以在Spark> = 1.5.0中使用.
如果您不使用HiveContext,则可以使用UDF模仿date_format:
from pyspark.sql.functions import udf, lit
my_date_format = udf(lambda d, fmt: d.strftime(fmt))
df.select(
my_date_format(col("vacationdate"), lit("%d-%m-%Y")).alias("date_string")
).show()
标签:python,apache-spark,pyspark,apache-spark-sql
来源: https://codeday.me/bug/20191001/1837960.html
pyspark 修改python版本_python – Pyspark从日期到字符串更改列的类型相关推荐
- PySpark之Python版本如何选择(详细版)
问题背景 公司目前有两套Spark集群和一套Hadoop集群用来做 数据相关的存储和计算.Hadoop的版本是2.7,Spark两套集群,一个是2.1.0版本,一个是 2.4.3版本.但是两个Spar ...
- colab修改python版本
在使用出colab进行模型训练时,发现colab的python版本更新为了3.7.11,而我的代码要在python3.6下才行配置好环境,于是,开始修改python版本,并配置环境. 1.使用如下命令 ...
- pysparkpython版本_pyspark修改python版本
ubuntu自带的python 版本是2.7, 我们要把pyspark默认改成anaconda python 3.6 down vot You can specify the version of P ...
- mac修改默认python版本_Mac系统修改Python版本软链接
通常Mac系统自带Python版本都是2.x,但在工作中,越来越多的库,框架都需要更高的版本3.x,有三种升级方式,一种是Brew安装,一种是在Python官网下载,还有一种是使用第三方软件,如Ana ...
- python antlr4需要的python 版本_python多版本管理器pyenv
查看Linux版本 1[root@web ~]# cat /etc/redhat-release 2CentOS Linux release 7.6.1810 (Core) 3[root@web ~] ...
- 有多个python版本_python 多版本共存
有时候需要在同一台机器上安装多个版本的python 常见的解决方式如下: 一. 1. 下载python2.7和python3.7,然后在C盘下新建一个Python文件夹, python2.7安装到 ...
- anaconda对应python版本_Python基础——如何查看python版本、如何查看多个python版本
前言 初学者来说,安装python过程是存在一定难度的. 在安装过程中,可能安装了多个python版本,可能安装了anaconda导致有自带的python,同时本身电脑也安装了官方下载的python也 ...
- linux修改python版本修改哪个配置文件_linux安装python修改默认python版本方法
linux默认是安装了python,默认是安装python2.6.6,可能安装的版本是不能符合我们需要的python要求的.我们需要重新安装python的版本,今天演示一下安装python3 首先下载 ...
- cpickle支持的python版本_Python cPickle模块(转)
持久性就是指保持对象,甚至在多次执行同一程序之间也保持对象.通过本文,您会对 Python对象的各种持久性机制(从关系数据库到 Python 的 pickle以及其它机制)有一个总体认识.另外,还会让 ...
最新文章
- 全球及中国生物医药产业供给需求前景与运营风险分析报告2022版
- java检测tomcat宕机_Tomcat意外宕机分析
- 梯度算法的matlab程序,基于MATLAB的梯度法源代码
- HTML+CSS+JS实现 ❤️流星天体动画场景特效❤️
- 转:flex [Inspectable]标签详解
- 圆弧裁剪算法c++_箍筋算法之争:按外皮长度计算与按中心线长度计算究竟相差多少?...
- python while循环例题_【学习笔记】python:5for循环与while循环(上)
- 单机部署RabbltMQ环境的操作记录
- NameError: name 'reload' is not defined等python版本问题解决方案
- Mysql基于Linux上的安装
- 真来了!已有高校正式通知:排查近5年硕博学位论文!
- js获取服务器控件DropDownList所选中的各项属性
- Cinema 4D R25 for mac(c4d r25)快捷键分享
- 【C/C++】LibVLC库在逐帧提取的开发中回调设置帧格式
- 硬石-专题04 步进电机控制(第1节)_步进电机基本知识介绍1
- dell主板恢复出厂设置_DELL戴尔电脑BIOS怎么恢復初始状态
- 【KITTI】KITTI数据集简介(四) — 标定校准数据calib
- 2021年中国农作物播种面积、农作物成灾面积及造成直接经济损失情况分析[图]
- MxDraw云图平台(H5网页CAD) 2022.11.15更新
- 程序员女朋友的相册是这样的
热门文章
- jQuery学习--选择器的使用
- 抽象类-(抽象类的样子)
- Des与3Des加密解密
- 【STM32】IIC的基本原理(实例:普通IO口模拟IIC时序读取24C02)(转载)
- IOS 修改UIAlertController的按钮标题的字体颜色,字号,内容
- 06-CABasicAnimation基础核心动画
- git reflog and checkout
- Java中间件:淘宝网系统高性能利器
- redis 登录_Redis集群架构+Dubbo开发框架+SSO单点登录+Nginx+ZooKeeper
- linux c 指针和内存分配内存,linux-C基础系列-内存管理(野指针).md