iT邦幫忙

2023 iThome 鐵人賽

DAY 13
1

對於任何正在使用Python進行數據分析或希望學習Python進行數據分析的人來說,pandas模塊是你希望立即學習的最適合初學者的模塊之一。

它具有許多用戶友好的概念,對於從Google表格或Excel VBA過渡的人來說,這些功能相當容易學習。

我想利用這個機會來仔細研究整個pandas模塊,並總結其主要用途。

在使用任何模塊之前,你必須將模塊導入到你運行Python Kernel的IDE(集成開發環境 Integrated Development Environment)中。

例如:

[In]import pandas as pd
pd.DataFrame({'Col_1': [1, 2, 3]})

基本數據結構

Pandas提供了兩種處理數據的類型:

  • Series:一維帶有標籤的數組,可以容納任何類型的數據
[In] series_sample = pd.Series([1, 3, 5, 0, 6, 8])    
[Out] [Inset picture here]
  • Dataframe:具有行和列的二維數據結構,類似於二維數組或帶有行和列的表。

[In]import numpy as np
dates = ['2023-09-16', '2023-09-17', '2023-09-18', '2023-09-19',  '2023-09-20',  '2023-09-21']
df = pd.DataFrame(np.random.randn(6, 4), index=dates, columns=list("ABCD"))

[Out] 
|A|B|C|D|
|---|---|---|---|
|2023-09-16|-1.563473|-0.079299|-1.203697|0.721254|
|2023-09-17|0.965253|-1.471748|1.349356|-0.150890|
|2023-09-18|0.176092|-1.062239|-1.614128|-0.845678|
|2023-09-19|-0.807000|-0.917610|-1.172997|-0.151324|
|2023-09-20|-0.041240|-0.729022|-0.436079|-0.622532|
|2023-09-21|-0.453493|0.922574|-0.743277|2.589048|

在大多數情況下,你將最多使用dataframes,因為它的輸出最像表格/電子表格。在不變得太復雜的情況下,我們將專注於dataframes的函數。大多數用戶更喜歡pandas模塊進行數據整理和數據清理以及快速分析,因為它內置了繪圖功能。

#1. 將其他數據集轉換為dataframes - pd.DataFrame()

https://ithelp.ithome.com.tw/upload/images/20230927/20162091OzfhEaPbgq.png
你可以使用pd.DataFrame(list)將列表轉換為dataframe。以下是可以使用此函數轉換為DataFrames的數據類型:

  • 字典
  • Series
  • 列表
  • ndarray

#2. head()和tail()

當你想要從開始的行數據<head()>或結尾的行數據<tail()>時,你可以使用此功能進行抽樣。

例如:df.head(3) ---> 顯示前3行數據

[In]df.head(3)

[Out]
  ||A|B|C|D|
|---|---|---|---|---|
|2023-09-16|-1.563473|-0.079299|-1.203697|0.721254|
|2023-09-17|0.965253|-1.471748|1.349356|-0.150890|
|2023-09-18|0.176092|-1.062239|-1.614128|-0.845678|

有時,當你想要快速查看數據格式時,head()和tail()非常有用。

#3. 檢查每列的數據類型 --> df.dtypes
確保在處理多個dataframes時,它們的相應數據類型是對齊的非常重要,特別是如果你要合併或將用來當篩選。

例如:

[In]# Importing Pandas to create DataFrame
import pandas as pd
import random
# create random dataset
data = [random.randint(1,30) for i in range(0,5)]
# Creating Empty DataFrame and Storing it in variable df
df = pd.DataFrame(data, columns=['Numbers'])
  
# Printing Empty DataFrame
print(df)

[Out]
   Numbers
0       15
1        3
2       10
3        8
4       23

我們在下一章繼續討論。


Ref:
https://pandas.pydata.org/docs/user_guide/index.html


對 dbt 或 data 有興趣 :wave:?歡迎加入 dbt community 到 #local-taipei 找我們,也有實體 Meetup 請到 dbt Taipei Meetup 報名參加


上一篇
自學PowerBI - DAX 初學者的小貼士
下一篇
資料處理 Python Pandas 好用的function - Part 2
系列文
資料分析的硬體以及軟體學習以及成長心得30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言