日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁(yè) > 科技  > 知識(shí)百科

十個(gè) Python 小技巧,覆蓋了90%的數(shù)據(jù)分析需求!

來(lái)源: 責(zé)編: 時(shí)間:2023-08-07 16:30:00 240觀看
導(dǎo)讀 數(shù)據(jù)分析師日常工作會(huì)涉及各種任務(wù),比如數(shù)據(jù)預(yù)處理、數(shù)據(jù)分析、機(jī)器學(xué)習(xí)模型創(chuàng)建、模型部署。在本文中,我將分享10個(gè) Python 操作,它們可覆蓋90%的數(shù)據(jù)分析問(wèn)題。有所收獲點(diǎn)贊

數(shù)據(jù)分析師日常工作會(huì)涉及各種任務(wù),比如數(shù)據(jù)預(yù)處理、數(shù)據(jù)分析、機(jī)器學(xué)習(xí)模型創(chuàng)建、模型部署。u6y28資訊網(wǎng)——每日最新資訊28at.com

在本文中,我將分享10個(gè) Python 操作,它們可覆蓋90%的數(shù)據(jù)分析問(wèn)題。有所收獲點(diǎn)贊、收藏、關(guān)注。u6y28資訊網(wǎng)——每日最新資訊28at.com

1、閱讀數(shù)據(jù)集u6y28資訊網(wǎng)——每日最新資訊28at.com

閱讀數(shù)據(jù)是數(shù)據(jù)分析的組成部分,了解如何從不同的文件格式讀取數(shù)據(jù)是數(shù)據(jù)分析師的第一步。下面是如何使用 pandas 讀取包含 Covid-19 數(shù)據(jù)的 csv 文件的示例。u6y28資訊網(wǎng)——每日最新資訊28at.com

import pandas as pd u6y28資訊網(wǎng)——每日最新資訊28at.com
# reading the countries_data file along with the location within read_csv function.u6y28資訊網(wǎng)——每日最新資訊28at.com
countries_df = pd.read_csv('C:/Users/anmol/Desktop/Courses/Python for Data Science/Code/countries_data.csv') u6y28資訊網(wǎng)——每日最新資訊28at.com
# showing the first 5 rows of the dataframe u6y28資訊網(wǎng)——每日最新資訊28at.com
countries_df.head()u6y28資訊網(wǎng)——每日最新資訊28at.com
u6y28資訊網(wǎng)——每日最新資訊28at.com
u6y28資訊網(wǎng)——每日最新資訊28at.com

以下是 countries_df.head() 的輸出,我們可以使用它查看數(shù)據(jù)框的前 5 行:u6y28資訊網(wǎng)——每日最新資訊28at.com

u6y28資訊網(wǎng)——每日最新資訊28at.com

2、匯總統(tǒng)計(jì)u6y28資訊網(wǎng)——每日最新資訊28at.com

下一步就是通過(guò)查看數(shù)據(jù)匯總來(lái)了解數(shù)據(jù),例如 NewConfirmed、TotalConfirmed 等數(shù)字列的計(jì)數(shù)、均值、標(biāo)準(zhǔn)偏差、分位數(shù)以及國(guó)家代碼等分類列的頻率、最高出現(xiàn)值u6y28資訊網(wǎng)——每日最新資訊28at.com

countries_df.describe()u6y28資訊網(wǎng)——每日最新資訊28at.com

使用 describe 函數(shù),我們可以得到數(shù)據(jù)集連續(xù)變量的摘要,如下所示:u6y28資訊網(wǎng)——每日最新資訊28at.com

u6y28資訊網(wǎng)——每日最新資訊28at.com

在 describe() 函數(shù)中,我們可以設(shè)置參數(shù)"include = 'all'"來(lái)獲取連續(xù)變量和分類變量的摘要u6y28資訊網(wǎng)——每日最新資訊28at.com

countries_df.describe(include = 'all')u6y28資訊網(wǎng)——每日最新資訊28at.com

u6y28資訊網(wǎng)——每日最新資訊28at.com

3、數(shù)據(jù)選擇和過(guò)濾u6y28資訊網(wǎng)——每日最新資訊28at.com

分析其實(shí)不需要數(shù)據(jù)集的所有行和列,只需要選擇感興趣的列并根據(jù)問(wèn)題過(guò)濾一些行。u6y28資訊網(wǎng)——每日最新資訊28at.com

例如,我們可以使用以下代碼選擇 Country 和 NewConfirmed 列:u6y28資訊網(wǎng)——每日最新資訊28at.com

countries_df[['Country','NewConfirmed']]u6y28資訊網(wǎng)——每日最新資訊28at.com

