成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python —如何正確打開Pandas庫的姿勢

開發 前端
Pandas 讓我們能夠分析大數據并根據統計理論得出結論。Pandas 可以清理雜亂的數據集,使它們具有可讀性和相關性。相關數據在數據科學中非常重要。

Pandas簡介

Pandas 最常用于處理數據集。它具有分析、清理、探索和操作數據的功能。"Pandas"這個名稱既指"Panel Data",也指"Python Data Analysis"。
,Pandas 讓我們能夠分析大數據并根據統計理論得出結論。Pandas 可以清理雜亂的數據集,使它們具有可讀性和相關性。相關數據在數據科學中非常重要。

安裝Pandas

使用pip來安裝Pandas。

pip install pandas

Pandas 中的數據類型

Pandas 中使用了兩種類型的對象。一個是“Series”,用于創建和存儲一維值,例如列或行。另一個是“ DataFrame ”,可以認為是一張表:它是二維的。DataFrame 包含行和列。在數據科學中將經常使用 Pandas DataFrames。可以在 Python 中編寫代碼時創建 Series 和 DataFrames,但通常情況下,DataFrames 不是在 Pandas 上創建的:數據是從其他地方導入的,因為在編寫程序時很難逐個鍵入所有數據。此數據通常采用逗號分隔值 (.csv) 文件的形式。一個 .csv 文件可以使用 Pandas 轉換為 DataFrame,然后你可以用它做很多事情。

  • Series

Series 與 NumPy 數組非常相似(實際上它構建在 NumPy 數組對象之上)。NumPy 數組與 Series 的區別在于,Series 可以具有軸標簽,這意味著它可以由標簽索引,而不僅僅是數字位置。它也不需要保存數字數據,它可以保存任意 Python 對象。

  1. Series索引及數據列表代碼示例。
import pandas as pd
import numpy as np

index = ['China','Canada','Mexico']

data = [1820,1920,1921]

mySeries = pd.Series(data,index)

print(mySeries)

ran_data = np.random.randint(0,100,4)
print(ran_data)

names = ['Sam','Ram','Max','Bob']
ages = pd.Series(ran_data,names)
print(ages)

pdSeries = pd.Series(data=[100,250,400,500],index=['Q1 Sales','Q2 Sales','Q3 Sales','Q4 Sales'],name='RedBull Sales 2021')
print(pdSeries)

代碼運行輸出如下圖所示

圖片

  1. 從Python字典生成Series代碼示例。
import pandas as pd
age = {'Bob':15,'Frank':23,'Mailo':18}
dictSeries = pd.Series(age)
print(dictSeries)

代碼運行輸出如下圖所示:

圖片

  1. Series的命名索引,類似字典的取值方式,具體請看下面的代碼示例,這里需要注意如果取值失敗會直接expect錯誤,所以在取值的時候必須保證key跟index是存在的。
import pandas as pd

q1 = {'Japan': 80, 'China': 450, 'India': 200, 'USA': 250}
q2 = {'Brazil': 100,'China': 500, 'India': 210,'USA': 260}
sales_q1 = pd.Series(q1)
sales_q2 = pd.Series(q2)
print(sales_q1)
print(sales_q2)
print(sales_q1['India'])
print(sales_q2[2])

代碼運行結果如下圖所示:

圖片

  1. Series還可以做一些數學運算,下面是代碼示例。
import pandas as pd

q1 = {'Japan': 80, 'China': 450, 'India': 200, 'USA': 250}
q2 = {'Brazil': 100,'China': 500, 'India': 210,'USA': 260}
sales_q1 = pd.Series(q1)
sales_q2 = pd.Series(q2)
print(sales_q1.keys()) # 取Series的key
print(sales_q1.values) # 取Series的values

new_sales_q1 = sales_q1 * 2
print(new_sales_q1)
float_sales_q1 = sales_q1 /100
print(float_sales_q1)

代碼運行輸出結果如下圖所示:

圖片

  • DataFrames

Pandas DataFrame 是一種二維數據結構,如二維數組或具有行和列的表。

  1. 創建DataFrame對象。
import pandas as pd
import numpy as np

np.random.seed(10)
data = np.random.randint(0,101,(4,3))
print(data)
x = ['CA','NY','AZ','TX']
y = ['Jan','Feb','Mar']
df = pd.DataFrame(data,x,y)
print(df)

代碼運行結果輸出如下圖所示:

圖片

  1. 從字典創建DataFrame對象。
import pandas as pd

dict_data = pd.DataFrame({'baidu': [10000,20000],
'aliyun':[30000,45000]},
index = ['Exicutive','Techie'])
print(dict_data)

代碼運行結果輸出如下圖所示:

圖片

  1. 讀取csv文件創建DataFrame對象。

讀取csv文件需要安裝xlrd跟openpyxl模塊。

