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 ...
随机推荐
- java+实现上传文件夹
我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用. 首先我们需要了解的是上传文件三要素: 1.表单提交方式:post (get方式提交有大小 ...
- php+列出目录文件
用过浏览器的开发人员都对大文件上传与下载比较困扰,之前遇到了一个php文件夹上传下载的问题,无奈之下自己开发了一套文件上传控件,在这里分享一下.希望能对你有所帮助.此控件PC全平台支持包括mac,li ...
- 扩展性很强的python实现方式
一:先上目录结构 二:各个文件的代码 # -*- coding: utf-8 -*- # @Author : Felix Wang # @time : 2018/7/4 16:42 from util ...
- TensorFlow使用记录 (十二): ℓ1 and ℓ2 Regularization
实现方式 以 ℓ2 Regularization 为例,主要有两种实现方式 1. 手动累加 with tf.name_scope('loss'): loss = tf.losses.softmax_c ...
- Vue_(组件通讯)组件
Vue组件 传送门 组件Component,可扩展HTML元素,封装可重用的代码.通俗的来说,组件将可重用的HTML元素封装成为标签方便复用: 组件的使用: 使用全局方法Vue.extend创建构造器 ...
- BZOJ刷题列表【转载于hzwer】
沿着黄学长的步伐~~ 红色为已刷,黑色为未刷,看我多久能搞完吧... Update on 7.26 :之前咕了好久...(足见博主的flag是多么emmm......)这几天开始会抽时间刷的,每天几道 ...
- Python最高效爬虫框架
Overview Scrapy is a fast high-level screen scraping and web crawling framework, used to crawl websi ...
- TCP层sendmsg系统调用的实现分析
概述 sendmsg系统调用在tcp层的实现是tcp_sendmsg函数,该函数完成以下任务:从用户空间读取数据,拷贝到内核skb,将skb加入到发送队列的任务,调用发送函数:函数在执行过程中会锁定控 ...
- LeetCode 21. 合并两个有序链表(Merge Two Sorted Lists)
题目描述 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4 输出:1->1-& ...
- ip地址后面的斜杠24
ip地址后面的斜杠24表示掩码位是24位的,即用32位二进制表示的子网掩码中有连续的24个“1”:11111111 11111111 11111111 00000000,将其转化为十进制,就是:255 ...