Pandas文本數據處理與時間序列

字符文本
Pandas提供了一組字符串函數,可以方便地對字符串數據進行操作。 最重要的是,這些函數忽略NaN值。以下的這些方法幾乎都支持Python內置的字符串函數。Pandas的一些方法都支持正則表達式,比如下面的replace(),可以多多嘗試/xyx。

函數名 描述
lower() 將Series/Index中的字符串轉換爲小寫。
upper() 將Series/Index中的字符串轉換爲大寫。
len() 計算字符串長度。
strip() 幫助從兩側的系列/索引中的每個字符串中刪除空格(包括換行符)。
split(’’) 用給定的模式拆分每個字符串。
cat(sep=’ ') 使用給定的分隔符連接系列/索引元素。
get_dummies() 返回具有單熱編碼值的數據幀(DataFrame)。
contains(pattern) 如果元素中包含子字符串,則返回每個元素的布爾值True,否則爲False。
replace(a,b) 將值a替換爲值b。
repeat(value) 重複每個元素指定的次數。
count(pattern) 返回模式中每個元素的出現總數。
startswith(pattern) 如果系列/索引中的元素以模式開始,則返回true。
endswith(pattern) 如果系列/索引中的元素以模式結束,則返回true。
find(pattern) 返回模式第一次出現的位置。
findall(pattern) 返回模式的所有出現的列表。
swapcase() 變換字母大小寫。
islower() 檢查系列/索引中每個字符串中的所有字符是否小寫,返回布爾值
isupper() 檢查系列/索引中每個字符串中的所有字符是否大寫,返回布爾值
isnumeric() 檢查系列/索引中每個字符串中的所有字符是否爲數字,返回布爾值。

上述的方法按需汲取即可,唯一要注意的是,在選擇以後注意使用str轉化爲字符串,這樣纔有效。
比如

import pandas
df = pd.DataFrame({'name':['jack','MIKE']})
df['name'] = df['name'].str.upper() #全部轉化爲大寫

時間序列
可以使用pd.date_range(start=None, end=None, periods=None, freq='D')生成時間範圍。

  • start和end以及freq配合能夠生成start和end範圍內以頻率freq的一組時間索引
  • start和periods以及freq配合能夠生成從start開始的頻率爲freq的periods個時間索引

freq的可取值:
參數說明
代碼演示

import numpy as np
import pandas as pd
index1 = pd.date_range('2020-05-14',freq="D",periods=5)
df = pd.DataFrame(np.random.rand(5),index=index1)
index2=pd.date_range('2020-6-16 12:45',freq="T",periods=5)
ndf = pd.DataFrame(np.random.rand(5),index=index2)

結果截圖
結果截圖

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章