Series与list
一、索引
1.1 索引顺序
list的索引为从0到n-1。不可更改索引。
Series的索引:如果未定义为从0到n-1。如果定义,则为定义的索引,一旦定义完成,索引对象将不可更改。但是索引是可以改变的。
import pandas as pd
series_1 = pd.Series([1, 2, 3])
series_2 = pd.Series([1, 2, 3], index=['a', 'b', 'c'])
series_3 = pd.Series(series_2, index=['a', 'b', 'd'])
list_1 = list([1, 2, 3]) print('series_1\n', series_1)
print('series_2\n', series_2)
print('series_3\n', series_3)
print('list_1\n', list_1)

1.2 索引查值
1.2.1 有对应的索引
import pandas as pd
series_1 = pd.Series([1, 2, 3])
series_2 = pd.Series([1, 2, 3], index=['a', 'b', 'c'])
list_1 = list([1, 2, 3]) result_1 = series_1[1]
result_2 = series_2['b']
result_3 = list_1[1] print('result_1', result_1)
print('result_2', result_2)
print('result_3', result_3)

1.2.2 无对应的索引
都会报错。
二、加减乘除操作
2.1 加操作
Series进行加操作时,相同索引进行相加。如果索引有一方未有则为NaN。
也可以是同时加上一个数。
list则是直接拼接。注意list元素不仅可以为数字,还可以为字符串等。
import pandas as pd
series_1 = pd.Series([1, 2, 3])
series_21 = pd.Series([4, 5, 6])
series_2 = pd.Series([4, 5, 6], index=['a', 'b', 'c'])
list_1 = list(range(1, 4, 1))
list_2 = list(range(4, 7, 1))
series_3 = series_1 + series_2
series_4 = series_1 + series_21
series_5 = series_1 + 5
list_3 = list_1 + list_2
# list_4 = list_1 + 2 报错 print('series_3', series_3)
print('series_4', series_4)
print('series_5', series_5)
print('list_3', list_3)

2.2 减操作
Series与加操作相同,对应索引进行操作。list没有减操作。
2.3 乘操作
Series与加操作相同,对应索引进行操作。list则是直接拼接。
import pandas as pd
series_1 = pd.Series([1, 2, 3])
series_21 = pd.Series([4, 5, 6])
series_2 = pd.Series([4, 5, 6], index=['a', 'b', 'c'])
list_1 = list(range(1, 4, 1))
list_2 = list(range(4, 7, 1))
series_3 = series_1 * series_2
series_4 = series_1 * series_21
series_5 = series_1 * 5
# list_3 = list_1 * list_2 报错
list_4 = list_1 * 2 print('series_3', series_3)
print('series_4', series_4)
print('series_5', series_5)
print('list_4', list_4)

2.4 除操作
Series与加操作相同,对应索引进行操作。list没有除操作。
三、其他操作
3.1 删除对象操作
import pandas as pd
series_2 = pd.Series([1, 2, 3], index=['a', 'b', 'c'])
series_3 = series_2.drop('a', inplace=False) #inplace默认为False,series_2不发生改变,如果为True,则series会发生改变
list_1 = list([1, 2, 3])
del list_1[1] print('series_2\n', series_2)
print('series_3\n', series_3)
print('list_1\n', list_1)

Series与list的更多相关文章
- 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作
一.reindex() 方法:重新索引 针对 Series 重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
- 数据分析(8):Series介绍
Series Series由一组数据及索引组成 索引 采用默认索引 data = pd.Series([4, 3, 2, 1]) 自定义索引 data = pd.Series([4, 3, 2, 1] ...
- POJ 3233Matrix Power Series
妈妈呀....这简直是目前死得最惨的一次. 贴题目: http://poj.org/problem?id=3233 Matrix Power Series Time Limit: 3000MS Mem ...
- highchart 添加新的series
code: <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" c ...
- C# Chart控件,chart、Series、ChartArea曲线图绘制的重要属性
http://blog.sina.com.cn/s/blog_621e24e20101cp64.html 为避免耽误不喜欢这种曲线图效果的亲们的时间,先看一下小DEMO效果图: 先简单说一下,从图中可 ...
- pandas 学习(1): pandas 数据结构之Series
1. Series Series 是一个类数组的数据结构,同时带有标签(lable)或者说索引(index). 1.1 下边生成一个最简单的Series对象,因为没有给Series指定索引,所以此时会 ...
- (转)LSTM NEURAL NETWORK FOR TIME SERIES PREDICTION
LSTM NEURAL NETWORK FOR TIME SERIES PREDICTION Wed 21st Dec 2016 Neural Networks these days are th ...
- Time Series data 与 sequential data 的区别
It is important to note the distinction between time series and sequential data. In both cases, the ...
- survey on Time Series Analysis Lib
(1)I spent my 4th year Computing project on implementing time series forecasting for Java heap usage ...
随机推荐
- 《剑指offer》算法题第五天
今日题目: 反转链表 合并两个排序的链表 树的子结构 二叉树的镜像 对称二叉树 今日重点是1反转链表,3树的子结构,以及5对称二叉树. 1. 反转链表 题目描述: 输入一个链表,反转链表后,输出链表的 ...
- TTTTTTTTTTTTTTTT #7 div1 A Breadth-First Search by Foxpower 在线LCA(倍增),模拟
A - Breadth-First Search by Foxpower Time Limit:2000MS Memory Limit:131072KB 64bit IO Format ...
- luoguP1160 队列安排 x
P1160 队列安排 982通过 2.3K提交 题目提供者 该用户不存在 标签 云端 难度 普及/提高- 时空限制 1s / 128MB 题目描述 一个学校里老师要将班上N个同学排成一列,同学被编号为 ...
- 【WebStorm】前端工具开发利器webstrom专篇
---------------------------------------------------------------------------------[亲身实测] WebStorm混搭sv ...
- MERGE INTO 解决大数据量复杂操作更新慢的问题
现我系统中有一条复杂SQL,由于业务复杂需要关联人员的工作离职三个表,并进行分支判断,再计算人员的字段信息,由于人员多,分支多,计算复杂等原因,一次执行需要5min,容易卡死,现在使用MERGE IN ...
- Spring Cloud Feign声明式服务调用(转载)+遇到的问题
转载:原文 总结: 1.pom添加依赖 2.application中填写正确的eureka配置 3.启动项中增加注解 @EnableFeignClients 4.填写正确的调用接口 通过原文使用Fei ...
- 如何使用Navicat监控mysql数据库服务器
https://jingyan.baidu.com/article/c33e3f48de5208ea15cbb525.html 打开Navicat 点击[工具]菜单,选择[服务器监控]下的[MyS ...
- koa 项目实战(一)创建项目
1.安装模块 npm install koa koa-router --save npm install -g nodemon 2.入口文件 app.js const Koa = require('k ...
- Fiddler抓包原理和使用详解
iddler抓包工具在APP开发过程中使用非常频繁,对开发者理解HTTP网络传输原理以及分析定位网络方面的问题非常有帮助.今天抽点时间出来总结一下Fiddler在实际开发过程中的应用. 我开发过程中使 ...
- 执行docker run命令时报错Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
一.解决办法: 修改host 二.步骤如下 2.1 安装dig工具 sudo apt-get install dnsutils -y (ubuntu下的安装方法) 2.2 找到registry-1. ...