pip install xlrd
pip install openpyxl
import pandas as pd
df_csv = pd.read_csv("Employees.csv") # 讀取csv文件
#df_excel = pd.read_excel("xxx.excel") #讀取excel文件
print(df)

代碼運行結果輸出:

圖片

  1. 獲取DataFrame的基本信息。
  • 返回所有列名
import pandas as pd
df = pd.read_csv("Employees.csv")
df.columns
  • 返回前幾行數據
import pandas as pd
df = pd.read_csv("Employees.csv")
df.head(5)
  • 返回后幾行數據
import pandas as pd
df = pd.read_csv("Employees.csv")
df.tail(3)
  • 獲取數據info
import pandas as pd
df = pd.read_csv("Employees.csv")
df.info
  • 生成描述性統計
import pandas as pd

df = pd.read_csv("Employees.csv")
df.describe()
df.describe().transpose() # 改變表格的對齊方式

如何過濾數據呢?

  • 單個條件

針對每一行進行測試的單個條件,比如head,tail函數。

  • 多個條件

可以在一行中測試多個條件。以下示例返回由女性且工資大于 5000的情況。

import pandas as pd

df = pd.read_csv("Employees.csv")
filter1 = df["工資"] > 5000
filter2 = df["性別"] == "F"
result = filter1 & filter2
df[result].head(3)

圖片

  • 使用查詢方法

查詢方法提供了一種替代方法,通常是一種比上述方法更易讀的過濾數據的方法。表示條件的字符串被傳遞給查詢方法以過濾數據。

import pandas as pd

df = pd.read_csv("Employees.csv")
df.query('工資 > 8000').head(2)

import pandas as pd

df = pd.read_csv("Employees.csv")
df.query('工資 > 5000 and 性別 =="F"')

圖片

  • 聚合方法

聚合的技術定義是用單個數字匯總一系列值。例如 sum、mean、median、max 和 min 都是聚合方法的例子

import pandas as pd
df=pd.DataFrame({'user':['Alice','Tom','Bob','Alice','Bob','Alice'],'money':range(6)})

df.groupby(['user']).sum() # sum聚合

圖片

結論

這些是 Pandas 中基本操作的一些示例。在 Pandas 中還能夠創建數據可視化。

本文轉載自微信公眾號「愛編碼的社畜」,可以通過以下二維碼關注。轉載本文請聯系愛編碼的社畜公眾號。


責任編輯:姜華 來源: 愛編碼的社畜
相關推薦

2016-12-12 08:48:24

2019-04-16 09:27:46

2018-06-16 23:11:35

2018-01-11 15:31:39

命令Linux關機

2016-05-09 10:41:03

算法分析開發

2017-02-23 15:37:44

OptionObject容器

2018-10-18 09:44:52

HPE

2020-02-24 15:26:40

Python短信免費

2017-07-10 13:09:45

前端Flexbox

2017-03-16 11:39:33

Openstack源碼姿勢

2023-01-30 07:41:43

2021-09-13 12:45:08

Ubuntu 20.0PythonLinux

2018-07-30 11:21:30

華為云

2021-01-08 08:10:34

MySQL表空間回收

2017-10-12 11:30:34

Spark代碼PR

2019-12-27 15:58:57

大數據IT互聯網

2021-09-15 16:20:02

Spring BootFilterJava

2024-09-25 08:22:06

2017-08-28 14:28:44

Python文檔編程正確姿勢

2021-04-20 22:27:22

Python軟件包GitHub
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 九九天堂网| 人人爽人人爽人人片av | 久草视频在线播放 | 国产欧美精品一区二区三区 | 国产99热 | 在线国产一区 | 国产超碰人人爽人人做人人爱 | 亚洲日韩中文字幕一区 | a级在线免费视频 | 夜夜爽99久久国产综合精品女不卡 | 在线亚洲电影 | 日日夜夜草 | 高清av一区 | 久久精品久久综合 | 欧美视频一区 | 国产福利网站 | 亚洲精品片 | 亚洲日本一区二区三区四区 | 久久天天 | 久久久久国产精品 | 日屁网站 | 欧美一区二区三区在线看 | 国产精品一区二区视频 | 盗摄精品av一区二区三区 | 久久免费视频1 | 怡红院免费的全部视频 | 亚洲国产精品人人爽夜夜爽 | 日本国产高清 | 亚洲欧洲成人 | 在线91| 成人久久 | 欧美xxxx色视频在线观看免费 | 男人的天堂在线视频 | 亚洲精品乱码久久久久久蜜桃91 | 天堂在线91 | 国产xxxx岁13xxxxhd | 国产第一页在线观看 | 在线日韩欧美 | 欧美www在线观看 | 81精品国产乱码久久久久久 | 国产成人精品久久二区二区91 |