import pandas as pd

import numpy as np

import names

'''

写在前面的话:

1、series与array类型的不同之处为series有索引,而另一个没有;series中的数据必须是一维的,而array类型不一定

2、可以把series看成一个定长的有序字典,可以通过shape,index,values等得到series的属性

'''

# 1、series的创建

'''

(1)由列表或numpy数组创建

默认索引为0到N-1的整数型索引,如s1;

可以通过设置index参数指定索引,如s2;

通过这种方式创建的series,不是array的副本,即对series操作的同时也改变了原先的array数组,如s3

(2)由字典创建

字典的键名为索引,键值为值,如s4;

'''

n1 = np.array([1, 4, 5, 67, 7, 43, ])

s1 = pd.Series(n1)

# print(s1)

'''

1

4

5

67

7

43

dtype: int32

'''

s2 = pd.Series(n1, index=['a', 'b', 'c', 'd', 'e', 'f'])

# print(s2)

'''

a 1

b 4

c 5

d 67

e 7

f 43

dtype: int32

'''

# print(n1)

'''

[ 1 4 5 67 7 43]

'''

s1[2] = 100

s3 = s1

# print(s3)

'''

1

4

100

67

7

43

dtype: int32

'''

# print(n1)

'''

[ 1 4 100 67 7 43]

'''

dict1 = {}

for i in range(10, 15):

# names.get_last_name(),随机生成英文名字

dict1[names.get_last_name()] = i

s4 = pd.Series(dict1)

# print(s4)

'''

Poole 10

Allen 11

Davis 12

Roland 13

Brehm 14

dtype: int64

'''

# 2、series的索引

'''

(1)通过index取值,可以通过下标获取,也可以通过指定索引获取,如s6,s7

(2)通过.loc[](显示索引)获取,这种方式只能获取显示出来的索引,无法通过下标获取,如s7(推荐)

(3)隐式索引,使用整数作为索引值,使用.icol[],如s9(推荐)

'''

s5 = pd.Series(np.array([1, 5, 9, 7, 6, 4, 52, 8]), index=[list('abcdefgh')])

# print(s5)

'''

a 1

b 5

c 9

d 7

e 6

f 4

g 52

h 8

dtype: int32

'''

s6 = s5[2]

# print(s6)

'''

'''

s7 = s5['c']

# print(s7)

'''

c 9

dtype: int32

'''

s8 = s5.loc['c']

# print(s8)

'''

c 9

dtype: int32

'''

s9 = s5.iloc[2]

# print(s9)

'''

'''

# 3、series的切片

'''

1、series的切片和列表的用法类似,不同之处在于建议使用.loc[:]和.iloc[:],如s10和s11。当然直接使用[:]也可以。

2、当遇到特别长的series,我们支取出前5条或后5条数据时可以直接使用.head()或.tail()

'''

s5 = pd.Series(np.array([1, 5, 9, 7, 6, 4, 52, 8]), index=[list('abcdefgh')])

# print(s5)

'''

a 1

b 5

c 9

d 7

e 6

f 4

g 52

h 8

dtype: int32

'''

s10 = s5.loc['b':'g']

# print(s10)

'''

b 5

c 9

d 7

e 6

f 4

g 52

dtype: int32

'''

s11 = s5.iloc[1:7]

# print(s11)

'''

b 5

c 9

d 7

e 6

f 4

g 52

dtype: int32

'''

# 4、关于NaN

'''

(1)NaN是代表空值, 但不等于None。两者的数据类型不一样,None的类型为,而NaN的类型为;

(2)可以使用pd.isnull(),pd.notnull(),或自带isnull(),notnull()函数检测缺失数据

'''

# print(type(None),type(np.nan))

'''

'''

s12 = pd.Series([1,2,None,np.nan],index=list('烽火雷电'))

# print(s12)

'''

烽 1.0

火 2.0

雷 NaN

电 NaN

dtype: float64

'''

# print(pd.isnull(s12))

'''

烽 False

火 False

雷 True

电 True

dtype: bool

'''

# print(pd.notnull(s12))

'''

烽 True

火 True

雷 False

电 False

dtype: bool

'''

# print(s12.notnull())

'''

烽 True

火 True

雷 False

电 False

dtype: bool

'''

# print(s12.isnull())

'''

烽 False

火 False

雷 True

电 True

dtype: bool

'''

# 取出series中不为空的值

# print(s12[s12.notnull()])

'''

烽 1.0

火 2.0

dtype: float64

'''

# series的name属性

'''

'''

s12.name = '风水'

# print(s12)

'''

烽 1.0

火 2.0

雷 NaN

电 NaN

Name: 风水, dtype: float64

'''

