pandas创建一维数据类型

pandas创建一维数据类型

使用前首先导入需要使用的模块:
import pandas as pd
import numpy as np
import string

  1. 查看pandas版本信息
print(pd.__version__)
  1. 创建Series对象
    1)通过列表创建Series对象
#  1). 通过列表创建Series对象
array = ["粉条", "粉丝", "粉带"]
# 如果不指定索引, 默认从0开始;
s1 = pd.Series(data=array)
print(s1)
# 如果指定索引,按索引开始;
ss1 = pd.Series(data=array, index=['A', 'B', 'C'])
print(ss1)

在这里插入图片描述
2). 通过numpy的对象Ndarray创建Series

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

在这里插入图片描述
3). 通过字典创建Series对象;

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

在这里插入图片描述

Series的基本操作

定义一维数组:

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

在这里插入图片描述
1). 修改Series索引

print(s1.index)
s1.index = ['A', 'B', 'C']
print(s1)

在这里插入图片描述
2). Series纵向拼接;

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

在这里插入图片描述
3). 删除指定索引对应的元素;`

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

在这里插入图片描述
4). 根据指定的索引查找元素

print(s3['B'])
s3['B'] = np.nan
print(s3)

在这里插入图片描述
5). 切片操作 — 同列表

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

在这里插入图片描述

Serices 运算

定义一维数组

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)加法

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

在这里插入图片描述
2)减法

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

在这里插入图片描述

3)乘法*

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

在这里插入图片描述

4)除法/

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

在这里插入图片描述
5)求中位数

print(s1)
print(s1.median())

在这里插入图片描述
6) 求和

print(s1.sum())

在这里插入图片描述
7)最大:max ,最小:min

print('最大',s1.max())
print('最小',s1.min())

在这里插入图片描述

Series 中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.where(s1 > 3))

在这里插入图片描述
如上结果,Series中使用where返回判断结果为:当满足条件时。
通过where的使用可以将数组中的数组进修修改替换。
1)对象中不大于3的元素赋值为10;

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

在这里插入图片描述
2)对象中大于3的元素赋值为10;
print(s1.mask(s1 > 3, 10))
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42213622/article/details/87968877