Series对象的生成
使用Pandas.Series
pandas.Series( data, index, dtype, copy)
data:数据,可以是序列类型,可以是int
index:索引值必须是唯一的,与data的长度相同,默认为np.arange(n)
dtype:数据类型
copy:是否复制数据,默认为false
打印左侧为索引,右侧为数据
import pandas as pd
import numpy as np
#如果全部是int类型,那么打印s1会显示是int类型
s1 = pd.Series([1,2,3,4]) #dtype: int64
print(s1)
'''
0 1
1 2
2 3
3 4
dtype: int64'''
#如果什么数据类型都存在,那么打印s1会显示object类型的
s1 = pd.Series([1,"a",0.5,["张三","李四"]])#dtype: object
print(s1)
'''
0 1
1 a
2 0.5
3 [张三, 李四]
dtype: object'''
s1 = pd.Series([1,"a",0.5,["张三","李四"]],index=['a','b','c','d'])
s1 = pd.Series([1,2,3,4],index=['a','b','c','d'],dtype=np.float32)
"""
copy=True后,数据x不会改变,数据s1会改变
copy=False,数据x会改变,数据s1会改变
"""
x=np.array([10,20,30,40])
s1 = pd.Series(x,index=['a','b','c','d'],copy=True)
s1['a']=100
print(s1)
'''
a 100
b 20
c 30
d 40'''
print(x)
'''
dtype: int32
[10 20 30 40]'''
从ndarray创建一个Series
import pandas as pd
import numpy as np
x=np.array([10,20,30,40])
s1 = pd.Series(x)
s1 = pd.Series(x,index=['a','b','c','d'])
print(s1)
'''
a 10
b 20
c 30
d 40
dtype: int32'''
从字典创建一个Series
由于我们的Series有索引有数据,和我们的字典很像,字典是有key和vaule
import pandas as pd
#a是索引 100数据
x={'a':100,'b':200,'c':300,'d':400}
s1 = pd.Series(x)
#设置索引
s1 = pd.Series(x,index=['a','b','c','d'])
#如果设置的索引位置换一下呢,数据也会跟着换
s1 = pd.Series(x,index=['a','c','d','b'])
#如果设置的索引,在字典中不存在呢,为nan
s1 = pd.Series(x,index=['a','b','e','f'])
print(s1)
访问Series数据
单个索引获取数据 语法s1[index] 获取单个数据
import pandas as pd
#可以使用默认索引,也可以使用自定义索引
dict01={"a":1,"s":2,"d":3,"f":4,"g":5}
s1=pd.Series(dict01)
print(s1["a"])#1 使用自定义索引
print(s1[0])#1 使用默认索引
多个索引获取数据
切片
语法:
s1[list]获取索引中的数据
s1[index1:index2]获取从第一个索引到第二个索引的数据
根据下标左开右闭
根据标签左开右开
import pandas as pd
import numpy as np
dict01={"a":1,"s":2,"d":3,"f":4,"g":5}
s2=pd.Series(dict01)
print(s2[0:3])#根据下标左开右闭
'''
a 1
s 2
d 3
dtype: int64 '''
print(s2["a":"f"])#根据标签左开右开
'''a 1
s 2
d 3
f 4
dtype: int64'''
Series对象的使用
属性和方法 说明
axes返回Series索引列表dtype返回Series的数据类型empty判断Series是否为空,如果为空,则返回Truendim返回基础数据的位数,默认为:1size返回基础数据中的元素个数values将Series作为ndarray返回head()返回前n行tail()返回最后n行
import pandas as pd
d1={"翠花":12,"赵六":34,"王五":55,"李四":66,"张三":77}
s1=pd.Series(d1)
print(s1.axes)#[Index(['翠花', '赵六', '王五', '李四', '张三'], dtype='object')]
print(s1.dtype)#int64
print(s1.empty)#False
print(s1.ndim)#1
print(s1.size)#5
print(s1.values)#[12 34 55 66 77]
print(s1.head(2))
'''翠花 12
赵六 34
dtype: int64 '''
print(s1.tail(3))
'''王五 55
李四 66
张三 77
dtype: int64 '''
Original: https://blog.csdn.net/weixin_62478198/article/details/121838343
Author: F濤
Title: Series对象(生成,访问和使用)
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/678608/
转载文章受原作者版权保护。转载请注明原作者出处!