資料清洗之資料轉換 日期格式 字串 高階函式

2022-03-30 09:07:33 字數 3200 閱讀 9010

in [ ]:

import numpy as np

import pandas as pd

in [ ]:

import os

os.chdir(r'f:\csdn\課程內容\**和資料')

in [ ]:

df = pd.read_csv('baby_trade_history.csv', encoding='utf-8',dtype=)

in [ ]:

df.head(10)

in [ ]:

# 對購買日期進行轉換,將文字格式轉化為日期格式

df['buy_date'] = pd.to_datetime(df['day'],format='%y%m%d',errors = 'coerce')#加errors防止報錯

df.info

in [ ]:

df.dtypes

in [ ]:

# da ta time64格式的資料可以提取對應年月日,必須為timestamp才可以,具體的時間點

df['buy_date'].dt.year

in [ ]:

# 對時間進行計算

df['diff_day'] = pd.datetime.now() - df2['birthday']

in [ ]:

df['diff_day'].head(5)

in [ ]:

# 時間差由天數,小時和毫秒構成

in [ ]:

# timedelta可以理解為時間差型別(當且僅當資料型別是datatime64或timedelta64)

df['diff_day'].dt.days# 提取天數

in [ ]:

df['diff_day'].dt.seconds# 提取秒數

in [ ]:

df['diff_day'].dt.microseconds# 提取毫秒數

in [ ]:

# 可以使用pd.timedelta進行轉換

df['時間差'] = df['diff_day']/pd.timedelta('1 d') #轉換為天數

in [ ]:

df['時間差'] = df['diff_day']/pd.timedelta('1 m') #轉換為分鐘

in [ ]:

df['時間差'].head(5)

in [ ]:

df['時間差'].round(decimals=3)# 科學計數轉化為顯示為3小數

in [ ]:轉化

df['diff_day'].astype('timedelta64[d]')# 這種方式也可以,m  代表月份數,d代表天數,y代表年份

in [ ]:

df1 = pd.read_csv('motorcycledata.csv',encoding='gbk')#電單車資訊

in [ ]:

df1.head(5)

in [ ]:取price這個字串裡面的前1~4個字元

df1['price'].str[0:4]# 字串切片

in [ ]:

df1['price'].astype(float)

in [ ]:

# 之間轉換直接報錯,需要進行字串處理

去除某些符號

df1['**'] = df1['price'].str.strip('$')#字串相關方法

in [ ]:替換某些符號

df1['**'] = df1['**'].str.replace(',','')

in [ ]:

df1['**'] = df1['**'].astype(float)#  轉換為float資料

in [ ]:

df1.model.head(5)

in [ ]:

df1['location'].str.split(',') # 使用字串分割,用於對文字的處理,將這個字串按照指定的符號分割,返回乙個list

in [ ]:

df1['mileage'].str.len() #計算字串長度,獲取當前標籤的每個資料的長度

in [ ]:

df2 = pd.read_csv('sam_tianchi_mum_baby.csv',encoding = 'utf-8',dtype =str)#嬰兒資訊

in [ ]:

def f(x):

if '0' in x:

return '女'

elif '1' in x :

return '男'

else:

return '未知'

in [ ]:

# 0代表女,1代表男,2代表未知

in [ ]:

df2.head(4)

df2[df2['gender']=='2']#選擇2這個性別的所有資料

in [ ]:

#使用map函式對映

df2['性別'] = df2['gender'].map()

df2['性別'] = df2['gender'].map(f)

in [ ]:

in [ ]:

in [ ]:

資料清洗之資料轉換

1.日期格式資料處理 import numpy as np import pandas as pd import os os.chdir r f csdn 課程內容 和資料 df pd.read csv baby trade history.csv encoding utf 8 dtype df.h...

python日期資料清洗 資料清洗之微博時間清洗

資料清洗之微博時間清洗 爬取微博的時候時間格式比較亂,存到資料庫要統一成datatime型別,所以需要用到對時間的轉換 這裡是對time模組和datetime的模組的使用。對於當天的有三種 40秒前 50分鐘前 今天 08 12 針對這三種,第一步要做的是獲取當前的年月日 import dateti...

資料清洗之資料清洗概述

從廣泛的意義上來講,資料是乙個寬泛的概念,包括但不限於 我們要了解資料清洗,就需理解資料的內涵和外延 常見的資料有 其中,比較重要比較常見的分析資料是 資料。這裡重點介紹一些關於 資料的內容。資料 資料物件由屬性 attributes 及其值 value 構成 資料的特徵 什麼是資料清洗 資料清洗是...