Python:Pandas中创建Series的三种方法

一、通过列表创建

# encoding=utf-8
import pandas as pd
# 定义一个列表
a = [1, 2, 3, 4]
s1 = pd.Series(a)
print(s1)

运行结果:

第一列为索引,是Series在创建时默认生成的,第二列即为值,通过type(s1)命令即可看到s1的数据类型为:pandas.core.series.Series,我们也可以将第四行的代码改为:

`s1 = pd.Series(a, index=["a", "b", "c", "d"])`

重新设置我们的索引,这样原先的索引就从0,1,2,3变为了a,b,c,d,更有一定的语义

如果我们想查看索引和值可以分别通过访问Seriesindex属性和values属性:

二、通过数组创建

这里的数组值的是numpy中的数组,它是对python列表的深度封装。我们来看代码:

# encoding=utf-8
import pandas as pd
import numpy as np
# 定义数组
arr = np.arange(1, 5)
s2 = pd.Series(arr)
print(s2)

运行结果:

可以看到,也成功创建了一个Series

三、通过字典创建

关于Series,笔者认为它更像一个有序的大字典,因此我们用操作字典的习惯操作Series往往能得心应手。我们来看如何通过字典创建一个Series

# encoding=utf-8
import pandas as pd
# 创建一个字典
dic = {"name": "丁少侠", "age": 20, "grade": [100, 99, 88]}
s3 = pd.Series(dic)
print(s3)

运行结果:

这里我们已经成功创建了一个存放学生信息的Series,由于字典自带key,因此索引也就自然创建了。如果我们希望grade放在第一列,应该怎么设置呢?我们只需要修改第5行代码:

s3 = pd.Series(dic, index=["grade", "name", "age"])

此时,index参数的功能不再是设置索引,而是根据索引排序,因为字典本身自带索引。

另外,假如我们将第5行代码修改为以下呢:

s3 = pd.Series(dic, index=["grade", "name", "age", "sex"])


可以看到,因为这位同学的性别未知,创建的Series中,sex这一栏就只能填NaN了,通过赋值,即可确定性别。

s3["sex"]="男"


看,像不像字典的操作!!!!那么我们顺着操作字典的思路再试着操作s3,再添加一个属性:hobby

s3["hobby"] = ["code,basketball,sleep"]

关于Series的操作无非增删改查,这里我们点到为止。

  • 13
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值