我們還可以將數(shù)據(jù)過(guò)濾Country,使用 loc,我們可以根據(jù)一些值過(guò)濾列,如下所示:u6y28資訊網(wǎng)——每日最新資訊28at.com

countries_df.loc[countries_df['Country'] == 'United States of America']u6y28資訊網(wǎng)——每日最新資訊28at.com

u6y28資訊網(wǎng)——每日最新資訊28at.com

4、聚合u6y28資訊網(wǎng)——每日最新資訊28at.com

計(jì)數(shù)、總和、均值等數(shù)據(jù)聚合,是數(shù)據(jù)分析最常執(zhí)行的任務(wù)之一。u6y28資訊網(wǎng)——每日最新資訊28at.com

我們可以使用聚合找到各國(guó)的 NewConfimed 病例總數(shù)。使用 groupby 和 agg 函數(shù)執(zhí)行聚合。u6y28資訊網(wǎng)——每日最新資訊28at.com

countries_df.groupby(['Country']).agg({'NewConfirmed':'sum'})5、Joinu6y28資訊網(wǎng)——每日最新資訊28at.com

使用 Join 操作將 2 個(gè)數(shù)據(jù)集組合成一個(gè)數(shù)據(jù)集。u6y28資訊網(wǎng)——每日最新資訊28at.com

例如:一個(gè)數(shù)據(jù)集可能包含不同國(guó)家/地區(qū)的 Covid-19 病例數(shù),另一個(gè)數(shù)據(jù)集可能包含不同國(guó)家/地區(qū)的緯度和經(jīng)度信息。u6y28資訊網(wǎng)——每日最新資訊28at.com

現(xiàn)在我們需要結(jié)合這兩個(gè)信息,那么我們可以執(zhí)行如下所示的連接操作u6y28資訊網(wǎng)——每日最新資訊28at.com

countries_lat_lon = pd.read_excel('C:/Users/anmol/Desktop/Courses/Python for Data Science/Code/countries_lat_lon.xlsx')u6y28資訊網(wǎng)——每日最新資訊28at.com
u6y28資訊網(wǎng)——每日最新資訊28at.com
# joining the 2 dataframe : countries_df and countries_lat_lonu6y28資訊網(wǎng)——每日最新資訊28at.com
# syntax : pd.merge(left_df, right_df, on = 'on_column', how = 'type_of_join')u6y28資訊網(wǎng)——每日最新資訊28at.com
joined_df = pd.merge(countries_df, countries_lat_lon, on = 'CountryCode', how = 'inner')u6y28資訊網(wǎng)——每日最新資訊28at.com
joined_df6、內(nèi)建函數(shù)u6y28資訊網(wǎng)——每日最新資訊28at.com

了解數(shù)學(xué)內(nèi)建函數(shù),如 min()、max()、mean()、sum() 等,對(duì)于執(zhí)行不同的分析非常有幫助。u6y28資訊網(wǎng)——每日最新資訊28at.com

我們可以通過(guò)調(diào)用它們直接在數(shù)據(jù)幀上應(yīng)用這些函數(shù),這些函數(shù)可以在列上或在聚合函數(shù)中獨(dú)立使用,如下所示:u6y28資訊網(wǎng)——每日最新資訊28at.com

# finding sum of NewConfirmed cases of all the countries u6y28資訊網(wǎng)——每日最新資訊28at.com
countries_df['NewConfirmed'].sum()u6y28資訊網(wǎng)——每日最新資訊28at.com
# Output : 6,631,899u6y28資訊網(wǎng)——每日最新資訊28at.com
u6y28資訊網(wǎng)——每日最新資訊28at.com
# finding the sum of NewConfirmed cases across different countries u6y28資訊網(wǎng)——每日最新資訊28at.com
countries_df.groupby(['Country']).agg({'NewConfirmed':'sum'})u6y28資訊網(wǎng)——每日最新資訊28at.com
u6y28資訊網(wǎng)——每日最新資訊28at.com
# Output u6y28資訊網(wǎng)——每日最新資訊28at.com
# NewConfirmedu6y28資訊網(wǎng)——每日最新資訊28at.com
#Country u6y28資訊網(wǎng)——每日最新資訊28at.com
#Afghanistan 75u6y28資訊網(wǎng)——每日最新資訊28at.com
#Albania 168u6y28資訊網(wǎng)——每日最新資訊28at.com
#Algeria 247u6y28資訊網(wǎng)——每日最新資訊28at.com
#Andorra 0u6y28資訊網(wǎng)——每日最新資訊28at.com
#Angola 537、用戶自定義函數(shù)u6y28資訊網(wǎng)——每日最新資訊28at.com

