新聞中心
數(shù)據(jù)處理是數(shù)據(jù)分析過(guò)程中至關(guān)重要的一步。而在這個(gè)過(guò)程中,讀取數(shù)據(jù)庫(kù)中的數(shù)據(jù)往往占用了很大的時(shí)間和精力。為了簡(jiǎn)化數(shù)據(jù)處理過(guò)程,提高數(shù)據(jù)處理效率,Python數(shù)據(jù)處理庫(kù)Pandas提供了讀取數(shù)據(jù)庫(kù)的功能,使得讀取數(shù)據(jù)庫(kù)中的數(shù)據(jù)變得輕松簡(jiǎn)便。

成都創(chuàng)新互聯(lián)專注于額濟(jì)納網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供額濟(jì)納營(yíng)銷型網(wǎng)站建設(shè),額濟(jì)納網(wǎng)站制作、額濟(jì)納網(wǎng)頁(yè)設(shè)計(jì)、額濟(jì)納網(wǎng)站官網(wǎng)定制、小程序制作服務(wù),打造額濟(jì)納網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供額濟(jì)納網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。
一、Pandas簡(jiǎn)介
Pandas是一個(gè)強(qiáng)大的Python數(shù)據(jù)處理庫(kù),提供了快速、靈活和豐富的數(shù)據(jù)結(jié)構(gòu)。Pandas的主要數(shù)據(jù)結(jié)構(gòu)是Series和DataFrame,它們分別對(duì)應(yīng)于一維的序列和二維的表格。Pandas的優(yōu)點(diǎn)是在于既支持?jǐn)?shù)據(jù)分析和數(shù)據(jù)處理所需的特性,還具有很好的性能和內(nèi)存使用率。
二、Pandas讀取數(shù)據(jù)庫(kù)的方法
Pandas提供了read_sql()函數(shù)來(lái)輕松讀取數(shù)據(jù)庫(kù)中的數(shù)據(jù)。這個(gè)函數(shù)接收兩個(gè)必需參數(shù):SQL語(yǔ)句和數(shù)據(jù)庫(kù)連接。其中SQL語(yǔ)句定義了要獲取哪些數(shù)據(jù),而數(shù)據(jù)庫(kù)連接則通過(guò)Python標(biāo)準(zhǔn)庫(kù)中的sqlachemy來(lái)創(chuàng)建。
read_sql()函數(shù)會(huì)返回一個(gè)DataFrame對(duì)象,這個(gè)對(duì)象包含了查詢結(jié)果中的所有數(shù)據(jù)??梢詫⑦@個(gè)DataFrame對(duì)象用于數(shù)據(jù)清洗、數(shù)據(jù)分析、數(shù)據(jù)可視化等操作中。
下面是一個(gè)讀取MySQL數(shù)據(jù)庫(kù)的示例代碼:
“` python
from sqlalchemy import create_engine
import pandas as pd
engine = create_engine(‘mysql://username:password@host:port/database_name’)
sql_query = ‘SELECT * FROM table_name’
df = pd.read_sql(sql_query, engine)
“`
這個(gè)代碼片段中的engine是用來(lái)創(chuàng)建連接的對(duì)象,將會(huì)通過(guò)MySQL連接來(lái)獲得數(shù)據(jù)。sql_query則是要執(zhí)行的SQL語(yǔ)句。最后通過(guò)read_sql()函數(shù)來(lái)獲取數(shù)據(jù)。
三、Pandas讀取數(shù)據(jù)庫(kù)的示例
下面是一個(gè)讀取SQLite數(shù)據(jù)庫(kù)的示例代碼:
“` python
from sqlalchemy import create_engine
import pandas as pd
engine = create_engine(‘sqlite:///database_name.db’)
sql_query = ‘SELECT * FROM table_name’
df = pd.read_sql(sql_query, engine)
“`
這個(gè)代碼片段中的engine對(duì)象是用來(lái)連接SQLite數(shù)據(jù)庫(kù)的。sql_query將會(huì)執(zhí)行查詢語(yǔ)句。最后通過(guò)read_sql()函數(shù)來(lái)獲取查詢結(jié)果。
四、Pandas讀取數(shù)據(jù)庫(kù)的注意事項(xiàng)
在使用Pandas讀取數(shù)據(jù)庫(kù)時(shí)需要注意以下幾點(diǎn):
1. 要先安裝相應(yīng)的數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序。例如要讀取MySQL數(shù)據(jù)庫(kù),則需要安裝MySQL數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序。
2. 要掌握SQL語(yǔ)句的語(yǔ)法,以便正確地查詢所需數(shù)據(jù)。
3. 查詢結(jié)果的大小和內(nèi)存使用率要注意,避免內(nèi)存不足導(dǎo)致程序崩潰。
4. 要根據(jù)實(shí)際情況來(lái)選擇合適的數(shù)據(jù)庫(kù)類型和存儲(chǔ)方式,以便更好地存儲(chǔ)和查詢數(shù)據(jù)。
五、
Pandas是一個(gè)強(qiáng)大的Python數(shù)據(jù)處理庫(kù),提供了豐富的數(shù)據(jù)處理工具。Pandas提供的read_sql()函數(shù)可以幫助我們輕松地讀取數(shù)據(jù)庫(kù)中的數(shù)據(jù),從而簡(jiǎn)化數(shù)據(jù)處理流程,提高數(shù)據(jù)處理效率。要注意語(yǔ)法和內(nèi)存使用率,特別是在處理大量數(shù)據(jù)時(shí)需要格外關(guān)注。因此,掌握Pandas讀取數(shù)據(jù)庫(kù)的方法和注意事項(xiàng)是數(shù)據(jù)處理的必修課。
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián),建站經(jīng)驗(yàn)豐富以策略為先導(dǎo)10多年以來(lái)專注數(shù)字化網(wǎng)站建設(shè),提供企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),響應(yīng)式網(wǎng)站制作,設(shè)計(jì)師量身打造品牌風(fēng)格,熱線:028-86922220Python + Pandas + Matplotlib初探數(shù)據(jù)分析
大數(shù)據(jù)測(cè)試,說(shuō)來(lái)進(jìn)入這塊領(lǐng)域也快2年半了。每天工作的內(nèi)容是驗(yàn)證數(shù)據(jù)表的邏輯正確性。
最近偶有所思,數(shù)據(jù)測(cè)試能否更進(jìn)一步?如何利用已有技能對(duì)海量數(shù)據(jù)進(jìn)行全面分析,找出數(shù)據(jù)質(zhì)量問(wèn)題或協(xié)助數(shù)據(jù)分析師發(fā)現(xiàn)邏輯漏洞?
再或者,能否向數(shù)據(jù)分析師轉(zhuǎn)型呢?想得很多,思緒有些雜亂。于是我冷靜了下,不再空想。我先做點(diǎn)東西出來(lái)看看,再評(píng)估下自己是否有這個(gè)能力和資質(zhì)。
花了1個(gè)星期的時(shí)間,學(xué)習(xí)了 Python 的 Pandas 模塊,按照學(xué)習(xí)示例一邊學(xué)習(xí)一邊實(shí)操,慢慢地感覺(jué)就來(lái)了。對(duì) Pandas 有了基本的認(rèn)知后,我在尋找一個(gè)突破點(diǎn),我想我不能一直只是這樣按照示例代碼敲下去,毫無(wú)意義。
我得將所學(xué)的 Pandas 知識(shí)結(jié)合公司現(xiàn)有的業(yè)務(wù)進(jìn)行運(yùn)用。剛開始至少能簡(jiǎn)單地開始對(duì)某張數(shù)據(jù)表的某個(gè)指標(biāo)進(jìn)行數(shù)據(jù)分析。于是我按照這樣的想法對(duì) test. test_resv001_room_daily_df 表的 number_of_room_nights 指標(biāo)開始了數(shù)據(jù)分析的 探索 。
1、hivesql數(shù)據(jù)準(zhǔn)備
hivesql內(nèi)容說(shuō)明:
從上面的 hivesql 語(yǔ)句可以看出,這條 sql 的目的是查詢出 hotel_code_new 為 ‘CNSZV002′,’CWH’,’CWSW’,’ESL’,’FIJ’ 在2023年各個(gè)月份的 number_of_room_nights 指標(biāo)總和,按照 hotel_code_new 和月份作分組和排序。
2、代碼實(shí)現(xiàn)
3、hive數(shù)據(jù)庫(kù)all_data的數(shù)據(jù)結(jié)構(gòu)查詢結(jié)果
4、代碼實(shí)現(xiàn)2中的print(df)輸出結(jié)果
手工校對(duì)通過(guò),與 hivesql 輸出結(jié)果一致。
5、將dataframe數(shù)據(jù)結(jié)構(gòu)的df數(shù)據(jù)使用plot生成趨勢(shì)圖
調(diào)用df.plot()不帶任何參數(shù)的趨勢(shì)圖如下:
上述折線圖表示:當(dāng)前月份值及 歷史 月份值的累加和。
調(diào)用df.plot(kind=’bar’)時(shí)加上參數(shù)kind=’bar’的趨勢(shì)圖如下:
上述柱狀圖表示:當(dāng)前月份值及 歷史 月份值的累加和。
兩個(gè)圖只是展示形式上的區(qū)別,都能在一定程度上體現(xiàn)2023年12個(gè)月份每個(gè)不同 hotel_code_new 當(dāng)前月份與 歷史 月份 number_of_room_nights 值的累加和的數(shù)據(jù)分布情況,可以說(shuō)是一個(gè)簡(jiǎn)單的數(shù)據(jù)分析。
6、將dataframe數(shù)據(jù)寫入csv文件
room_nts.csv內(nèi)容如下:
7、讀取csv文件中dataframe數(shù)據(jù)
8、將dataframe多維數(shù)據(jù)存儲(chǔ)到excel中
room_nts.xlsx文件中sheet_name為room_nts的內(nèi)容如下:
9、從excel中讀取dataframe多維數(shù)據(jù)
小結(jié)
今天分享的數(shù)據(jù)分析內(nèi)容比較基礎(chǔ),主要是將學(xué)到的技能與業(yè)務(wù)相結(jié)合的初步 探索 ,后續(xù)還需要不斷 探索 與學(xué)習(xí),將學(xué)習(xí)到的技能加以思考并運(yùn)用到實(shí)際項(xiàng)目業(yè)務(wù)中,如此方能走得更遠(yuǎn)。
數(shù)據(jù)分析師用哪個(gè)數(shù)據(jù)庫(kù)比較好?
作為一個(gè)數(shù)據(jù)分析師來(lái)回答一下:
我做這行兩年多了,剛開始的時(shí)候用的多是MySQL數(shù)據(jù)庫(kù),當(dāng)然,Oracle數(shù)據(jù)庫(kù)也會(huì)用到,尤其是在金融行業(yè)或者國(guó)企都用Oracle,一般的公司使用MySQL數(shù)據(jù)庫(kù),可能是因?yàn)镸ySQL數(shù)據(jù)庫(kù)免費(fèi)吧。另外,在一家互數(shù)沖聯(lián)網(wǎng)公司,我遇到了mongodb,目前一些新興燃畢備的互聯(lián)網(wǎng)公司使用nosql的也比較多,這個(gè)當(dāng)時(shí)是現(xiàn)學(xué)現(xiàn)賣的。作為一個(gè)數(shù)據(jù)分析師,可能對(duì)數(shù)據(jù)庫(kù)的使用一般是存取數(shù)據(jù),至于更高級(jí)別的優(yōu)化、事務(wù)之類的,一般是使用不到的,有專門的數(shù)據(jù)庫(kù)人員,我們只要用好數(shù)據(jù)庫(kù)就好。
說(shuō)道數(shù)據(jù)分析或者數(shù)據(jù)挖掘,除了數(shù)據(jù)庫(kù)來(lái)存取數(shù)據(jù),我們還需要處理數(shù)據(jù)的工具,最趁手的當(dāng)然是Python了。Python結(jié)合數(shù)據(jù)庫(kù)是日常的code,Python也提供了齊備的工具,針對(duì)MySQL的有pymysql庫(kù),和oracle結(jié)合有cx_Oracle庫(kù),和mongodb結(jié)合有pymongo庫(kù),另外當(dāng)然少不了我們的數(shù)據(jù)分析利器pandas庫(kù)了,提供了read_sql函數(shù),支持各種數(shù)據(jù)庫(kù),直接讀取成DataFrame的數(shù)據(jù)格式,十分的方便。
總結(jié)一下就是:其實(shí)遇到的大多數(shù)都是MySQL,oracle也有,這兩種都是sql語(yǔ)句,差別不大,只要掌握sql語(yǔ)句,這兩個(gè)數(shù)據(jù)庫(kù)問(wèn)題都不大,mongodb是新興的非關(guān)系數(shù)據(jù)庫(kù),語(yǔ)句也不是很復(fù)雜,之間上手工作也是無(wú)壓力的。結(jié)合Python中的pandas使用,讓你很溜的處理數(shù)據(jù),數(shù)據(jù)分析也就得心應(yīng)手了,小case了。皮毀
pandas 讀取數(shù)據(jù)庫(kù)的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于pandas 讀取數(shù)據(jù)庫(kù),Pandas輕松讀取數(shù)據(jù)庫(kù),簡(jiǎn)化數(shù)據(jù)處理,Python + Pandas + Matplotlib初探數(shù)據(jù)分析,數(shù)據(jù)分析師用哪個(gè)數(shù)據(jù)庫(kù)比較好?的信息別忘了在本站進(jìn)行查找喔。
成都創(chuàng)新互聯(lián)科技有限公司,經(jīng)過(guò)多年的不懈努力,公司現(xiàn)已經(jīng)成為一家專業(yè)從事IT產(chǎn)品開發(fā)和營(yíng)銷公司。廣泛應(yīng)用于計(jì)算機(jī)網(wǎng)絡(luò)、設(shè)計(jì)、SEO優(yōu)化、關(guān)鍵詞排名等多種行業(yè)!
網(wǎng)站標(biāo)題:Pandas輕松讀取數(shù)據(jù)庫(kù),簡(jiǎn)化數(shù)據(jù)處理(pandas讀取數(shù)據(jù)庫(kù))
當(dāng)前網(wǎng)址:http://m.fisionsoft.com.cn/article/dpdpgog.html


咨詢
建站咨詢
