自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Pandas:用于數(shù)據(jù)分析和數(shù)據(jù)科學(xué)的最熱門 Python 庫

開發(fā)
Pandas 是一個十分流行的 Python 第三方庫。本文介紹了 Pandas 庫中的一些特性和函數(shù),并且我們鼓勵讀者親手使用 Pandas 庫,來解決實際的業(yè)務(wù)問題。

Pandas 為 Python 中數(shù)據(jù)分析提供了基礎(chǔ)和高級的構(gòu)建組件。Pandas 庫是用于數(shù)據(jù)分析與數(shù)據(jù)操作的最強大和最靈活的開源分析工具之一,并且它還提供了用于建模和操作表格數(shù)據(jù)(以行和列組織的數(shù)據(jù))的數(shù)據(jù)結(jié)構(gòu)

Pandas 庫有兩個主要的數(shù)據(jù)結(jié)構(gòu):第一個是 “系列Series”,該數(shù)據(jù)結(jié)構(gòu)能夠很方便地從 Python 數(shù)組或字典中按位置或指定的索引名稱來檢索數(shù)據(jù);第二個是“數(shù)據(jù)幀DataFrames”,該數(shù)據(jù)結(jié)構(gòu)將數(shù)據(jù)存儲在行和列中。列可以通過列名訪問,行通過索引訪問。列可以有不同類型的數(shù)據(jù),包括列表、字典、序列、數(shù)據(jù)幀、NumPy 數(shù)組等。

Pandas 庫可以處理各種文件格式

有各種各樣的文件格式。用于數(shù)據(jù)分析的工具必須能夠提供處理各種文件格式的方法。

Pandas 可以讀取各種文件格式,例如 CSV 文件、JSON 文件、XML 文件、Parquet 文件、SQL 文件,詳見下表。

 

寫入

讀取

CSV 文件

??to_csv?? 函數(shù)

??read_csv?? 函數(shù)

JSON 文件

??to_json?? 函數(shù)

??read_json?? 函數(shù)

Parquet 文件

??to_parquet?? 函數(shù)

??read_parquet?? 函數(shù)

SQL 文件

??to_sql?? 函數(shù)

??read_sql??? 函數(shù),??read_sql_query??? 函數(shù),??read_sql_table?? 函數(shù)

XML 文件

??to_xml?? 函數(shù)

??read_xml?? 函數(shù)

使用 Pandas 進(jìn)行數(shù)據(jù)清理

在現(xiàn)實場景中,很多數(shù)據(jù)集存在數(shù)據(jù)缺失、數(shù)據(jù)格式錯誤、錯誤數(shù)據(jù)或重復(fù)數(shù)據(jù)的情況,如果要對使數(shù)據(jù)分析更加準(zhǔn)確,就需要對這些沒有用的數(shù)據(jù)進(jìn)行處理。此外,數(shù)據(jù)還會有需要 屏蔽mask

Pandas 清洗空值:

a. 空行可以使用 ??df.dropna(inplace=True)?? 方法來刪除。

b. 空值可以使用 ??df.fillna(<value>, inplace=True)?? 方法來替換。還可以指定某一個列來替換該列的空數(shù)據(jù)。

Pandas 屏蔽數(shù)據(jù):

c. 要屏蔽所有不滿足條件 ??my_list.where(my_list < 5)?? 的敏感數(shù)據(jù)的值,可以使用 ??my_list.mask(my_list < 5)??。

Pandas 清洗重復(fù)數(shù)據(jù):

d. 要刪除重復(fù)數(shù)據(jù),可以使用 ??drop_duplicates()?? 方法:

df.drop_duplicates(<column>, keep = False)df.drop_duplicates(<column>, keep = ‘first’)df.drop_duplicates(<column>, keep = ‘last’)

使用 Pandas 進(jìn)行數(shù)據(jù)分析

