zoukankan      html  css  js  c++  java
  • Pandas Series

    创建

    • 通过列表创建
    
    si = pd.Series([1, 2, 3, 4])
    
    • 通过 np.arange() 创建
    
    si = pd.Series(np.arange(8))
    
    • 通过对象创建
    
    si = pd.Series({'a': 1, 'b': 2, 'c': 3})
    

    属性

    • 查看Series的values
    
    si.values  # array([1, 2, 3])
    
    • 查看Series的index
    
    si.index  # Index(['1', '2', '3'], dtype='object')
    

    方法

    获取元素

    
    si = pd.Series([1, 2, 3], index=['A', 'B', 'C'])
    si['A']  # 1
    si[0]  # 1
    

    对值过滤

    
    si = pd.Series([1, 2, 3], index=['A', 'B', 'C'])
    si[si > 1]
    # B 2
    # C 3
    

    重置编号

    Series默认编号为int类型的数字,我们可以重置Series的编号

    • 在创建时重置
    
    si = pd.Series([1, 2, 3], index=['A', 'B', 'C'])
    # A    1
    # B    2
    # C    3
    
    • 通过 reindex() 方法重置

    reindex() 方法接收一个新的 index 列表,用于替换原来的 index ,如果新的 index 包含原来的 index 没有的元素则新增的index元素默认填充为 NaN ,可以通过指定参数 fill_value 改变默认的值。

    
    si = pd.Series([1, 2, 3])
    si.reindex(index=['A', 'B', 'C', 'D', 'E'])
    # A    NaN
    # B    NaN
    # C    NaN
    # D    NaN
    # E    NaN
    # dtype: float64
    
    
    s1 = pd.Series([1, 2, 3])
    s1.reindex(index=['A', 2, 'C', 'D', 'E'], fill_value=0)
    # A    0
    # B    3
    # C    0
    # D    0
    # E    0
    # dtype: int64
    

    内插或填充 method

    
    obj1=pd.Series(range(3), index=['a', 'c', 'e'])
    print(obj1.reindex(['a', 'b', 'c', 'd', 'e'], method='pad'))
    # a    0
    # b    0
    # c    1
    # d    1
    # e    2
    # dtype: int64
    

    ffillpad: 前向(或进位)填充
    bfillbackfill : 后向(或进位)填充

    转换为字典

    Series可以通过 to_dict() 转换为一个Python字典:

    
    si = pd.Series([1, 2, 3], index=['A', 'B', 'C'])
    si.to_dict()
    

    NaN

    判断NaN

    判断NaN,Series判断NaN有两个方法 isna()notna()

    • isna() 会对Series的每个元素的值进行判断,如果是NaN则为 True,否则为False
    • notna()会对Series的每个元素的值进行判断,如果是NaN则为 False,否则为True
    
    si = pd.Series([1, 2, 3, np.nan], index=['A', 'B', 'C', 'D'])
    si.isna()
    # A    False
    # B    False
    # C    False
    # D     True
    # dtype: bool
    

    删除NaN

    
    si.dropna()
    

    填充NaN项

    
    si.fillna(value)
    

    来源:https://segmentfault.com/a/1190000017310024

  • 相关阅读:
    禁止google浏览器强制跳转为https
    遍历打印文件目录结构
    添加忽略文件
    部署git服务器
    Location, History, Screen, Navigator对象
    Window 对象
    回调函数,setTimeout,Promise
    闭包
    this
    函数内部运作机制—上下文
  • 原文地址:https://www.cnblogs.com/qixidi/p/10160651.html
Copyright © 2011-2022 走看看