數據分析——python基礎

前言:python數據分析的基礎知識,簡單總結,主要是爲了方便本身寫的時候查看(大家可能看不太清楚T^T),發現有用的方法,隨時補充,歡迎指正

數據分析專欄:python

  1. 數據分析——python基礎
  2. 數據分析——numpy
  3. 數據分析——pandas
  4. 數據分析——數據可視化
  5. 數據分析——數據處理實例

python基礎

一、三種基本數據類型

1.1列表

基礎形式git

表示:List=[1,2,3]
索引:List[0]=1;List[:1]=[1,2];List[-1]=3

經常使用函數web

一、append添加一個元素
	List.append(2)
	
二、insert插入
	List.insert(1,2)在索引爲1的位置增長2
	
三、remove刪除
	List.remove(1)刪除元素1
	
四、count計數
	List.count(1)輸出1出現的次數
	
五、index位置索引
	List.index(1)輸出1的位置
	
六、reverse倒序
	List.reverse()倒序輸出
	
七、sort排序
	List.sort(reverse=True)降序輸出
	List.sort(reverse=False)升序輸出

1.2元組

cell=(1,2,3)--->不可像列表同樣更改,索引等方法與列表相似

1.3字典

基礎形式正則表達式

dict={'name'='Tom','age'='13'}
以鍵名進行索引,沒有像列表同樣的排序,能夠認爲是無序的
dict['name']=Tom

經常使用函數app

一、增長、修改
	其實增長和修改有不少方式,我這裏主要講兩種方式:
	經過鍵直接修改、增長
		dict['sex']='male'//若是存在sex就修改,不存在就增長
	update函數
		dict.update({'name'='Try'})//同樣,若是存在name就修改,不存在就增長
		
二、get得到鍵值
	dict.get('name')
	
三、dict.keys()輸出全部的鍵

四、dict.values()輸出全部的值

五、dict.items()輸出全部鍵值對
#字典沒有直接統計函數,能夠用for循環+get統計,或者轉換爲df

二、判斷、循環

  • if語句
if a>1:(無括號)
		****
	elif a<0:
		****
	else:
		****
  • while語句
while ****:(無括號)
		******
  • for語句
for i in range(1,6):(無括號)
		******
	for i in List:
		******

三、字符串

3.1經常使用函數

一、str[start:end:step]切片

二、split分割
	str='Try is so handsome'
	str.split('i')---->['Try ','s so handsome']
	
三、join拼接
	'-'.join('Try')---->T-r-y
	
四、count計數
	str.count('t')輸出t出現的次數
	
五、刪除空白strip、lstrip、rstrip
	str.strip()刪除首尾空白
	
六、index索引位置
    str.index('t')輸出t的位置,可能會報錯
    
七、find找尋字串,不會報錯(推薦使用)
若是包含子字符串返回開始的索引值,不然返回-1

八、統計字符串字母、數字的個數
    s=input("please inupt string") 
    print(s.isdigit()) #用isdigit函數判斷是否數字 
    print(s.isalpha()) #isalpha判斷是否字母 
    print(not (s.isalpha() or s.isdigit()) and s.isalnum()) #isalnum判斷是否數字和字母的組合

3.2正則表達式

符號 含義
. 匹配任意字符串,除了\n
| 轉義符,保留字符串中的特殊元字符
[ ] 字符組
\d 匹配任意數字
\s 匹配空白字符
\w 匹配字母和下劃線
* 匹配前一個字符組0到無窮
+ 匹配前一個字符組1到無窮
匹配前一個字符組0到1

還有不少這裏不一一列舉!(正則表達式很重要)
補充:svg

一、findall函數
是找尋函數
re.findall()匹配的時候若是有括號,只能取到括號裏面的內容,多個括號返回列表

二、search函數
re.search()函數將對整個字符串進行搜索,並返回第一個匹配的字符串的match對象

三、match函數
從頭匹配,不匹配返回None

四、compile函數
compile 函數用於編譯正則表達式,生成一個正則表達式( Pattern )對象
pattern = re.compile(r'\d+') 
 m = pattern.match('one12twothree34four')

【注】re.search()和re.match()函數返回match對象包括分組時,group(0)返回【完整匹配】的字符串,group(1)及以上分別返回各分組字符串。groups()函數返回各分組組成的元組對象
注:(.*?)匹配任意字符串

四、 函數

函數主要是參數的問題:
一、必選參數
必需要賦值的參數,不然調用函數報錯函數

二、默認參數
函數已經賦值的參數,不可更改.net

三、可變參數指針

如add(*args)--->這裏的*args就是可變參數,能夠接受多個實參(如列表,能夠簡單的相似指針)

四、關鍵字參數code

add(**kwargs)----->這個就是針對字典的,**kwargs既能夠接受多個實參,還能夠把多個實參指定各自的實參名(這不就是字典嗎???!)
相關文章
相關標籤/搜索