热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【Python数据分析基础笔记(仅供本人学习记录)】时间日期转换实例

importpandasaspdfromdatetimeimportdatetime#导入股票数据dfpd.read_excel('p:\data\沪深股票股本变动数据.



import pandas as pd
from datetime import datetime
#导入股票数据
df = pd.read_excel('p:\data\沪深股票股本变动数据.xlsx',
sheet_name='sharedata')

#查看df中每个字段数据类型,发现df['日期']是int64
print(df.info())


RangeIndex: 65865 entries, 0 to 65864
Data columns (total 15 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 市场类型 65865 non-null object
1 股票代码 65865 non-null object
2 日期 65865 non-null int64
3 变动类型 65865 non-null object
4 每10股票分红(元) 26897 non-null float64
5 配股价(元) 26897 non-null float64
6 每10股票送几股 26897 non-null float64
7 每10股票配几股 26897 non-null float64
8 前流通盘 38936 non-null float64
9 后流通盘 38936 non-null float64
10 前总股本 38936 non-null float64
11 后总股本 38936 non-null float64
12 浓缩比例 8 non-null float64
13 份数 24 non-null float64
14 行权价 24 non-null float64
dtypes: float64(11), int64(1), object(3)
memory usage: 7.5+ MB
None

#将int转换成str
df_date = df['日期'].apply(str)
#用to_datetime()函数将字符串转换成时间格式,并增加'时间'字段
df['时间'] = pd.to_datetime(df_date,format='%Y/%m/%d')
print(df['时间'])

0 1990-03-01
1 1990-09-27
2 1990-09-27
3 1991-02-26
4 1991-03-12
...
65860 2016-12-31
65861 2016-12-31
65862 2016-12-31
65863 2016-12-31
65864 2016-12-31
Name: 时间, Length: 65865, dtype: datetime64[ns]

#将日期格式化,并增加'格式化日期'字段
df['格式化日期1'] = df.时间.apply(lambda x: datetime.
strftime(x, format='%Y-%m-%d'))
df['格式化日期2'] = df.时间.dt.strftime('%Y-%m-%d')
print(df['格式化日期1'],'\n',df['格式化日期2'])

0 1990-03-01
1 1990-09-27
2 1990-09-27
3 1991-02-26
4 1991-03-12
...
65860 2016-12-31
65861 2016-12-31
65862 2016-12-31
65863 2016-12-31
65864 2016-12-31
Name: 格式化日期1, Length: 65865, dtype: object
0 1990-03-01
1 1990-09-27
2 1990-09-27
3 1991-02-26
4 1991-03-12
...
65860 2016-12-31
65861 2016-12-31
65862 2016-12-31
65863 2016-12-31
65864 2016-12-31
Name: 格式化日期2, Length: 65865, dtype: object

#抽取'时间'字段中的值
df['时间.年'] = df['时间'].dt.year
df['时间.月'] = df['时间'].dt.month
df['时间.周'] = df['时间'].dt.weekday
df['时间.日'] = df['时间'].dt.day
df['时间.时'] = df['时间'].dt.hour
df['时间.分'] = df['时间'].dt.minute
df['时间.秒'] = df['时间'].dt.second
print(df['时间.年'],df['时间.月'],df['时间.周'],df['时间.日'])
print(df['时间.时'],df['时间.分'],df['时间.秒'])

0 1990
1 1990
2 1990
3 1991
4 1991
...
65860 2016
65861 2016
65862 2016
65863 2016
65864 2016
Name: 时间.年, Length: 65865, dtype: int64 0 3
1 9
2 9
3 2
4 3
..
65860 12
65861 12
65862 12
65863 12
65864 12
Name: 时间.月, Length: 65865, dtype: int64 0 3
1 3
2 3
3 1
4 1
..
65860 5
65861 5
65862 5
65863 5
65864 5
Name: 时间.周, Length: 65865, dtype: int64 0 1
1 27
2 27
3 26
4 12
..
65860 31
65861 31
65862 31
65863 31
65864 31
Name: 时间.日, Length: 65865, dtype: int64
0 0
1 0
2 0
3 0
4 0
..
65860 0
65861 0
65862 0
65863 0
65864 0
Name: 时间.时, Length: 65865, dtype: int64 0 0
1 0
2 0
3 0
4 0
..
65860 0
65861 0
65862 0
65863 0
65864 0
Name: 时间.分, Length: 65865, dtype: int64 0 0
1 0
2 0
3 0
4 0
..
65860 0
65861 0
65862 0
65863 0
65864 0
Name: 时间.秒, Length: 65865, dtype: int64











推荐阅读
  • 如何将Python与Excel高效结合:常用操作技巧解析
    本文深入探讨了如何将Python与Excel高效结合,涵盖了一系列实用的操作技巧。文章内容详尽,步骤清晰,注重细节处理,旨在帮助读者掌握Python与Excel之间的无缝对接方法,提升数据处理效率。 ... [详细]
  • 本文详细介绍了如何使用Python的多进程技术来高效地分块读取超大文件,并将其输出为多个文件。通过这种方式,可以显著提高读取速度和处理效率。 ... [详细]
  • 本文详细介绍了如何使用 Python 进行主成分分析(PCA),包括数据导入、预处理、模型训练和结果可视化等步骤。通过具体的代码示例,帮助读者理解和应用 PCA 技术。 ... [详细]
  • 利用python爬取豆瓣电影Top250的相关信息,包括电影详情链接,图片链接,影片中文名,影片外国名,评分,评价数,概况,导演,主演,年份,地区,类别这12项内容,然后将爬取的信息写入Exce ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • 大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式
    大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式 ... [详细]
  • SSAS入门指南:基础知识与核心概念解析
    ### SSAS入门指南:基础知识与核心概念解析Analysis Services 是一种专为决策支持和商业智能(BI)解决方案设计的数据引擎。该引擎能够为报告和客户端应用提供高效的分析数据,并支持在多维数据模型中构建高性能的分析应用。通过其强大的数据处理能力和灵活的数据建模功能,Analysis Services 成为了现代 BI 系统的重要组成部分。 ... [详细]
  • 如何使用mysql_nd:Python连接MySQL数据库的优雅指南
    无论是进行机器学习、Web开发还是爬虫项目,数据库操作都是必不可少的一环。本文将详细介绍如何使用Python通过 `mysql_nd` 库与 MySQL 数据库进行高效连接和数据交互。内容涵盖以下几个方面: ... [详细]
  • Python多线程详解与示例
    本文介绍了Python中的多线程编程,包括僵尸进程和孤儿进程的概念,并提供了具体的代码示例。同时,详细解释了0号进程和1号进程在系统中的作用。 ... [详细]
  • C#实现文件的压缩与解压
    2019独角兽企业重金招聘Python工程师标准一、准备工作1、下载ICSharpCode.SharpZipLib.dll文件2、项目中引用这个dll二、文件压缩与解压共用类 ... [详细]
  • 本文介绍如何使用 Python 的 DOM 和 SAX 方法解析 XML 文件,并通过示例展示了如何动态创建数据库表和处理大量数据的实时插入。 ... [详细]
  • 利用REM实现移动端布局的高效适配技巧
    在移动设备上实现高效布局适配时,使用rem单位已成为一种流行且有效的技术。本文将分享过去一年中使用rem进行布局适配的经验和心得。rem作为一种相对单位,能够根据根元素的字体大小动态调整,从而确保不同屏幕尺寸下的布局一致性。通过合理设置根元素的字体大小,开发者可以轻松实现响应式设计,提高用户体验。此外,文章还将探讨一些常见的问题和解决方案,帮助开发者更好地掌握这一技术。 ... [详细]
  • 利用ZFS和Gluster实现分布式存储系统的高效迁移与应用
    本文探讨了在Ubuntu 18.04系统中利用ZFS和Gluster文件系统实现分布式存储系统的高效迁移与应用。通过详细的技术分析和实践案例,展示了这两种文件系统在数据迁移、高可用性和性能优化方面的优势,为分布式存储系统的部署和管理提供了宝贵的参考。 ... [详细]
  • 利用Python进行学生学业表现评估与成绩预测分析
    利用Python进行学生学业表现评估与成绩预测分析 ... [详细]
author-avatar
dendfengg_566
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有