下面的表格列出了 Pandas 中進(jìn)行數(shù)據(jù)分析的各種函數(shù),以及其語法。(請注意:??df?? 代表一個 數(shù)據(jù)幀DataFrame

< 如顯示不全,請左右滑動 >

語法

描述

??df.head(x)??

??head()?? 函數(shù)用于讀取前面的 x 行,如果不填參數(shù) x,默認(rèn)返回 5 行

??df.tail(x)??

??tail()?? 函數(shù)用于讀取尾部的 x 行,如果不填參數(shù) x ,默認(rèn)返回最后 5 行,空行各個字段的值返回 NaN

??loc(x:y)??

Loc 函數(shù)返回指定行的數(shù)據(jù),也可以對數(shù)據(jù)進(jìn)行切片

??groupby('<column>')??

對指定列的數(shù)據(jù)進(jìn)行分組

??df['column'].sum()??

計算指定列數(shù)據(jù)的總和

??df['column']. mean()??

計算指定列數(shù)據(jù)的算術(shù)平均值

??df['column'].min()??

計算指定列數(shù)據(jù)的最小值

??df['column'].max()??

計算指定列數(shù)據(jù)的最大值

??df.sort_values(['column'])??

在指定列上根據(jù)數(shù)值進(jìn)行排序,默認(rèn)升序

??df.size??

返回元素的個數(shù),即為行數(shù) * 列數(shù)

??df.describe??

返回對各列的統(tǒng)計匯總

??pd.crosstab(df['column1'], df['column2'], margins = True)??

創(chuàng)建 ??column1??? 和 ??column2?? 的交叉表

??df.duplicated([column1, 'column2'])??

根據(jù) ??column1??? 和 ??column2??? 中的重復(fù)值,返回 ??True??? 或 ??False??

Pandas 的優(yōu)點

  • 支持多索引(層次索引),方便分析多維數(shù)據(jù)。
  • 支持?jǐn)?shù)據(jù)透視表的創(chuàng)建,堆棧和取消堆棧操作。
  • 可以使用 Pandas 處理有限值的分類數(shù)據(jù)。
  • 支持分組和聚合運算。
  • 可以禁用排序。
  • 支持行級過濾(獲取滿足過濾條件的行)和列級過濾(只選擇需要的列)。
  • 有助于重塑數(shù)據(jù)集(數(shù)組的維度變換)。還可以轉(zhuǎn)置數(shù)組的值,并轉(zhuǎn)換為列表。當(dāng)你使用 Python 處理數(shù)據(jù)時,可以將 Pandas 數(shù)據(jù)幀轉(zhuǎn)換為多維 NumPy 數(shù)組。
  • 支持面向標(biāo)簽的數(shù)據(jù)切片。

Pandas 的不足

Pandas 的代碼和語法與 Python 不同,所以人們需要額外再學(xué)習(xí) Pandas。此外,相較于 Pandas,像三維數(shù)據(jù)這樣的高維數(shù)據(jù)會在 NumPy 等其他庫有更好的處理。

總結(jié)

Pandas 能夠大幅提升數(shù)據(jù)分析的效率。它與其他庫的兼容性使它在其他 Python 庫中都能有效地使用。

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2023-11-24 08:47:36

ScipyPython

2022-11-14 10:36:55

數(shù)據(jù)科學(xué)數(shù)據(jù)分析

2023-11-21 09:11:31

2016-05-10 10:43:02

2019-08-12 10:32:30

大數(shù)據(jù)數(shù)據(jù)科學(xué)云計算

2020-05-15 10:22:07

Python開發(fā)工具

2022-04-19 08:00:00

數(shù)據(jù)分析數(shù)據(jù)科學(xué)大數(shù)據(jù)

2017-09-15 09:34:51

R語言Python機器學(xué)習(xí)

2018-08-19 15:39:56

數(shù)據(jù)分析數(shù)據(jù)科學(xué)數(shù)據(jù)工程師

2015-07-28 17:00:30

2018-09-18 23:25:49

Python數(shù)據(jù)科學(xué)

2020-06-05 14:29:07

PythonPandas數(shù)據(jù)分析

2020-09-09 11:23:22

數(shù)據(jù)科學(xué)與分析

2023-09-04 15:35:54

2017-09-01 09:52:20

PythonPandas數(shù)據(jù)分析

2023-12-10 14:06:04

數(shù)據(jù)庫pythonduckdb

2015-12-03 09:46:29

2024-04-09 08:47:34

PandasRollingPython

2018-04-23 14:01:04

數(shù)據(jù)科學(xué)機器學(xué)習(xí)開發(fā)

2024-01-09 13:58:22

PandasPython數(shù)據(jù)分析
點贊
收藏

51CTO技術(shù)棧公眾號