先來(lái)給上一個(gè)階段定下的任務(wù)做一個(gè)小總結(jié)
1.在Mysql方面,對(duì)變量賦值更加熟悉了李破,常見(jiàn)的排名問(wèn)題也擁有了解題的能力蒲讯;
2.把Mysq經(jīng)典45道題也復(fù)刷了一遍,對(duì)題目的思路和解法已經(jīng)比較熟練了呵哨。
但也發(fā)現(xiàn)了新的問(wèn)題:對(duì)于時(shí)間函數(shù)的還是不太熟悉。
3.第三階段的知識(shí)已經(jīng)學(xué)習(xí)完了轨奄。在練習(xí)題中孟害,1-5題都沒(méi)有問(wèn)題,6-10題在題目的理解和解法的理解上有點(diǎn)模糊挪拟。
第三階段知識(shí)總結(jié)
在這個(gè)階段中挨务,我把知識(shí)分成三大部分:anaconda&jupyter notebook、pands玉组、numpy
anaconda&jupyter notebook
anaconda
理解:anaconda是開(kāi)源的python版本谎柄,用于搭建虛擬環(huán)境
jupyter notebook
理解:jupyter notebook是anaconda自帶的一個(gè)編寫(xiě)筆記本,本質(zhì)上是一個(gè)文檔惯雳。
操作::功能:Cell(代碼)朝巫、Markdown(編寫(xiě)文本)、Raw NBConvert(文本和代碼都不會(huì)被執(zhí)行)
? ? ? ? ? ? ? ? ? ? ?? heading(標(biāo)題)
?知識(shí)點(diǎn):命令模式與編輯模式快捷鍵掌握石景、Markdown語(yǔ)法
pandas
理解:用于進(jìn)行數(shù)據(jù)分析的模塊捍歪,擁有對(duì)數(shù)據(jù)可視化的功能。
操作分為兩個(gè)部分:pandas操作鸵钝、DataFrame&Series操作
pandas操作:
1.文件讀炔诰省:read_文件格式(文件路徑)
2.數(shù)據(jù)查詢:查詢行:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? 函數(shù):loc[索引] 、iloc[位置] ? ? ? ? ? #loc函數(shù)索引范圍左閉右閉恩商,iloc ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 函數(shù)索引范圍左閉右開(kāi)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 方法:行索引变逃、切片、bool類型怠堪,指定列查詢行
知識(shí)點(diǎn):loc函數(shù)以索引查詢揽乱,iloc以位置查詢
? ? ? ? ? ? ? ? ? ? 查詢列:語(yǔ)法:dataframe['列']
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? 方法:列索引、切片粟矿、bool類型
? ? ? ? ? ? ? ? ? ?? 查詢每列數(shù)據(jù)類型:列.info
注:切片查詢凰棉、bool類型查詢中,行陌粹、列呈現(xiàn)的效果一樣
? ? ? ? ? ? ? ? ? ? 查詢行列:函數(shù):loc[行索引撒犀,列索引]
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 方法:索引、切片、條件查詢
3.數(shù)據(jù)拼接:concat([表或舞,表])
4.數(shù)據(jù)關(guān)聯(lián):merge(表荆姆,表)
5.數(shù)據(jù)分組:groupby('列')
6.聚合函數(shù)的使用:max()、min()映凳、mean()胆筒、std()等等
7.與數(shù)據(jù)庫(kù)的連接
知識(shí)點(diǎn):函數(shù)里常用的參數(shù)! ? ? ??
DataFrame操作
1.表創(chuàng)建:函數(shù): pandas.DataFrame(表)
? ? ? ? ? ? ? ? ? 用法:多維列表創(chuàng)建诈豌、數(shù)組字典創(chuàng)建()
2.常用操作:查詢行索引:index
? ? ? ? ? ? ? ? ? ?? 查詢列索引:columns
? ? ? ? ? ? ? ? ? ?? 修改列索引:columns=()仆救、rename(columns={})
? ? ? ? ? ? ? ? ? ?? 修改行索引:set_index(‘列’)
3.數(shù)據(jù)預(yù)覽:預(yù)覽數(shù)據(jù)屬性:info()
? ? ? ? ? ? ? ? ? ?? 預(yù)覽數(shù)據(jù)內(nèi)數(shù)值的屬性:describe()
4.查詢:從頭開(kāi)始查詢:head() ? #默認(rèn)只輸出五行
? ? ? ? ? ? ? 從尾開(kāi)始查詢:tail() ? ?? #默認(rèn)輸出五行 ? ??
? ? ? ? ? ? ? 數(shù)據(jù)總量:size
? ? ? ? ? ? ?? 字段類型:dtypes
? ? ? ? ? ? ?? 行數(shù)量:shape[1] ? ? ? ? #0為列,1為行 ? ? ? ? ? ?
? ? ? ? ? ? ? ? 修改數(shù)據(jù):replace()矫渔、map()?
? ? ? ? ? ? ? ? 查詢某列的值:unique() ?
? ? ? ? ? ? ? ? 查詢某列值的數(shù)量:nunique()
? ? ? ? ? ? ? ? 查詢某列某值出現(xiàn)次數(shù):value_counts()
? ? ? ? ? ? ? ? 排序:索引排序:sort_index(索引列) ? ? ? ? ?? #參數(shù)ascending決定排序方向彤蔽,True為升序,False為 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? 倒序
? ? ? ? ? ? ? ? ? ? ? ? ?? 數(shù)據(jù)排序:sort_values(列)
5.聚合函數(shù)使用:max()蚌斩、min()、mean()范嘱、sum()送膳、comsum()等等
6.增加&刪除:增加一列:DataFrame['名字']=數(shù)據(jù)
? ? ? ? ? ? ? ? ? ? ? ? 刪除一列 del 、drop(labels=行)
知識(shí)點(diǎn):魔法函數(shù)丑蛤、函數(shù)的參數(shù)叠聋!
Series操作
1.創(chuàng)建:pandas.Series([數(shù)據(jù)])
2.自定義索引:pandas.Series([數(shù)據(jù)],index=[])
2.轉(zhuǎn)換至DataFrame:to_frame()
3.轉(zhuǎn)置 ?? .T
numpy操作
理解:用于矩陣的創(chuàng)建
操作:
1.矩陣創(chuàng)建:array([數(shù)據(jù)}) ? ? ? ? #矩陣內(nèi)數(shù)據(jù)類型是統(tǒng)一的
?? 快速創(chuàng)建:填充指定值:full([矩陣大小],填充值)
? ? ? ? ? ? ? ? ? ?? 填充0值:zeros()
? ? ? ? ? ? ? ? ? ?? 填充1值:ones()
? ? 序列矩陣創(chuàng)建:arange(beigin,end受裹,步長(zhǎng)) ? ? ? #范圍左閉右開(kāi)
? ? 創(chuàng)建以隨機(jī)數(shù)為數(shù)據(jù)的矩陣:random.random(矩陣大新挡埂) ?? #數(shù)據(jù)默認(rèn)默認(rèn)范圍為-1,1
? ? 平均劃分矩陣:linspace(beigin棉饶,end厦章,劃分?jǐn)?shù))
? 2.查詢:索引查詢:矩陣名[行索引,列索引] ? ? ? ? ?? #索引范圍左閉右開(kāi)
? ? ? ? ? ? ? ? 切片查詢:矩陣名[行索引或切片照藻,列索引]
? ? ? ? ? ? ? ? 知識(shí)點(diǎn):data[[0:1],[0:1]] ? ? ? ?? 輸出:第一行第一列與第二行第二列的值
? ? ? ? ? ? ? ? bool查詢
3.查看矩陣屬性:數(shù)據(jù)類型:dtypes
? ? ? ? ? ? ? ? ? ? ? ? ? ? 數(shù)據(jù)類型轉(zhuǎn)換:astype(類型)
4.聚合函數(shù):求和:sum(axis=) ? ? ?? #axis=0為行袜啃,axis=1為列
? ? ? ? ? ? ? ? ? ?? 求指數(shù):exp(矩陣名)
? ? ? ? ? ? ? ? ? ?? 求開(kāi)方:sqrt(矩陣名)
5.矩陣轉(zhuǎn)換:多維轉(zhuǎn)一維:矩陣名.ravel()
6.擴(kuò)展:tile(矩陣,(擴(kuò)展大行衣啤))
7.拼接與分割:拼接:
? ? ? ? ? ? ? ? ? ? ? ? 水平拼接:hstack((矩陣群发,矩陣))
? ? ? ? ? ? ? ? ? ? ? ?? 豎直拼接:vstack((矩陣,矩陣))
? ? ? ? ? ? ? ? ? ? ? ?? 分割:
? ? ? ? ? ? ? ? ? ? ? ?? 豎直分割:hsplit(矩陣发乔,分割數(shù)量)
? ? ? ? ? ? ? ? ? ? ? ? ? 水平分割:vsplit(矩陣熟妓,分割數(shù)量)
?本階段總結(jié)
本階段的學(xué)習(xí)主要還是熟悉好語(yǔ)法以及對(duì)參數(shù)的理解與熟悉
下階段計(jì)劃
1.Mysql方面復(fù)刷leetcode簡(jiǎn)單、中等題目栏尚,復(fù)習(xí)時(shí)間函數(shù)起愈;
2.視內(nèi)容量,每天復(fù)習(xí)一到兩篇第三階段知識(shí)的筆記;
3.完成并熟悉理解第三階段的6-10題作業(yè)
4.完成學(xué)習(xí)第四階段知識(shí)告材。