精华内容
下载资源
问答
  • pandas创建Series

    2019-05-22 14:23:49
    如何创建Series对象 常见的创建Pandas对象的方式,都像这样的形式: pd.Series(data, index=index)1 其中,index是一个可选参数...

    如何创建Series对象

    常见的创建Pandas对象的方式,都像这样的形式:

    pd.Series(data, index=index)
    • 1

    其中,index是一个可选参数,data参数支持多种数据类型

    例如,data可以时列表或Numpy数组,这是index默认值为整数序列:

    pd.Series([2,4,6])
    
    Out[58]: 
    0    2
    1    4
    2    6
    dtype: int64
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    data也可以是一个标量,创建Series对象时会重复填充到每一个索引上:

    pd.Series(5, index=[100, 200, 300])
    
    Out[59]: 
    100    5
    200    5
    300    5
    dtype: int64
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    data开可以是一个字典,index默认是字典键:

    pd.Series({2:'a', 1:'b', 3:'c'})
    
    Out[60]: 
    2    a
    1    b
    3    c
    dtype: object
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    每一种形式都可以通过显示指定索引筛选需要的结果:

    pd.Series({2:'a', 1:'b', 3:'c'}, index=[3,2])
    
    Out[61]: 
    3    c
    2    a
    dtype: object
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    展开全文
  • python-pandas创建Series数据类型

    千次阅读 2019-02-27 12:00:14
    常见数据类型4.pandas创建Series数据类型对象1). 通过列表创建Series对象2). 通过numpy的对象Ndarray创建Series;3). 通过字典创建Series对象;5.Series基本操作1). 修改Series索引.index2). Series纵向拼接.append3)...

    1.什么是pandas

    在这里插入图片描述

    2.查看pandas版本信息

    print(pd.__version__)
    

    输出:

    0.24.1
    

    3.常见数据类型

    常见的数据类型:
    - 一维: Series
    - 二维: DataFrame
    - 三维: Panel …
    - 四维: Panel4D …
    - N维: PanelND …

    4.pandas创建Series数据类型对象

    1). 通过列表创建Series对象

    array = ["粉条", "粉丝", "粉带"]
    # 如果不指定索引, 默认从0开始;
    s1 = pd.Series(data=array)
    print(s1)
    # 如果不指定索引, 默认从0开始;
    ss1 = pd.Series(data=array, index=['A', 'B', 'C'])
    print(ss1)
    

    输出:

    0    粉条
    1    粉丝
    2    粉带
    dtype: object
    A    粉条
    B    粉丝
    C    粉带
    dtype: object
    

    2). 通过numpy的对象Ndarray创建Series;

    n = np.random.randn(5)   # 随机创建一个ndarray对象;
    s2 = pd.Series(data=n)
    print(s2)
    # 修改元素的数据类型;
    ss2 = s2.astype(np.int)
    print(ss2)
    

    输出:

    0   -1.649755
    1    0.607479
    2    0.943136
    3   -1.794060
    4    1.569035
    dtype: float64
    0   -1
    1    0
    2    0
    3   -1
    4    1
    dtype: int64
    

    3). 通过字典创建Series对象;

    dict = {string.ascii_lowercase[i]:i for i in range(10)}
    s3 = pd.Series(dict)
    print(s3)
    

    输出:

    a    0
    b    1
    c    2
    d    3
    e    4
    f    5
    g    6
    h    7
    i    8
    j    9
    dtype: int64
    

    5.Series基本操作

    共同部分:

    import pandas as pd
    import numpy as np
    import  string
    
    array = ["粉条", "粉丝", "粉带"]
    s1 = pd.Series(data=array)
    print(s1)
    

    输出:

    0    粉条
    1    粉丝
    2    粉带
    dtype: object
    

    1). 修改Series索引.index

    print(s1.index) #输出:RangeIndex(start=0, stop=3, step=1)
    s1.index = ['A', 'B', 'C']
    print(s1) 
    

    输出:

    A    粉条
    B    粉丝
    C    粉带
    dtype: object
    

    2). Series纵向拼接.append

    s1.index = ['A', 'B', 'C']
    array = ["粉条", "粉丝", "粉带"]
    # 如果不指定索引, 默认从0开始;
    s2 = pd.Series(data=array)
    s3 = s1.append(s2)
    print(s3)
    

    输出:

    A    粉条
    B    粉丝
    C    粉带
    0    粉条
    1    粉丝
    2    粉带
    dtype: object
    

    3). 删除指定索引对应的元素.drop(‘index’)

    s3 = s3.drop('C')  # 删除索引为‘C’对应的值;
    print(s3)
    

    输出:

    A    粉条
    B    粉丝
    0    粉条
    1    粉丝
    2    粉带
    dtype: object
    

    4). 根据指定的索引查找元素

    print(s3['B'])   #粉丝
    s3['B'] = np.nan #索引B处的值替换为缺失值
    print(s3)
    

    输出:

    A     粉条
    B    NaN
    0     粉条
    1     粉丝
    2     粉带
    dtype: object
    

    5). 切片操作 — 同列表

    print(s3[:2])  #显示前两个元素
    print(s3[::-1]) #逆序
    print(s3[-2:])  # 显示最后两个元素
    

    输出:

    A     粉条
    B    NaN
    dtype: object
    -------------------------
    2     粉带
    1     粉丝
    0     粉条
    B    NaN
    A     粉条
    dtype: object
    -------------------------
    1    粉丝
    2    粉带
    dtype: object
    

    6.Series运算

    先设置两个Series对象:

    import pandas as pd
    import numpy as np
    import  string
    
    
    s1  = pd.Series(np.arange(5), index=list(string.ascii_lowercase[:5]))
    s2  = pd.Series(np.arange(2, 8), index=list(string.ascii_lowercase[2:8]))
    
    print(s1)
    print(s2)
    

    在这里插入图片描述

    按照对应的索引进行计算, 如果索引不同,则填充为Nan;

    1).加法add

    print(s1 + s2)
    print(s1.add(s2))
    

    输出:

    a    NaN
    b    NaN
    c    4.0
    d    6.0
    e    8.0
    f    NaN
    g    NaN
    h    NaN
    dtype: float64
    

    2).减法sub

    print(s1 - s2)
    print(s1.sub(s2))
    

    输出:

    a    NaN
    b    NaN
    c    0.0
    d    0.0
    e    0.0
    f    NaN
    g    NaN
    h    NaN
    dtype: float64
    

    3).乘法mul

    print(s1 * s2)
    print(s1.mul(s2))
    

    输出:

    a     NaN
    b     NaN
    c     4.0
    d     9.0
    e    16.0
    f     NaN
    g     NaN
    h     NaN
    dtype: float64
    

    4).除法div

    print(s1 / s2)
    print(s1.div(s2))
    

    输出:

    a    NaN
    b    NaN
    c    1.0
    d    1.0
    e    1.0
    f    NaN
    g    NaN
    h    NaN
    dtype: float64
    

    5).求中位数median

    print(s1.median())
    

    输出:

    2.0
    

    6).求和sum

    print(s1.sum())
    

    输出:

    10
    

    7).最大值max

    print(s1.max())
    

    输出:

    4
    

    8).最小值min

    print(s1.min())
    

    输出:

    0
    

    7.特殊的where方法

    series中的where方法运行结果和numpy中完全不同

    import pandas as pd
    import numpy as np
    import string
    s1 = pd.Series(np.arange(5), index=list(string.ascii_lowercase[:5]))
    print(s1)
    

    输出:
    a    0
    b    1
    c    2
    d    3
    e    4
    dtype: int64
    

    print(s1.where(s1 > 3))
    

    大于3的显示,不大于3的为NaN
    在这里插入图片描述

    # 对象中小于3的元素赋值为10;
    print(s1.where(s1 > 3, 10))
    

    在这里插入图片描述

    # 对象中大于3的元素赋值为10;
    print(s1.mask(s1 > 3, 10))
    

    在这里插入图片描述

    展开全文
  • 常见数据类型4.pandas创建Series数据类型对象1). 通过列表创建Series对象2). 通过numpy的对象Ndarray创建Series;3). 通过字典创建Series对象; 5.Series基本操作1). 修改Series索引.index2). Series纵向拼接....

    参考链接: 创建Pandas Series

    文章目录

     1.什么是pandas2.查看pandas版本信息3.常见数据类型4.pandas创建Series数据类型对象1). 通过列表创建Series对象2). 通过numpy的对象Ndarray创建Series;3). 通过字典创建Series对象;

      5.Series基本操作1). 修改Series索引.index2). Series纵向拼接.append3). 删除指定索引对应的元素.drop('index')4). 根据指定的索引查找元素5). 切片操作 --- 同列表

      6.Series运算1).加法add2).减法sub3).乘法mul4).除法div5).求中位数median6).求和sum7).最大值max8).最小值min

      7.特殊的where方法

     

     

    1.什么是pandas 

     

    2.查看pandas版本信息 

    print(pd.__version__)

     

    输出: 

    0.24.1

     

    3.常见数据类型 

    常见的数据类型: - 一维: Series - 二维: DataFrame - 三维: Panel … - 四维: Panel4D … - N维: PanelND … 

    4.pandas创建Series数据类型对象 

    1). 通过列表创建Series对象 

    array = ["粉条", "粉丝", "粉带"]

    # 如果不指定索引, 默认从0开始;

    s1 = pd.Series(data=array)

    print(s1)

    # 如果不指定索引, 默认从0开始;

    ss1 = pd.Series(data=array, index=['A', 'B', 'C'])

    print(ss1)

     

    输出: 

    0    粉条

    1    粉丝

    2    粉带

    dtype: object

    A    粉条

    B    粉丝

    C    粉带

    dtype: object

     

    2). 通过numpy的对象Ndarray创建Series; 

    n = np.random.randn(5)   # 随机创建一个ndarray对象;

    s2 = pd.Series(data=n)

    print(s2)

    # 修改元素的数据类型;

    ss2 = s2.astype(np.int)

    print(ss2)

     

    输出: 

    0   -1.649755

    1    0.607479

    2    0.943136

    3   -1.794060

    4    1.569035

    dtype: float64

    0   -1

    1    0

    2    0

    3   -1

    4    1

    dtype: int64

     

    3). 通过字典创建Series对象; 

    dict = {string.ascii_lowercase[i]:i for i in range(10)}

    s3 = pd.Series(dict)

    print(s3)

     

    输出: 

    a    0

    b    1

    c    2

    d    3

    e    4

    f    5

    g    6

    h    7

    i    8

    j    9

    dtype: int64

     

    5.Series基本操作 

    共同部分: 

    import pandas as pd

    import numpy as np

    import  string

     

    array = ["粉条", "粉丝", "粉带"]

    s1 = pd.Series(data=array)

    print(s1)

     

    输出: 

    0    粉条

    1    粉丝

    2    粉带

    dtype: object

     

    1). 修改Series索引.index 

    print(s1.index) #输出:RangeIndex(start=0, stop=3, step=1)

    s1.index = ['A', 'B', 'C']

    print(s1) 

     

    输出: 

    A    粉条

    B    粉丝

    C    粉带

    dtype: object

     

    2). Series纵向拼接.append 

    s1.index = ['A', 'B', 'C']

    array = ["粉条", "粉丝", "粉带"]

    # 如果不指定索引, 默认从0开始;

    s2 = pd.Series(data=array)

    s3 = s1.append(s2)

    print(s3)

     

    输出: 

    A    粉条

    B    粉丝

    C    粉带

    0    粉条

    1    粉丝

    2    粉带

    dtype: object

     

    3). 删除指定索引对应的元素.drop(‘index’) 

    s3 = s3.drop('C')  # 删除索引为‘C’对应的值;

    print(s3)

     

    输出: 

    A    粉条

    B    粉丝

    0    粉条

    1    粉丝

    2    粉带

    dtype: object

     

    4). 根据指定的索引查找元素 

    print(s3['B'])   #粉丝

    s3['B'] = np.nan #索引B处的值替换为缺失值

    print(s3)

     

    输出: 

    A     粉条

    B    NaN

    0     粉条

    1     粉丝

    2     粉带

    dtype: object

     

    5). 切片操作 — 同列表 

    print(s3[:2])  #显示前两个元素

    print(s3[::-1]) #逆序

    print(s3[-2:])  # 显示最后两个元素

     

    输出: 

    A     粉条

    B    NaN

    dtype: object

    -------------------------

    2     粉带

    1     粉丝

    0     粉条

    B    NaN

    A     粉条

    dtype: object

    -------------------------

    1    粉丝

    2    粉带

    dtype: object

     

    6.Series运算 

    先设置两个Series对象: 

    import pandas as pd

    import numpy as np

    import  string

     

     

    s1  = pd.Series(np.arange(5), index=list(string.ascii_lowercase[:5]))

    s2  = pd.Series(np.arange(2, 8), index=list(string.ascii_lowercase[2:8]))

     

    print(s1)

    print(s2)

     

     

    按照对应的索引进行计算, 如果索引不同,则填充为Nan; 

    1).加法add 

    print(s1 + s2)

    print(s1.add(s2))

     

    输出: 

    a    NaN

    b    NaN

    c    4.0

    d    6.0

    e    8.0

    f    NaN

    g    NaN

    h    NaN

    dtype: float64

     

    2).减法sub 

    print(s1 - s2)

    print(s1.sub(s2))

     

    输出: 

    a    NaN

    b    NaN

    c    0.0

    d    0.0

    e    0.0

    f    NaN

    g    NaN

    h    NaN

    dtype: float64

     

    3).乘法mul 

    print(s1 * s2)

    print(s1.mul(s2))

     

    输出: 

    a     NaN

    b     NaN

    c     4.0

    d     9.0

    e    16.0

    f     NaN

    g     NaN

    h     NaN

    dtype: float64

     

    4).除法div 

    print(s1 / s2)

    print(s1.div(s2))

     

    输出: 

    a    NaN

    b    NaN

    c    1.0

    d    1.0

    e    1.0

    f    NaN

    g    NaN

    h    NaN

    dtype: float64

     

    5).求中位数median 

    print(s1.median())

     

    输出: 

    2.0

     

    6).求和sum 

    print(s1.sum())

     

    输出: 

    10

     

    7).最大值max 

    print(s1.max())

     

    输出: 

    4

     

    8).最小值min 

    print(s1.min())

     

    输出: 

    0

     

    7.特殊的where方法 

    series中的where方法运行结果和numpy中完全不同 

    import pandas as pd

    import numpy as np

    import string

    s1 = pd.Series(np.arange(5), index=list(string.ascii_lowercase[:5]))

    print(s1)

     

     

    输出:

    a    0

    b    1

    c    2

    d    3

    e    4

    dtype: int64

     

     

    print(s1.where(s1 > 3))

     

    大于3的显示,不大于3的为NaN  

    # 对象中小于3的元素赋值为10;

    print(s1.where(s1 > 3, 10))

     

     

    # 对象中大于3的元素赋值为10;

    print(s1.mask(s1 > 3, 10))

    展开全文
  • import numpy as np ...创建Series 1.最简单的方法 In [9]: obj = pd.Series([4,7,-5,3]) In [10]: obj Out[10]: 0 4 1 7 2 -5 3 3 2.自定义Index In [11]: obj2 = Series([4, 7, -5, 3], index...
    import numpy as np
    import pandas as pd
    

    创建Series

    1.最简单的方法
    In [9]: obj = pd.Series([4,7,-5,3])
    In [10]: obj
    Out[10]: 
    0    4
    1    7
    2   -5
    3    3
    
    2.自定义Index
    In [11]: obj2 = Series([4, 7, -5, 3], index=['d', 'b', 'a', 'c'])
    In [12]: obj2
    Out[12]: 
    d    4
    b    7
    a   -5
    c    3
    
    3. 通过字典创建Series
    In [13]: sdata = {'Ohio': 35000, 'Texas': 71000, 'Oregon': 16000, 'Utah': 5000}
        ...: obj3 = Series(sdata)
        ...: obj3
    Out[13]: 
    Ohio      35000
    Oregon    16000
    Texas     71000
    Utah       5000
    

    创建Dataframe

    DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值,字符串,布尔值等)。DataFrame 既有行索引又有列索引,注意,行索引为index,列索引为columns.

    1.直接传入一个由等长列表或秩为1NumPy的数组组成的字典
    In [14]: data = {'state': ['Ohio', 'Ohio', 'Ohio', 'Nevada', 'Nevada'],
        ...:         'year': [2000, 2001, 2002, 2001, 2002],
        ...:         'pop': [1.5, 1.7, 3.6, 2.4, 2.9]}
    
    In [15]: frame = DataFrame(data)
    In [16]: frame
    Out[16]: 
       pop   state  year
    0  1.5    Ohio  2000
    1  1.7    Ohio  2001
    2  3.6    Ohio  2002
    3  2.4  Nevada  2001
    4  2.9  Nevada  2002
    
    2.自定义列和索引标签 
    In [17]: frame2 = DataFrame(data, columns=['year', 'state', 'pop', 'debt'],
        ...:                    index=['one', 'two', 'three', 'four', 'five'])
    In [18]: frame2
    Out[18]: 
           year   state  pop debt
    one    2000    Ohio  1.5  NaN
    two    2001    Ohio  1.7  NaN
    three  2002    Ohio  3.6  NaN
    four   2001  Nevada  2.4  NaN
    five   2002  Nevada  2.9  NaN
    传入的列在数据中找不到,就会显示NaN值
    
    3. 嵌套字典
    In [19]: pop = {'Nevada': {2001: 2.4, 2002: 2.9},
        ...:        'Ohio': {2000: 1.5, 2001: 1.7, 2002: 3.6}}
    In [20]: frame3 = DataFrame(pop)
        ...: frame3
    Out[20]: 
          Nevada  Ohio
    2000     NaN   1.5
    2001     2.4   1.7
    2002     2.9   3.6
    

    附注:本文为防忘笔记,参考博客:https://zhuanlan.zhihu.com/p/30132591

    展开全文
  • Pandas概况: Pandas是Python的核心数据分析支持库,提供了快速、灵活、明确的数据结构, 旨在简单、直观地处理关系型、标记型数据。Pandas是Python 数据分析实践与实战的必备高级工具。 Pandas 适用于处理以下类型...
  • print("====创建series方法一===") dic={"a":1,"b":2,"c":3,"4":4} s=pd.Series(dic) print(s) 创建方法一:由字典创建,字典的key就是index,values就是valuse key肯定是字符串,假如values类型不止一个会怎么样?...
  • 1. 直接创建一个带索引的Series 2. 使用字典创建一个Series,键为索引,值为数据 3. 使用 dtype 查看数据类型, 使用 astype 修改存储的数据类型 4. Series 索引取值 5. 单独取出Series中 索引和值 的...
  • Pandas 是基于 NumPy 的一个开源 Python 库,它被广泛用于快速分析数据,以及数据清洗和准备等工作。它的名字来源是由“ Panel data”(面板数据,一个计量经济学名词)两个单词拼成的。简单地说,你可以把 Pandas ...
  • pandasSeries创建

    2020-11-12 18:22:55
    1.利用list创建Series import pandas as pd ...: import numpy as np ...: pd.Series([1,3,2,4,5]) Out[3]: 0 1 1 3 2 2 3 4 4 5 dtype: int64 指定索引 t2=pd.Series([1,2,3,4,5],index=list("abc
  • pandas.Series 概念

    2020-12-21 02:23:53
    pandas.Series安装 pandas 库基本概念Series 创建字典创建数组创建标量创建name:名称属性 安装 pandas 库 pip install pandas 基本概念 Series 是带有标签的一维数组,可以保存任何数据类型,轴标签统称为索引 # ...
  • pandasseries

    2020-10-30 11:27:05
    然后创建Series, import pandas as pd # 导包 t = pd.Serise([1, 3, 2, 4]) # 创建一个Series print(t) 输入结果如图 还可以在创建的时候指定索引 t1 = pd.Series([1, 3, 2, 4], index=list("abcd")) # 索引的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,494
精华内容 997
关键字:

pandas创建series