python中series是什么_pandas中的series数据类型详解相关推荐

  1. Python学习【第2篇】:基本数据类型(详解)

    1.数字 2.字符串中的方法 str test = "xiaoxing"#首字母大写v = test.capitalize()print(v)运行后结果如下Xiaoxing tes ...

  2. python二维元组_python中读入二维csv格式的表格方法详解(以元组/列表形式表示)

    如何去读取一个没有表头的二维csv文件(如下图所示)? 并以元组的形式表现数据: ((1.0, 0.0, 3.0, 180.0), (2.0, 0.0, 2.0, 180.0), (3.0, 0.0, ...

  3. python2.7除法_对python中的float除法和整除法的实例详解

    从python2.2开始,便有两种除法运算符:"/"."//".两者最大区别在: python2.2前的版本和python2.2以后3.0以前的版本的默认情况下 ...

  4. python中文意思k-对python中的*args与**kwgs的含义与作用详解

    在定义函数的时候参数通常会使用 *args与**kwgs,形参与实参的区别不再赘述,我们来解释一下这两个的作用. *args是非关键字参数,用于元组,**kw是关键字参数 例如下面的代码 def fo ...

  5. python可以使用二维元组吗_python中读入二维csv格式的表格方法详解(以元组/列表形式表示)...

    怎么去读取一个没有表头的二维csv文件(如下图所示)? 并以元组的形式表现数据: ((1.0, 0.0, 3.0, 180.0), (2.0, 0.0, 2.0, 180.0), (3.0, 0.0, ...

  6. python反向缩进_在Pycharm中对代码进行注释和缩进的方法详解

    在Pycharm中对代码进行注释和缩进的方法详解 一.注释 1. #单行注释 2. """ 多行注释 """ 3. pycharm多行注释快 ...

  7. python中怎么计数_浅谈python中统计计数的几种方法和Counter详解

    1) 使用字典dict() 循环遍历出一个可迭代对象中的元素,如果字典没有该元素,那么就让该元素作为字典的键,并将该键赋值为1,如果存在就将该元素对应的值加1. lists = ['a','a','b ...

  8. python实现单例模式的几种方式_基于Python中单例模式的几种实现方式及优化详解...

    单例模式 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在.当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场. ...

  9. python中with open写csv文件_Python中的CSV文件使用with语句的方式详解

    是否可以直接使用with语句与CSV文件?能够做这样的事情似乎很自然: import csv with csv.reader(open("myfile.csv")) as read ...

  10. python元组读取到列表_python中读入二维csv格式的表格方法详解(以元组/列表形式表示)...

    如何去读取一个没有表头的二维csv文件(如下图所示)? 并以元组的形式表现数据: ((1.0, 0.0, 3.0, 180.0), (2.0, 0.0, 2.0, 180.0), (3.0, 0.0, ...

最新文章

  1. 【 Verilog HDL 】基本运算逻辑的Verilog HDL 模型
  2. android 资源引用 自定义标题栏
  3. 【图像分割应用】医学图像分割(一)——脑区域分割
  4. 苹果和虫子问题C++
  5. Java精选笔记_JDBC
  6. EasyUI之Tree树形结构(一)
  7. foundApp宣传展示页企业网站模板
  8. 公众号应用模块-社群广场v2.2.9 修复版
  9. httpclient依赖_.NetCore 3.1高性能微服务架构:封装调用外部服务的接口方法HttpClient客户端思路分析...
  10. 手机电脑壁纸!让你的桌面变得超酷
  11. PHP的性能大坑--strtotime函数
  12. CTP: 11:31分等非交易时段报单录入的应对
  13. 求N!二进制中末尾1的位置(类似于求N!中有多少个5的问题)
  14. 计算机如何共享桌面,怎么共享电脑屏幕?
  15. 小米com android phone,小米电视助手(com.xiaomi.mitv.phone.tvassistant) - 2.5.7 - 应用 - 酷安...
  16. 数据压缩作业——浊音,清音,爆破音时频分析
  17. 一个440MHz的微带线耦合电路
  18. 电脑触摸屏无法使用、失灵解决办法
  19. html雾霾蓝色号rgb,新型流行色—雾霾蓝
  20. Springboot列车调度信息系统的设计与实现4guf9计算机毕业设计-课程设计-期末作业-毕设程序代做

热门文章

  1. PCL三维点云拼接融合
  2. 查看程序用运时占用的内存
  3. SPSS和excel数据分析之平均值和标准误差对比图
  4. Atitit。Js调用后台语言 java c#  php swing android  swt的方法大总结
  5. API 网关的创建与管理:待续
  6. 【月径流预测】基于matlab海洋捕食者算法优化BP神经网络月径流预测【含Matlab源码 2002期】
  7. 【运动学】基于matlab GUI地球自转模拟【含Matlab源码 1115期】
  8. 【物理应用】基于matlab GUI工程供配电系统【含Matlab源码 1051期】
  9. 【多目标优化求解】基于matlab遗传算法求解多目标配电网重构模型【含Matlab源码 970期】
  10. 【交通流预测】基于matlab小波神经网络短时交通流预测【含Matlab源码 400期】