利用numpy和pandas處理csv文件中的時間方法
環(huán)境:numpy,pandas,python3
在機器學(xué)習(xí)和深度學(xué)習(xí)的過程中,對于處理預(yù)測,回歸問題,有時候變量是時間,需要進(jìn)行合適的轉(zhuǎn)換處理后才能進(jìn)行學(xué)習(xí)分析,關(guān)于時間的變量如下所示,利用pandas和numpy對csv文件中時間進(jìn)行處理。
date (UTC) Price 01/01/2015 0:00 48.1 01/01/2015 1:00 47.33 01/01/2015 2:00 42.27
#coding:utf-8
import datetime
import pandas as pd
import numpy as np
import pickle
#用pandas將時間轉(zhuǎn)為標(biāo)準(zhǔn)格式
dateparse = lambda dates: pd.datetime.strptime(dates,'%d/%m/%Y %H:%M')
#將時間欄合并,并轉(zhuǎn)為標(biāo)準(zhǔn)時間格式
rawdata = pd.read_csv('RealMarketPriceDataPT.csv',parse_dates={'timeline':['date','(UTC)']},date_parser=dateparse)
#定義一個將時間轉(zhuǎn)為數(shù)字的函數(shù),s為字符串
def datestr2num(s):
#toordinal()將時間格式字符串轉(zhuǎn)為數(shù)字
return datetime.datetime.strptime(s,'%Y-%m-%d %H:%M:%S').toordinal()
x = []
y = []
new_date = []
for i in range(rawdata.shape[0]):
x_convert = int(datestr2num(str(rawdata.ix[i,0])))
new_date.append(x_convert)
y_convert = rawdata.ix[i,1].astype(np.float32)
x.append(x_convert)
y.append(y_convert)
x = np.array(x).astype(np.float32)
"""
with open('price.pickle','wb') as f:
pickle.dump((x,y),f)
"""
print(datetime.datetime.fromordinal(new_date[0]),'------>>>>>>',new_date[0])
print(datetime.datetime.fromordinal(new_date[10]),'------>>>>>>',new_date[10])
print(datetime.datetime.fromordinal(new_date[20]),'------>>>>>>',new_date[20])
print(datetime.datetime.fromordinal(new_date[30]),'------>>>>>>',new_date[30])
print(datetime.datetime.fromordinal(new_date[40]),'------>>>>>>',new_date[40])
print(datetime.datetime.fromordinal(new_date[50]),'------>>>>>>',new_date[50])
結(jié)果
將csv文件中的時間欄合并為一列,并轉(zhuǎn)為方便數(shù)據(jù)分析的float或int類型

以上這篇利用numpy和pandas處理csv文件中的時間方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
基于Pyinstaller打包Python程序并壓縮文件大小
這篇文章主要介紹了基于Pyinstaller打包Python程序并壓縮文件大小,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-05-05
python scrapy拆解查看Spider類爬取優(yōu)設(shè)網(wǎng)極細(xì)講解
本篇博客為你帶來 scrapy.Spider 模塊中的相關(guān)函數(shù)與類,帶你再一次認(rèn)識 scrapy 的細(xì)節(jié)。本次采集的目標(biāo)站點為:優(yōu)設(shè)網(wǎng),有需要的朋友可以借鑒參考下2021-11-11
Python爬蟲獲取數(shù)據(jù)保存到數(shù)據(jù)庫中的超詳細(xì)教程(一看就會)
使用爬蟲爬數(shù)據(jù),總要涉及到數(shù)據(jù)持久化,也就是數(shù)據(jù)存儲的問題,下面這篇文章主要給大家介紹了關(guān)于Python爬蟲獲取數(shù)據(jù)保存到數(shù)據(jù)庫中的超詳細(xì)教程,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-06-06
python requests庫爬取豆瓣電視劇數(shù)據(jù)并保存到本地詳解
這篇文章主要介紹了python requests庫爬取豆瓣電視劇數(shù)據(jù)并保存到本地詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-08-08
Python基于WebSocket實現(xiàn)簡易屏幕共享工具
這篇文章主要為大家詳細(xì)介紹了Python如何基于WebSocket實現(xiàn)簡易屏幕共享工具,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-01-01

