关于pandas 读CSV遇到时间戳的转换(不会缺失精度)

关于pandas 读CSV遇到object类型的时间的转换(不会缺失精度)

pandas 读CSV遇到时间戳的转换时间字符串

# 时间戳转时间字符串   timestemp--转--object
def stamp2time(timestamp):  # 时间戳转日期函数time_local = time.localtime(timestamp / 1000)dt = time.strftime("%Y-%m-%d %H:%M:%S", time_local)return dtdf = pd.read_csv("data.csv")
df["timestamp"] = df["timestamp"].apply(stamp2time)
pirnt(df.info())

现在的时间列变成了object(也就是pandas中字符串)格式

pandas普通时间字符串转换成datetime时间格式

# object--转--datetime64
df['timestamp'] = pd.to_datetime(df['timestamp'])

经过to_datetime函数后的字段从object格式转换为datetime64格式

pandas时间字符串转换成datetime时间格式(不会丢失精度)

丢失精度的问题

        一般的情况下objec转datetime只需要使用to_datetime即可,然而有的时候会发现,对于有些CSV文件这样做会使转换后的时间与愿时间不对照,也就是发生了精度的丢失。

例如:当前的时间是这样的

经过to_datetime之后变成了这样

可以发现时间列与原数据发生了变化,猝不及防的bug产生了!!!

解决办法

from dateutil.parser import parsedf_pre = pd.read_csv("data.csv")
# 这种方式转化时间不会丢失精度  object---转---datetime64
df_pre['timestamp'] = df_pre['timestamp'].apply(parse)
print(df_pre.info())
print(df_pre)

这样就可以解决丢失精度的问题,转换后的时间格式一致:

pandas 读CSV时间转换问题的终极解决相关推荐

  1. pandas 读csv文件 TypeError: Empty 'DataFrame': no numeric data to plot

    简单的代码,利用pandas模块读csv数据文件,这里有两种方式,一种是被新版本pandas遗弃的Series.from_csv:另一种就是pandas.read_csv 先说一下问题这个问题就是在读 ...

  2. pandas处理mysql 展现wpf_Python:用Pandas读CSV文件写到MySQL

    汇总一下,自己最近在使用Python读写CSV存数据库中遇到的各种问题. 上代码: reload(sys) sys.setdefaultencoding('utf-8') host = '127.0. ...

  3. Pandas读csv,xlsx,XLS文件,读代表名的文件

    Pandas读文件 1.读取csv文件 2.读取xlsx,XLS文件 1.读取csv文件 读csv文件用pandas.read_csv() 这里要注意的是 " \ " 和" ...

  4. python读json文件json.decoder.JSONDecodeError终极解决大法

    json.decoder.JSONDecodeError终极解决大法 当你loads json文件时出现json.decoder.JSONDecodeError,可能是因为存储时值没有加双引号,可能是 ...

  5. python pandas csv getitem_Python调用pandas 读csv档时出现了错误

    错误如下 UnicodeDecodeError Traceback (most recent call last) in () 1 df = pd.read_table("city.csv& ...

  6. pandas 读csv 报错 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xca in position 0: invalid cont

    UnicodeDecodeError: 'utf-8' codec can't decode byte 0xca in position 0: invalid continuation byte 解码 ...

  7. pandas中的时间转换、时间差转换为总秒数

    相关函数 pd.to_datetime 把时间字符串转换为时间格式 pd.to_timedelta 可以把时间差转换为timedelta格式 dt.total_seconds() 可以计算时间差的总秒 ...

  8. pandas操作1(读csv不要索引/写csv不要索引/删除有空值行/按时间排序)

    pandas常用csv操作 读csv不要索引(index) 写csv不要索引 删除有空值的行 按时间排序 其他操作 读csv不要索引(index) 在使用pandas读csv(read_csv())时 ...

  9. pandas读取csv文件时报错的解决方式,你get到了吗?

    在用Jupyter Notebook编译python代码时,我想引入pandas模块对csv文件中的数据进行读取 代码如下: import pandas as pd data = pd.read_cs ...

最新文章

  1. java怎么改变数据类型_java数据类型之间的转换,是怎么回事啊? - 收获啦
  2. 【OpenCV3】模板匹配——cv::matchTemplate()详解
  3. 【AutoML】损失函数也可以进行自动搜索学习吗?
  4. 【NLP】jieba分词-Python中文分词领域的佼佼者
  5. numpy 之 np.diff函数
  6. 【模型训练-loss】模型训练过程中train, test loss的关系及原因
  7. php渐变字,jQuery_jQuery实现的立体文字渐变效果,先截两个图看看: 效果很 - phpStudy...
  8. android 编译主机,Android】源码编译 ---zzz
  9. sonarqube 启动不了,异常提示:远程主机强迫关闭了一个现有的连接
  10. 文件夹错误 分配句柄_重启数据库遇到错误ORA27154,ORA27300,ORA27301,ORA27302
  11. openwrt里面的高深代码-两行shell脚本
  12. 腾讯变革 150 天全记录
  13. go struct 零值_《Go 语言程序设计》读书笔记 (五) 协程与通道
  14. karto探秘之open_karto 第五章 --- 栅格地图的生成
  15. web前端大作业:游戏动漫网页设计(HTML+CSS+JavaScript)
  16. Python3制作百度文库免费下载器
  17. 终极单词index 排序 M-N
  18. 易课寄在线购课系统开发笔记(三)--数据库设计
  19. 常用PLC学习资料下载地址
  20. KL散度,互信息和JSD

热门文章

  1. rxswift 网络请求_使用RxSwift将身份验证请求链接到多个服务
  2. windows 快速搭建EMQ 教程
  3. [codeforces366C]Dima and Salad
  4. [论文阅读]Using the Output Embedding to Improve Language Models
  5. ubuntu篇---用官方pytorch-gpu版创建自己的镜像
  6. 北京号外科技-Python爬虫工程师
  7. 计算机网络与物联网工程专业大学排名,大学专业“薪酬”排名公布,物联网工程仅排第五,有你的专业吗...
  8. 亿赛通为航空航天产业搭建数据安全保障体系
  9. WIN7系统忘记密码怎么办?忘记开机密码的解决方法
  10. 猎头职场:混职场别败在嘴上