网站建设代码题,手表网站建设,项目驱动式网页设计与制作教程,十大微商推广平台目录 Series对象创建 
实例化参数 
index参数 
选用array-like创建Series对象 
list 
ndarray 
显示索引与隐式索引 
选用dict创建Series对象 
不指定索引 
指定索引 
选用标量创建Series对象 
使用标量创建的广播机制 
Series属性 
name 
size 
shape 
index 
values 
Series索…目录 Series对象创建 
实例化参数 
index参数 
选用array-like创建Series对象 
list 
ndarray 
显示索引与隐式索引 
选用dict创建Series对象 
不指定索引 
指定索引 
选用标量创建Series对象 
使用标量创建的广播机制 
Series属性 
name 
size 
shape 
index 
values 
Series索引取值 
Series对象[索引名]及Series对象.索引名 
Series对象.iloc[] 
索引取值后修改 
Series数值运算 
广播机制演示 
使用Numpy运算函数 Series对象创建 
实例化参数 
def __init__(self,dataNone,indexNone,dtype: Dtype | None  None,nameNone,copy: bool | None  None,fastpath: bool | lib.NoDefault  lib.no_default,
) - None:其中data为穿入的数据,数据类型一般为array-like,也可以穿入自建类型数据,index参数为Series对象的索引,也可称作为标签,dtype为单位元素数据类型的指定,name为Series对象的名称,如将Series对象导入DataFrame中,name将默认作为列名存在 
index参数 
Series对象实际是具有字典属性的array-like数据类型,原因在于Series对象为一维数据,在DataFrame二维表中,每一列或行单独取出都为一个Series参数,若取行,则列名则为Series对象的index,反之若取列,则行索引为index 
index可分为隐式索引和显示索引 
隐式索引为常规从0开始至长度-1的index 
显示索引可以手动设置index,index列表中的每一项按序作为对应元素的索引 
选用array-like创建Series对象 
这里选用list及ndarray作为data参数传入演示及区别详解 
list 
选用list对象作为数据传入Series对象进行实例化的时候,创建的为副本对象,也就是说Series与list并不共享内存 
import numpy as np
import pandas as pddata1  pd.Series(data[1,2,3])
print(data1)
# 0    1
# 1    2
# 2    3
# dtype: int64 
ndarray 
使用ndarray对象作为数据传入Series对象进行实例化的时候创建的为一个与原ndarray共享内存的Series对象 
import numpy as np
import pandas as pdarr  np.array([1,2,3])
data1  pd.Series(dataarr)
print(data1)
arr[1]  100
print(data1)
# 0    1
# 1    2
# 2    3
# dtype: int32
# 0      1
# 1    100
# 2      3
# dtype: int32 
可以看到在进行原ndarray的修改后Series对象也发生了改变这里可以使用.copy()来进行深拷贝 
import numpy as np
import pandas as pdarr  np.array([1,2,3])
data1  pd.Series(dataarr.copy())
print(data1)
arr[1]  100
print(data1)
# 0    1
# 1    2
# 2    3
# dtype: int32
# 0    1
# 1    2
# 2    3
# dtype: int32 
显示索引与隐式索引 
上述的例子都为隐式索引即不指定索引自动生成的从0-len-1的数值索引为隐式索引接下来进行显示索引的指定 
import numpy as np
import pandas as pdarr  [Jack,Male]
arr1  [Name,Gender]
data1  pd.Series(dataarr,indexarr1)
print(data1)
# Name      Jack
# Gender    Male
# dtype: object可以看到这里的dtype变为了object类型原因为data的属性为字符串 
选用dict创建Series对象 
使用dict对象创建Series对象只需要将data赋值为dict索引会自动选用键如果要自定义显式索引的话则会根据显示索引匹配字典的键如果有匹配不成功的则会使用pd.NA,也就是空值进行填充 
不指定索引 
import numpy as np
import pandas as pddict1  {Name:Jack,Gender:Male}
data1  pd.Series(datadict1)
print(data1)
# Name      Jack
# Gender    Male
# dtype: object指定索引 
import numpy as np
import pandas as pddict1  {Name:Jack,Gender:Male}
data1  pd.Series(datadict1,index[Name,Hobby])
print(data1)
# Name     Jack
# Hobby     NaN
# dtype: object这里指定了一个在字典中的键不存在的索引Hobby因为在字典中并不存在所以这里显示的值为pd.NA 
选用标量创建Series对象 
若使用标量创建Series对象则会默认生成一个长度为1的Series对象 
import numpy as np
import pandas as pddata1  pd.Series(data1)
print(data1)
print(data1.shape)
# 0    1
# dtype: int64
# (1,) 
使用标量创建的广播机制 
如果想用标量进行广播就要指定显式索引这样就会根据显示索引的长度对标量进行广播 
import numpy as np
import pandas as pddata1  pd.Series(data1, index[1,2,3,4,5,6,7])
print(data1)
print(data1.shape)
# 1    1
# 2    1
# 3    1
# 4    1
# 5    1
# 6    1
# 7    1
# dtype: int64
# (7,) 
Series属性 
Series属性一般包括以下几个 
name 
nameSeries对象的名字可以在Series创建时指定在将Series对象转为DataFrame二维表后name将作为列名存在行索引为Series对象的原索引 
import numpy as np
import pandas as pddata1  {Hobby:Basketball,Age:30}data1  pd.Series(datadata1,nameJack)
data2  pd.DataFrame(datadata1)
print(data2)#              Jack
# Hobby  Basketball
# Age            30 
size 
size:Series对象的元素个数也就是Series对象的长度 
import numpy as np
import pandas as pddata1  {Hobby:Basketball,Age:30}data1  pd.Series(datadata1,nameJack)print(data1.size)# 2 
shape 
shapeSeries对象的形状 
import numpy as np
import pandas as pddata1  {Hobby:Basketball,Age:30}data1  pd.Series(datadata1,nameJack)print(data1.shape)# (2,) 
index 
indexSeries对象的索引列表但不是纯粹的列表是经过封装的并且不支持修改元素所以若需要修改index的值则需要整体替换index 
import numpy as np
import pandas as pddata1  {Hobby:Basketball,Age:30}data1  pd.Series(datadata1,nameJack)print(data1.index)
data2  list(data1.index)
data2[0]jjj
data1.index  data2
print(data1)# Index([Hobby, Age], dtypeobject)
# jjj    Basketball
# Age            30
# Name: Jack, dtype: object 
values 
values:为Series对象的值列表并且values是只读的不像index可以进行修改若想对值进行修改可以使用索引取值然后修改详见下文 
import numpy as np
import pandas as pddata1  {Hobby:Basketball,Age:30}data1  pd.Series(datadata1,nameJack)print(data1.values)
# [Basketball 30]Series索引取值 
Series对象[索引名]及Series对象.索引名 
Series可以通过Series对象[索引名]进行取值这里可以是索引名也可以是索引列表 
同样也可以通过Series对象.索引名来进行取值但是要确保索引名和实例属性不冲突否则会优先返回实例属性 
import numpy as np
import pandas as pddata1  {Hobby:Basketball,Age:30,name:pig}data1  pd.Series(datadata1,nameJack)
print(data1[Hobby])
print(data1[[Hobby,Age]])
print(data1.Hobby)
print(data1.name)
# Basketball
# Hobby    Basketball
# Age              30
# Name: Jack, dtype: object
# Basketball
# Jack 
可以看到这里返回的name为Jack也就是Series对象的名字而不是pig原因是属性名和index发生了冲突所以会优先返回实例属性这里想要取出索引name对应的值只能使用data1[name] 
import numpy as np
import pandas as pddata1  {Hobby:Basketball,Age:30,name:pig}data1  pd.Series(datadata1,nameJack)
print(data1[name])
# pig 
Series对象.iloc[] 
这里使用的iloc[]索引同样适用于DataFrame后面会更新博客讲解请保持关注,iloc[]索引的参数为从0-len-1的数值索引比如这里要取第2个值就为iloc[1] 
import numpy as np
import pandas as pddata1  {Hobby:Basketball,Age:30,name:pig}data1  pd.Series(datadata1,nameJack)
print(data1.iloc[0],data1.iloc[1])
# Basketball 30索引取值后修改 
import numpy as np
import pandas as pddata1  {Hobby:Basketball,Age:30,name:pig}data1  pd.Series(datadata1,nameJack)
print(data1.iloc[0],data1.iloc[1])
data1.iloc[0]  football
print(data1)
# Basketball 30
# Hobby    football
# Age            30
# name          pig
# Name: Jack, dtype: object 
import numpy as np
import pandas as pddata1  {Hobby:Basketball,Age:30,name:pig}data1  pd.Series(datadata1,nameJack)
data1[Hobby]  football
data1.Age  18
print(data1)
# Hobby    football
# Age            18
# name          pig
# Name: Jack, dtype: object 
Series数值运算 
Series数值运算支持广播机制及于numpy运算函数兼容 
广播机制演示 
import numpy as np
import pandas as pddata1  pd.Series(datanp.random.randint(1,10,5))
print(data1)
print(data11)
# 0    3
# 1    9
# 2    9
# 3    2
# 4    8
# dtype: int32
# 0     4
# 1    10
# 2    10
# 3     3
# 4     9
# dtype: int32 
使用Numpy运算函数 
import numpy as np
import pandas as pddata1  pd.Series(datanp.random.randint(1,10,5))
print(data1)
print(np.power(data1,2))
# 0    3
# 1    1
# 2    4
# 3    4
# 4    1
# dtype: int32
# 0     9
# 1     1
# 2    16
# 3    16
# 4     1
# dtype: int32 
这里使用numpy中的power实现了一个乘方操作 文章转载自: http://www.morning.smwlr.cn.gov.cn.smwlr.cn http://www.morning.bynf.cn.gov.cn.bynf.cn http://www.morning.fmjzl.cn.gov.cn.fmjzl.cn http://www.morning.kqglp.cn.gov.cn.kqglp.cn http://www.morning.cwjxg.cn.gov.cn.cwjxg.cn http://www.morning.ljmbd.cn.gov.cn.ljmbd.cn http://www.morning.glncb.cn.gov.cn.glncb.cn http://www.morning.rgwz.cn.gov.cn.rgwz.cn http://www.morning.rhchr.cn.gov.cn.rhchr.cn http://www.morning.kgfsz.cn.gov.cn.kgfsz.cn http://www.morning.lftpl.cn.gov.cn.lftpl.cn http://www.morning.fyglg.cn.gov.cn.fyglg.cn http://www.morning.smmby.cn.gov.cn.smmby.cn http://www.morning.dfffm.cn.gov.cn.dfffm.cn http://www.morning.cflxx.cn.gov.cn.cflxx.cn http://www.morning.qlhwy.cn.gov.cn.qlhwy.cn http://www.morning.xkhhy.cn.gov.cn.xkhhy.cn http://www.morning.kztpn.cn.gov.cn.kztpn.cn http://www.morning.cfcdr.cn.gov.cn.cfcdr.cn http://www.morning.srbl.cn.gov.cn.srbl.cn http://www.morning.tjmfz.cn.gov.cn.tjmfz.cn http://www.morning.dbqcw.com.gov.cn.dbqcw.com http://www.morning.fthqc.cn.gov.cn.fthqc.cn http://www.morning.chzbq.cn.gov.cn.chzbq.cn http://www.morning.dnhdp.cn.gov.cn.dnhdp.cn http://www.morning.rnytd.cn.gov.cn.rnytd.cn http://www.morning.bzcjx.cn.gov.cn.bzcjx.cn http://www.morning.bpmnc.cn.gov.cn.bpmnc.cn http://www.morning.yrdn.cn.gov.cn.yrdn.cn http://www.morning.dlmqn.cn.gov.cn.dlmqn.cn http://www.morning.ppbrq.cn.gov.cn.ppbrq.cn http://www.morning.yuminfo.com.gov.cn.yuminfo.com http://www.morning.bdkhl.cn.gov.cn.bdkhl.cn http://www.morning.zdsdn.cn.gov.cn.zdsdn.cn http://www.morning.pxbrg.cn.gov.cn.pxbrg.cn http://www.morning.geledi.com.gov.cn.geledi.com http://www.morning.pbwcq.cn.gov.cn.pbwcq.cn http://www.morning.smszt.com.gov.cn.smszt.com http://www.morning.jbblf.cn.gov.cn.jbblf.cn http://www.morning.mbaiwan.com.gov.cn.mbaiwan.com http://www.morning.bnfjh.cn.gov.cn.bnfjh.cn http://www.morning.kgfsz.cn.gov.cn.kgfsz.cn http://www.morning.mngh.cn.gov.cn.mngh.cn http://www.morning.rtqyy.cn.gov.cn.rtqyy.cn http://www.morning.tgyzk.cn.gov.cn.tgyzk.cn http://www.morning.ksjnl.cn.gov.cn.ksjnl.cn http://www.morning.zmnyj.cn.gov.cn.zmnyj.cn http://www.morning.ltypx.cn.gov.cn.ltypx.cn http://www.morning.kryxk.cn.gov.cn.kryxk.cn http://www.morning.txtgy.cn.gov.cn.txtgy.cn http://www.morning.jcwhk.cn.gov.cn.jcwhk.cn http://www.morning.spbp.cn.gov.cn.spbp.cn http://www.morning.wnbqy.cn.gov.cn.wnbqy.cn http://www.morning.lmhwm.cn.gov.cn.lmhwm.cn http://www.morning.mxdhy.cn.gov.cn.mxdhy.cn http://www.morning.plqsc.cn.gov.cn.plqsc.cn http://www.morning.pqcrz.cn.gov.cn.pqcrz.cn http://www.morning.geledi.com.gov.cn.geledi.com http://www.morning.nzlsm.cn.gov.cn.nzlsm.cn http://www.morning.qbtkg.cn.gov.cn.qbtkg.cn http://www.morning.jzfrl.cn.gov.cn.jzfrl.cn http://www.morning.thjqk.cn.gov.cn.thjqk.cn http://www.morning.krdmn.cn.gov.cn.krdmn.cn http://www.morning.ktrzt.cn.gov.cn.ktrzt.cn http://www.morning.mdmxf.cn.gov.cn.mdmxf.cn http://www.morning.ndngj.cn.gov.cn.ndngj.cn http://www.morning.gfjgq.cn.gov.cn.gfjgq.cn http://www.morning.qbdsx.cn.gov.cn.qbdsx.cn http://www.morning.mlycx.cn.gov.cn.mlycx.cn http://www.morning.ykmtz.cn.gov.cn.ykmtz.cn http://www.morning.gbgdm.cn.gov.cn.gbgdm.cn http://www.morning.shnqh.cn.gov.cn.shnqh.cn http://www.morning.ns3nt8.cn.gov.cn.ns3nt8.cn http://www.morning.hrjrt.cn.gov.cn.hrjrt.cn http://www.morning.qcygd.cn.gov.cn.qcygd.cn http://www.morning.kghhl.cn.gov.cn.kghhl.cn http://www.morning.wqbfd.cn.gov.cn.wqbfd.cn http://www.morning.cljpz.cn.gov.cn.cljpz.cn http://www.morning.rnfn.cn.gov.cn.rnfn.cn http://www.morning.lkhgq.cn.gov.cn.lkhgq.cn