02 ,pd 基礎 :Series ,sr 是什麼,創建 sr,索引問題,索引取單值,索引取多值

1 ,pd 兩種數據結構 :Series + Dataframe

  1. Series : 序列,1 維數組
    1 ,sr 可以是 : 行
    2 ,sr 也可以是 : 列
  2. Dataframe : 2 維表,由一堆 Series 組成,有行索引,列索引

2 ,Series 是什麼: 一行或者一列

  1. Series 是什麼 : df 的一個切片
  2. Series 代表 : 一行或者一列

3 ,Series 構成 : data + index

  1. data : 數據
  2. index :索引
    1 ,索引值必須是唯一的和散列的。
    2 ,與數據的長度相同。
    3 ,默認 : np.arange(n) 如果沒有索引被傳遞。
  3. dtype : 輸出的數據類型 如果沒有,將推斷數據類型

4 ,創建 sr : 列表創建 pd.Series(li01,li02)

  1. 創建 : 數據,索引 :
# Author:SFL
import numpy as np
import pandas as pd

if __name__ == '__main__':
    li01 = ["a","b","c","d"]
    li02 = [1,2,3,4]
    # 創建 sr : 數據,索引
    sr01 = pd.Series(li01,li02)
    print(sr01)
=====================
1    a
2    b
3    c
4    d
  1. 索引是否可以重複 : 可以,不報錯,但是不建議重複
1    a
1    b
3    c
4    d
  1. 實驗結果 :
if __name__ == '__main__':
    li01 = ["a","b","c","d"]
    li02 = [1,1,3,4]
    # 創建 sr : 數據,索引
    sr01 = pd.Series(li01,li02)
    res01 = sr01[1]
    res02 = sr01[3]
    print(res01)
    print(res02)
    print(type(res01))
    print(type(res02))
=================================
1    a
1    b
dtype: object ( 注意:這裏的 Object 指的是字符串;類型 )
c
<class 'pandas.core.series.Series'>
<class 'str'>

5 ,如果索引重複會怎麼樣 : 得不到元素,得到子 sr

  1. 後果 : 取數據的時候不能去到唯一的元素
  2. 索引唯一 : 取到一個元素
  3. 索引不唯一 : 取到一個子 Series

6 ,sr 取值 : 一個 sr01[1]

  1. 原理 : 根據索引取到數據
  2. 代碼 :
if __name__ == '__main__':
    li01 = ["a","b","c","d"]
    li02 = [1,2,3,4]
    # 創建 sr : 數據,索引
    sr01 = pd.Series(li01,li02)
    res01 = sr01[1]
    print(sr01)
    print(res01)
========================
1    a
2    b
3    c
4    d
dtype: object
a

7 ,sr 取值 : 多個 sr01[1:3]

  1. 代碼 :
if __name__ == '__main__':
    li01 = ["a","b","c","d"]
    li02 = [3,4,5,6]
    # 創建 sr : 數據,索引
    sr01 = pd.Series(li01,li02)
    res01 = sr01[1:3]
    print(sr01)
    print(res01)
==============================
3    a
4    b
5    c
6    d
dtype: object
4    b
5    c
dtype: object

8 ,Series 索引取值總結 : 單個多個區別

  1. Series 有默認索引 : 從 0 開始
  2. 選一個元素 : 用的是我們給的索引
  3. 選多個元素 : 用的是默認索引

9 ,創建 Series : 使用默認索引 pd.Series(li01)

  1. 思路 : 直接存數據,到 Series 中
  2. 代碼 :
if __name__ == '__main__':
    li01 = ["a","b","c","d"]
    # 創建 sr : 數據,索引
    sr01 = pd.Series(li01)
    print(sr01)
===========================
0    a
1    b
2    c
3    d
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章