python数据分析之pandas里的Series
生活随笔
收集整理的這篇文章主要介紹了
python数据分析之pandas里的Series
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 Series
線性的數據結構,series是一個一維數組
Pandas會默認用0到-1來作為series的index,但也可以自己指定index(可以把index理解為dict里面的key)
1.1 創造一個series數據
import pandas as pd import numpy as nps = pd.Series([9, 'zheng', 'beijing', 128])print(s)- 打印
0? ? ? ? ?9
1? ? ? ? zheng
2? ? ? ? ?beijing
3? ? ? ? 128
dtype: object
- 訪問其中某個數據
print(s[1:2])
# 打印
1? ? zheng
dtype: object
1.2 指定index
import pandas as pd import numpy as nps = pd.Series([9, 'zheng', 'beijing', 128, 'usa', 990], index=[1,2,3,'e','f','g'])print(s)- 打印
- 根據索引值找出值
print(s['f'])? ?# usa
1.3 用dictionary構造一個series
import pandas as pd import numpy as nps = {"ton": 20, "mary": 18, "jack": 19, "car": None}sa = pd.Series(s, name="age")print(sa)- 打印
- 檢測類型
print(type(sa))? ?# <class 'pandas.core.series.Series'>
1.4 用numpy ndarray構造一個Series
- 生成一個隨機數
1.5 選擇數據
import pandas as pd import numpy as nps = pd.Series([9, 'zheng', 'beijing', 128, 'usa', 990], index[1,2,3,'e', 'f', 'g'])print(s[1:3]) # 選擇第1到3個,包左不包右 zhehg beijing print(s[[1,3]]) # 選擇第1個和第3個,zheng 128 print(s[:-1]) #選擇第1個到倒數第1個, 9 zheng beijing 128 usa1.6 操作數據
import pandas as pd import numpy as nps = pd.Series([9, 'zheng', 'beijing', 128, 'usa', 990], index=[1,2,3,'e','f','g'])sum = s[1:3] + s[1:3] sum1 = s[1:4] + s[1:4] sum2 = s[1:3] + s[1:4] sum3 = s[:3] + s[1:]print(sum) print(sum1) print(sum2) print(sum3)- 打印
1.7 查找
- 是否存在
USA in s # true
- 范圍查找
- 中位數
- 判斷是否大于中位數
找出大于中位數的數
import pandas as pd import numpy as nps = {"ton": 20, "mary": 18, "jack": 19, "jim": 22, "lj": 24, "car": None}sa = pd.Series(s, name="age")print(sa[sa > sa.median()])- 中位數
1.8 Series賦值
import pandas as pd import numpy as nps = {"ton": 20, "mary": 18, "jack": 19, "jim": 22, "lj": 24, "car": None}sa = pd.Series(s, name="age")print(s)print('-----------------')sa['ton'] = 99print(sa)1.9 滿足條件的統一賦值
import pandas as pd import numpy as nps = {"ton": 20, "mary": 18, "jack": 19, "jim": 22, "lj": 24, "car": None}sa = pd.Series(s, name="age")print(s) # 打印原字典print('---------------') # 分割線sa[sa>19] = 88 # 將所有大于19的統一改為88print(sa) #打印更改之后的數據print('-------------------') # 分割線print(sa / 2) # 將所有數據除以2?
總結
以上是生活随笔為你收集整理的python数据分析之pandas里的Series的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: nginx动态库加载出现is not b
- 下一篇: pandas.DataFrame()的基