一、索引

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的更多相关文章

  1. 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作

    一.reindex() 方法:重新索引 针对 Series   重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...

  2. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  3. 数据分析(8):Series介绍

    Series Series由一组数据及索引组成 索引 采用默认索引 data = pd.Series([4, 3, 2, 1]) 自定义索引 data = pd.Series([4, 3, 2, 1] ...

  4. POJ 3233Matrix Power Series

    妈妈呀....这简直是目前死得最惨的一次. 贴题目: http://poj.org/problem?id=3233 Matrix Power Series Time Limit: 3000MS Mem ...

  5. highchart 添加新的series

    code: <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" c ...

  6. C# Chart控件,chart、Series、ChartArea曲线图绘制的重要属性

    http://blog.sina.com.cn/s/blog_621e24e20101cp64.html 为避免耽误不喜欢这种曲线图效果的亲们的时间,先看一下小DEMO效果图: 先简单说一下,从图中可 ...

  7. pandas 学习(1): pandas 数据结构之Series

    1. Series Series 是一个类数组的数据结构,同时带有标签(lable)或者说索引(index). 1.1 下边生成一个最简单的Series对象,因为没有给Series指定索引,所以此时会 ...

  8. (转)LSTM NEURAL NETWORK FOR TIME SERIES PREDICTION

    LSTM NEURAL NETWORK FOR TIME SERIES PREDICTION Wed 21st Dec 2016   Neural Networks these days are th ...

  9. Time Series data 与 sequential data 的区别

    It is important to note the distinction between time series and sequential data. In both cases, the ...

  10. survey on Time Series Analysis Lib

    (1)I spent my 4th year Computing project on implementing time series forecasting for Java heap usage ...

随机推荐

  1. js--BOM对象(2)

    一.window对象是整个bom的核心 二.window对象的属性: history:(有关客户访问过的url信息) 方法: back() 加载 history 对象列表中的前一个URL forwar ...

  2. selenium.common.exceptions.StaleElementReferenceException: Message: stale element reference: element is not attached to the page document

    抓取网页代码后,由于是在同一个li标签下,所以使用一次性抓取,所有的a标签,然后循环做不同的操作,但是抛出找不到元素异常. def office_page(_chrome: Chrome): sn = ...

  3. fastjson =< 1.2.47 反序列化漏洞浅析

    fastjson =< 1.2.47 反序列化漏洞浅析 iiusky 洛米唯熊 今天 文章出处: https://www.03sec.com/3240.shtmlhttps://www.secq ...

  4. Angular5.0之 安装指定版本Angular CLI

    我们可能会发现按照网上的方式下载安装后,使用Angular CLI生成的项目并不是我们想要的Angular的版本,因为在我们没有指定安装版本的前提下,默认会下载最新的版本安装,然而不同的Angular ...

  5. C++中的to_string()

    目录 C++中的to_string() 注:原创不易,转载请务必注明原作者和出处,感谢支持! C++中的to_string() C++中的 to_string()系列函数将数值转换成字符串形式.注意, ...

  6. LC 683. K Empty Slots 【lock,hard】

    There is a garden with N slots. In each slot, there is a flower. The N flowers will bloom one by one ...

  7. 什么叫DMZ区?DMZ区有什么作用?应该怎样构建DMZ

    您的公司有一堆电脑,但可以归为两大类:客户机.服务器.所谓客户机就是主动发起连接请求的机器,所谓服务器就是被动响应提供某些服务的机器.服务器又可以分仅供企业内网使用和为外网提供服务两种. 所以,如果把 ...

  8. numpy之填充为nan的数据为该列平均值

    # coding=utf-8 import numpy as np ''' 填充nan的数据,为该列的平均值 ''' def fill_ndarray(t1): for i in range(t1.s ...

  9. flutter 延时函数delay Loading页面

    loading 页面 import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; class Lo ...

  10. SqlServer索引的原理与应用(转载)

    SqlServer索引的原理与应用 索引的概念 索引的用途:我们对数据查询及处理速度已成为衡量应用系统成败的标准,而采用索引来加快数据处理速度通常是最普遍采用的优化方法. 索引是什么:数据库中的索引类 ...