我們自己編寫的函數(shù)是用戶自定義函數(shù)。我們可以在需要時(shí)通過(guò)調(diào)用該函數(shù)來(lái)執(zhí)行這些函數(shù)中的代碼。例如,我們可以創(chuàng)建一個(gè)函數(shù)來(lái)添加 2 個(gè)數(shù)字,如下所示:u6y28資訊網(wǎng)——每日最新資訊28at.com

# User defined function is created using 'def' keyword, followed by function definition - 'addition()'u6y28資訊網(wǎng)——每日最新資訊28at.com
# and 2 arguments num1 and num2u6y28資訊網(wǎng)——每日最新資訊28at.com
def addition(num1, num2):u6y28資訊網(wǎng)——每日最新資訊28at.com
return num1+num2u6y28資訊網(wǎng)——每日最新資訊28at.com
u6y28資訊網(wǎng)——每日最新資訊28at.com
# calling the function using function name and providing the arguments u6y28資訊網(wǎng)——每日最新資訊28at.com
print(addition(1,2))u6y28資訊網(wǎng)——每日最新資訊28at.com
#output : 38、Pivotu6y28資訊網(wǎng)——每日最新資訊28at.com

Pivot 是將一列行內(nèi)的唯一值轉(zhuǎn)換為多個(gè)新列,這是很棒的數(shù)據(jù)處理技術(shù)。u6y28資訊網(wǎng)——每日最新資訊28at.com

在 Covid-19 數(shù)據(jù)集上使用 pivot_table() 函數(shù),我們可以將國(guó)家名稱轉(zhuǎn)換為單獨(dú)的新列:u6y28資訊網(wǎng)——每日最新資訊28at.com

# using pivot_table to convert values within the Country column into individual columns and u6y28資訊網(wǎng)——每日最新資訊28at.com
# filling the values corresponding to these columns with numeric variable - NewConfimed u6y28資訊網(wǎng)——每日最新資訊28at.com
pivot_df = pd.pivot_table(countries_df, columns = 'Country', values = 'NewConfirmed')u6y28資訊網(wǎng)——每日最新資訊28at.com
pivot_df9、遍歷數(shù)據(jù)框u6y28資訊網(wǎng)——每日最新資訊28at.com

很多時(shí)候需要遍歷數(shù)據(jù)框的索引和行,我們可以使用 iterrows 函數(shù)遍歷數(shù)據(jù)框:u6y28資訊網(wǎng)——每日最新資訊28at.com

# iterating over the index and row of a dataframe using iterrows() function u6y28資訊網(wǎng)——每日最新資訊28at.com
for index, row in countries_df.iterrows():u6y28資訊網(wǎng)——每日最新資訊28at.com
print('Index is ' + str(index))u6y28資訊網(wǎng)——每日最新資訊28at.com
print('Country is '+ str(row['Country']))u6y28資訊網(wǎng)——每日最新資訊28at.com
u6y28資訊網(wǎng)——每日最新資訊28at.com
# Output : u6y28資訊網(wǎng)——每日最新資訊28at.com
# Index is 0u6y28資訊網(wǎng)——每日最新資訊28at.com
# Country is Afghanistanu6y28資訊網(wǎng)——每日最新資訊28at.com
# Index is 1u6y28資訊網(wǎng)——每日最新資訊28at.com
# Country is Albaniau6y28資訊網(wǎng)——每日最新資訊28at.com
# .......10、字符串操作u6y28資訊網(wǎng)——每日最新資訊28at.com

很多時(shí)候我們處理數(shù)據(jù)集中的字符串列,在這種情況下,了解一些基本的字符串操作很重要。u6y28資訊網(wǎng)——每日最新資訊28at.com

例如如何將字符串轉(zhuǎn)換為大寫、小寫以及如何找到字符串的長(zhǎng)度。u6y28資訊網(wǎng)——每日最新資訊28at.com

# country column to upper caseu6y28資訊網(wǎng)——每日最新資訊28at.com
countries_df['Country_upper'] = countries_df['Country'].str.upper()u6y28資訊網(wǎng)——每日最新資訊28at.com
u6y28資訊網(wǎng)——每日最新資訊28at.com
# country column to lower caseu6y28資訊網(wǎng)——每日最新資訊28at.com
countries_df['CountryCode_lower']=countries_df['CountryCode'].str.lower()u6y28資訊網(wǎng)——每日最新資訊28at.com
u6y28資訊網(wǎng)——每日最新資訊28at.com
# finding length of characters in the country column u6y28資訊網(wǎng)——每日最新資訊28at.com
countries_df['len'] = countries_df['Country'].str.len()u6y28資訊網(wǎng)——每日最新資訊28at.com
u6y28資訊網(wǎng)——每日最新資訊28at.com
countries_df.head()u6y28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-119-2208-0.html十個(gè) Python 小技巧,覆蓋了90%的數(shù)據(jù)分析需求!

聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: 云安全日?qǐng)?bào)220308:Ubuntu Redis數(shù)據(jù)庫(kù)發(fā)現(xiàn)執(zhí)行任意代碼漏洞,需要盡快升級(jí)

下一篇: 騙人還是文字強(qiáng)!MIT最新研究:DeepFake換臉還不如編輯動(dòng)動(dòng)筆

標(biāo)簽:
  • 熱門焦點(diǎn)
  • 官方承諾:K60至尊版將會(huì)首批升級(jí)MIUI 15

    全新的MIUI 15今天也有了消息,在官宣了K60至尊版將會(huì)搭載天璣9200+處理器和獨(dú)顯芯片X7的同時(shí),Redmi給出了官方承諾,K60至尊重大更新首批升級(jí),會(huì)首批推送MIUI 15。也就是說(shuō)雖然
  • Redmi Pad評(píng)測(cè):紅米充滿野心的一次嘗試

    從Note系列到K系列,從藍(lán)牙耳機(jī)到筆記本電腦,紅米不知不覺之間也已經(jīng)形成了自己頗有競(jìng)爭(zhēng)力的產(chǎn)品體系,在中端和次旗艦市場(chǎng)上甚至要比小米新機(jī)的表現(xiàn)來(lái)得更好,正所謂“大丈夫生居
  • 2023年Q2用戶偏好榜:12+256G版本成新主流

    3月份的性能榜、性價(jià)比榜和好評(píng)榜之后,就要輪到2023年的第二季度偏好榜了,上半年的新機(jī)潮已經(jīng)過(guò)去,最明顯的肯定就是大內(nèi)存和存儲(chǔ)的機(jī)型了,另外部分中端機(jī)也取消了屏幕塑料支架
  • Flowable工作流引擎的科普與實(shí)踐

    一.引言當(dāng)我們?cè)谌粘9ぷ骱蜆I(yè)務(wù)中需要進(jìn)行各種審批流程時(shí),可能會(huì)面臨一系列技術(shù)和業(yè)務(wù)上的挑戰(zhàn)。手動(dòng)處理這些審批流程可能會(huì)導(dǎo)致開發(fā)成本的增加以及業(yè)務(wù)復(fù)雜度的上升。在這
  • 疑似小米14外觀設(shè)計(jì)圖曝光:后置相機(jī)模組變化不大

    下半年的大幕已經(jīng)開啟,而誰(shuí)將成為下半年手機(jī)圈的主角就成為了大家關(guān)注的焦點(diǎn),其中被傳有望拿下新一代驍龍8 Gen3旗艦芯片的小米14系列更是備受大家矚
  • iQOO Neo8系列新品發(fā)布會(huì)

    旗艦雙芯 更強(qiáng)更Pro
  • 回歸OPPO兩年,一加贏了銷量,輸了品牌

    成為OPPO旗下主打性能的先鋒品牌后,一加屢創(chuàng)佳績(jī)。今年618期間,一加手機(jī)全渠道銷量同比增長(zhǎng)362%,憑借一加 11、一加 Ace 2、一加 Ace 2V三款爆品,一加
  • 英特爾Xe-HP項(xiàng)目終止,將專注Xe-HPC/HPG系列顯卡

    據(jù)10 月 31 日消息報(bào)道,英特爾高級(jí)副總裁兼加速計(jì)算系統(tǒng)和圖形事業(yè)部總經(jīng)理 表示,Xe-HP“ Arctic Sound” 系列服務(wù)器 GPU 已經(jīng)應(yīng)用于 oneAPI devcloud 云服
  • 由于成本持續(xù)增加,筆記本產(chǎn)品價(jià)格預(yù)計(jì)將明顯上漲

    根據(jù)知情人士透露,由于材料、物流等成本持續(xù)增加,筆記本產(chǎn)品價(jià)格預(yù)計(jì)將在2021年下半年有明顯上漲。進(jìn)入6月下旬以來(lái),全球半導(dǎo)體芯片缺貨情況加劇,顯卡、處理器
Top 主站蜘蛛池模板: 广昌县| 绥中县| 亳州市| 垦利县| 休宁县| 澄城县| 淄博市| 老河口市| 合江县| 铜梁县| 阿鲁科尔沁旗| 桃园市| 申扎县| 郑州市| 苏尼特右旗| 峨眉山市| 通州市| 股票| 怀宁县| 台江县| 尉氏县| 商河县| 九寨沟县| 汽车| 盐源县| 博乐市| 甘孜| 湖州市| 金湖县| 绥芬河市| 乌鲁木齐县| 尤溪县| 遂昌县| 闽侯县| 吉木乃县| 三河市| 和硕县| 醴陵市| 洮南市| 张掖市| 察雅县|