您好,登錄后才能下訂單哦!
本篇文章為大家展示了Python中怎么重寫SQL查詢,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。
如果電腦中沒(méi)有pandas包,則需要先安裝一下:
Conda install pandas
在這個(gè)階段,我們將使用著名的Kaggle泰坦尼克數(shù)據(jù)集:https://www.kaggle.com/c/titanic/data?select=test.csv。
安裝軟件包并下載數(shù)據(jù)后,需要將其導(dǎo)入Python環(huán)境中:
import pandas as pd titanic_df = pd.read_csv("titanic_test_data.csv")
我們將使用pandas數(shù)據(jù)框架來(lái)存儲(chǔ)數(shù)據(jù),還將用到各種pandas函數(shù)來(lái)操作數(shù)據(jù)框架。
SELECT, DISTINCT, COUNT, LIMIT
讓我們從經(jīng)常使用的簡(jiǎn)單SQL查詢開(kāi)始。
titanic_df [“ age”]。unique()將在此處返回唯一值的數(shù)組,因此需要使用len()來(lái)獲取唯一值的計(jì)數(shù)。
SELECT,WHERE,OR,AND,IN(有條件選擇)
現(xiàn)在你知道了如何以簡(jiǎn)單的方式探索數(shù)據(jù)框架,接著來(lái)嘗試一些條件吧(在SQL中是WHERE子句)。
如果只想從數(shù)據(jù)框架中選擇特定的列,則可以使用另一對(duì)方括號(hào)進(jìn)行選擇。注意,如果要選擇多列,則需要在方括號(hào)內(nèi)放置數(shù)組[“ name”,“ age”]。
isin()與SQL中的IN完全相同。要使用NOT IN,需要在Python中使用negation(?)來(lái)獲得相同的結(jié)果。
GROUP BY,ORDER BY,COUNT
GROUP BY和ORDER BY也是用來(lái)探索數(shù)據(jù)的流行SQL,讓我們?cè)赑ython中嘗試一下。
如果只想對(duì)COUNT進(jìn)行排序,可以將布爾值傳遞給sort_values函數(shù);如果想對(duì)多列進(jìn)行排序,則必須將布爾數(shù)組傳遞給sort_values函數(shù)。sum()函數(shù)將提供數(shù)據(jù)框架中的所有聚合數(shù)值總和列,如果只需要特定列,則需要使用方括號(hào)指定列名。
MIN,MAX,MEAN,MEDIAN
最后,來(lái)嘗試一些常見(jiàn)的統(tǒng)計(jì)功能,這些功能對(duì)于數(shù)據(jù)探索非常重要。
上述內(nèi)容就是Python中怎么重寫SQL查詢,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。