网站首页 > 基础教程 正文
Pandas概述
Pandas 是 Python 语言的一个扩展程序库,他是一个强大的分析结构化数据的工具集,基础是 Numpy,用于数据分析。安装Pandas命令 :pip install pandas
Pandas 的主要数据结构是 Series (一维数据)与 DataFrame(二维数据),Series 是一种类似于一维数组的对象,它由一组数据(各种Numpy数据类型)以及一组与之相关的数据标签(即索引)组成。DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)。这篇文章我们主要介绍Series!
Pandas Series
Pandas Series 类似表格中的一个列(column),类似于一维数组,可以保存任何数据类型。Series 由索引(index)和列组成,可以通过列表,元组,数组,字典来进行创建,本文重点讲解通过列表方式创建。
函数如下:
pandas.Series( data, index, dtype, name, copy)
参数说明:
? data:一组数据(ndarray 类型)。
? index:数据索引标签,如果不指定,默认从 0 开始。
? dtype:数据类型,默认会自己判断。
? name:设置名称。
? copy:拷贝数据,默认为 False。
一个简单的例子
import pandas as pd
a = [1, 2, 3]
var = pd.Series(a)
print(var)
print(type(var))
输出
0 1
1 2
2 3
dtype: int64
<class 'pandas.core.series.Series'>
其中输出内容具体解释如下:
如果想获取 var 中的某个值,写法与list一致,如下
print(var[0])
输出1
使用tolist()方法可以将其转化成list
print(var.tolist())
输出[1, 2, 3]
通过如下方法可以获取var的index 和value值
print(var.index.tolist())
print(var.values.tolist())
输出:
[0, 1, 2]
[1, 2, 3]
增加元素
var[3]='a'
print(var.values.tolist())
输出 [1, 2, 3, 'a']
删除元素
del var[0]
print(var.values.tolist())
输出 [2, 3, 'a']
List不和Series
看到这里,有的同学不禁会问,Series与List很像啊?他们有什么区别呢?
Series就是一维数组,从结构上特别像列表,默认的Series是从0到N进行编号的,这个特性和列表很像,打印列表的时候是横排显示,Series是竖排显示,并且显示出了索引。
二者比较如下:
1、列表可以包含任意对象的有序集合 ,Series不可以;
2、二者都可以通过下标索引(位置偏移)访问元素;
3、列表可以改变长度、可任意嵌套,Series不可以;
4、二者都支持原位改变,原位改变指的是序列中的某个元素支持在原位置被改变。
个人体会,Series与List最大的不同就是:Series为了能更快的处理数据,某列必须都是相同数据类型的。
猜你喜欢
- 2024-10-12 一文掌握Numpy矩阵 numpy矩阵乘法实现原理
- 2024-10-12 矩阵运算库:Numpy 矩阵运算库不支持点乘
- 2024-10-12 Python 的整数与 Numpy 的数据溢出
- 2024-10-12 整理20个Pandas统计函数 pandas函数汇总
- 2024-10-12 人工智能深度学习基础——Numpy模块知识汇总
- 2024-10-12 关于类型为numpy,TensorFlow.tensor,torch.tensor的shape变化
- 2024-10-12 Numpy基础用法汇总 numpy基础及取值操作
- 2024-10-12 想学好Python数据分析,一定要掌握的重要模块之numpy
- 2024-10-12 numpy基础之ndarray的数据类型dtype
- 2024-10-12 Python数据分析笔记#5.1 Numpy-多维数组
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)