• pandas中使用to_datetime()方法將文字格式轉換為日期格式
• dataframe資料型別如果為datetime64,可以使用dt方法取出年月日等
• 對於時間差資料,可以使用timedelta函式將其轉換為指定時間單位的數值
• 時間差資料,可以使用dt方法訪問其常用屬性
sec_cars[
'boarding_time'
]= pd.to_datetime(sec_cars[
'boarding_time'])
sec_cars[
'diff_day'
]= pd.datetime.today(
)- sec_cars['boarding_time』]
sec_cars['boarding_time』]
.dt.year
sec_cars['diff_day』]
/pd.timedelta(『1 hour』)
timedelta.dt.days
# 對購買日期進行轉換
df['buy_date'
]= pd.to_datetime(df[
'day'],
format
='%y%m%d'
,errors =
'coerce'
)#加errors防止報錯
# 可以提取對應年月日,必須為timestamp才可以,具體的時間點
df['buy_date'
].dt.year.head(
5)
• pandas中提供了字串的函式,但只能對字元型變數進行使用
• 通過str方法訪問相關屬性
• 可以使用字串的相關方法進行資料處理
函式名稱
說明contains()
返回表示各str是否含有指定模式的字串
replace()
替換字串
lower()
返回字串的副本,其中所有字母都轉換為小寫
upper()
返回字串的副本,其中所有字母都轉換為大寫
split()
返回字串中的單詞列表
strip()
刪除前導和後置空格
join()
返回乙個字串,該字串是給定序列中所有字串的連線
• 可以使用astype函式對資料進行轉換
• 可以使用map函式進行資料轉換
f1 =
lambda x:
str(x)
.strip(
)and
str(x)
.replace(
',',『』)
farmer_loan[
'貸款餘額'
]= farmer_loan[
'貸款餘額'].
(f1)
farmer_loan[
'貸款發放金額'
]= farmer_loan[
'貸款發放金額'
].astype(
float
) farmer_loan[
'id'
]= farmer_loan[
'戶主身份證號'].
(lambda x: x[0:
3])
#使用map函式
df2[
'性別'
]= df2[
'gender'].
map(
)#結合lambda替換
df2[
'user_id'].
(lambda x: x.replace(x[1:
3],'**'))
.head(5)
#提取年份
df2[
'birthday'].
(lambda x:
str(x)[0
:4])
.head(
5)
#定義函式
deff
(x):
if'0'
in x:
return
'女'elif
'1'in x :
return
'男'else
:return
'未知'
# 0代表女,1代表男,2代表未知
df2[
'性別'
]= df2[
'gender'].
(f)
記錄自:python資料清洗實戰:peter老師 python資料清洗學習筆記 檔案讀寫
前期準備 匯入os模組 import os 獲得當前路徑位址 os.getcwd 更改檔案路勁 os.chdir f python 資料清洗 和資料 設定最大顯示列數 pd.set option display.max columns 20 設定最大顯示行數 pd.set option displa...
python學習筆記(資料型別)
1,list 可以儲存各種資料型別甚至可以巢狀使用,使用方法同字串。用 賦值。元素可變。1 刪除操作 del 例如 list a b c del list 1 則此時的list為 a c 2 得到長度 len list 3 返回最大值最小值 max list min list 4 在結尾新增新物件 ...
Python學習筆記 資料型別
python的資料型別 分為整數,浮點數,字串,布林值,空值 python可以處理任意大小的整數,當然包括負整數,在python程式中,整數的表示方法和數學上的寫法一模一樣,例如 1,100,8080,0,等等。計算機由於使用二進位制,所以,有時候用十六進製制表示整數比較方便,十六進製製用0x字首和...