我的编程空间,编程开发者的网络收藏夹
学习永远不晚

pandas知识点(数据结构)

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

pandas知识点(数据结构)

1.Series
生成一维数组,左边索引,右边值:
In [3]: obj = Series([1,2,3,4,5])
In [4]: obj
Out[4]:
0    1
1    2
2    3
3    4
4    5
dtype: int64
In [5]: obj.values
Out[5]: array([1, 2, 3, 4, 5], dtype=int64)
In [6]: obj.index
Out[6]: RangeIndex(start=0, stop=5, step=1)

 

创建对各个数据点进行标记的索引:

In [7]: obj2 = Series([4,1,9,7], index=["a","c","e","ff"])
In [8]: obj2
Out[8]:
a     4
c     1
e     9
ff    7
dtype: int64
In [9]: obj2.index
Out[9]: Index(['a', 'c', 'e', 'ff'], dtype='object')

 

取一个值或一组值:

In [10]: obj2["c"]
Out[10]: 1
In [11]: obj2[["c","e"]]
Out[11]:
c    1
e    9
dtype: int64

 

数组运算,会显示索引:

In [12]: obj2[obj2>3]
Out[12]:
a     4
e     9
ff    7
dtype: int64

 

Series还可以看作有序的字典,很多字典操作可以使用:
In [13]: "c" in obj2
Out[13]: True

 

直接用字典创建Series:
In [14]: data = {"name":"liu","year":18,"sex":"man"}
In [15]: obj3 = Series(data)
In [16]: obj3
Out[16]:
name    liu
year     18
sex     man
dtype: object

 

用字典结合列表创建Series:
In [17]: list1 = ["name","year","mobile"]
In [18]: obj4 = Series(data,index=list1)
In [19]: obj4
Out[19]:
name      liu
year       18
mobile    NaN
dtype: object

PS:因为data字典中没有mobile所以值为NaN

 
检测数据是否缺失:
In [20]: pd.isnull(obj4)
Out[20]:
name      False
year      False
mobile     True
dtype: bool
 
In [21]: pd.notnull(obj4)
Out[21]:
name       True
year       True
mobile    False
dtype: bool
 
In [22]: obj4.isnull()
Out[22]:
name      False
year      False
mobile     True
dtype: bool
 
In [23]: obj4.notnull()
Out[23]:
name       True
year       True
mobile    False
dtype: bool

 

Series的name属性:
In [7]: obj4.name = "hahaha"
In [8]: obj4.index.name = "state"
In [9]: obj4
Out[9]:
state
name      liu
year       18
mobile    NaN
Name: hahaha, dtype: object

 

2.DataFrame
构建DataFrame
In [13]: data = {
"state":[1,1,2,1,1],
"year":[2000,2001,2002,2004,2005],
"pop":[1.5,1.7,3.6,2.4,2.9]
}
In [14]: frame = DataFrame(data)
In [15]: frame
Out[15]:
   state  year  pop
0      1  2000  1.5
1      1  2001  1.7
2      2  2002  3.6
3      1  2004  2.4
4      1  2005  2.9

 

设定行与列的名称,如果数据找不到则产生NA值:
In [18]: frame2 = DataFrame(
data,
columns=["year","state","pop","debt"],
index=["one","two","three","four","five"]
)
In [19]: frame2
Out[19]:
       year  state  pop debt
one    2000      1  1.5  NaN
two    2001      1  1.7  NaN
three  2002      2  3.6  NaN
four   2004      1  2.4  NaN
five   2005      1  2.9  NaN

 

将DataFrame的列获取成为Series:
In [7]: frame2.year
Out[7]:
one      2000
two      2001
three    2002
four     2004
five     2005
Name: year, dtype: int64

PS:返回的索引不变,且name属性被设置了

 

获取行:
In [11]: frame2.loc["three"]
Out[11]:
year     2002
state       2
pop       3.6
debt      NaN
Name: three, dtype: object

 

赋值列:
In [12]: frame2['debt'] = 16.5
In [13]: frame2
Out[13]:
       year  state  pop  debt
one    2000      1  1.5  16.5
two    2001      1  1.7  16.5
three  2002      2  3.6  16.5
four   2004      1  2.4  16.5
five   2005      1  2.9  16.5

 

如果赋值列表或数组,长度需要相等;如果赋值Series,则精确匹配索引
In [17]: val = Series([1.2,1.5,1.7], index=["two","four","five"])
In [18]: frame2['debt'] = val
In [19]: frame2
Out[19]:
       year  state  pop  debt
one    2000      1  1.5   NaN
two    2001      1  1.7   1.2
three  2002      2  3.6   NaN
four   2004      1  2.4   1.5
five   2005      1  2.9   1.7

 

如果列不存在,则创建:
In [21]: frame2["eastern"] = frame2.state == 1
In [22]: frame2
Out[22]:
       year  state  pop  debt  eastern
one    2000      1  1.5   NaN     True
two    2001      1  1.7   1.2     True
three  2002      2  3.6   NaN    False
four   2004      1  2.4   1.5     True
five   2005      1  2.9   1.7     True

 

对于嵌套字典,DataFrame会解释为外层为列,内层为行索引:
In [23]: dic = {"name":{"one":"liu","two":"rui"},"year":{"one":"23","two":"22"}}
In [24]: frame3 = DataFrame(dic)
In [25]: frame3
Out[25]:
    name year
one  liu   23
two  rui   22

 

显示行,列名:
In [26]: frame3.index.name = "index"
In [27]: frame3.columns.name = "state"
In [28]: frame3
Out[28]:
state name year
index
one    liu   23
two    rui   22

 

返回二维ndarray形式的数据:
In [29]: frame3.values
Out[29]:
array([['liu', '23'],
       ['rui', '22']], dtype=object)

 

3.索引对象
In [30]: obj = Series(range(3),index=["a","b","c"])
In [31]: index = obj.index
In [32]: index
Out[32]: Index(['a', 'b', 'c'], dtype='object')

 

index对象不可修改的,使得index在多个数据结构中可以共享
In [35]: index = pd.Index(np.arange(3))
In [36]: obj2 = Series([1.5,0.5,2],index=index)
In [37]: obj2.index is index
Out[37]: True
 

 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

pandas知识点(数据结构)

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

pandas知识点(数据结构)

1.Series生成一维数组,左边索引,右边值:In [3]: obj = Series([1,2,3,4,5])In [4]: objOut[4]:0 11 22 33 44 5dtype: int64In
2023-01-30

Python3数据结构知识点有哪些

本篇内容主要讲解“Python3数据结构知识点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python3数据结构知识点有哪些”吧!数字 Number整型(int) - 通常被称为是整型或
2023-06-29

Java数据结构知识总结

本篇内容主要讲解“Java数据结构知识总结”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java数据结构知识总结”吧!目录1、逻辑结构和物理结构2、顺序结构,链式结构,栈,队列,二叉树二叉树普通
2023-06-20

数据库知识点总结 -

目录数据库介绍SQLSQL定义SQL的分类:DDL(数据定义语言:操作数据库和表)DML(数据操纵语言:操作数据(增删改))DQL(查询表中的数据记录)(重点)视图事务数据库介绍数据库DataBase:用于存储和管理数据的仓库特点:持久化存储数据,数据库就是一
数据库知识点总结 -
2021-05-02

总结数据库知识点

本篇内容主要讲解“总结数据库知识点”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“总结数据库知识点”吧!存储引擎InnoDBInnoDB 是 MySQL 默认的事务型存储引擎,只要在需要它不支持的
2023-06-16

web前端的数据结构知识点有哪些

本篇内容介绍了“web前端的数据结构知识点有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1)什么叫算法?算法就是计算或解决问题的步骤。
2023-06-27

常用的Java数据结构知识点有哪些

小编给大家分享一下常用的Java数据结构知识点有哪些,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1. 数据结构分类按照线性和非线性可以将Java数据结构分为两大类:①线性数据结构:数组、链表、栈、队列②非线性数据结构:树
2023-06-29

Python数据分析--Pandas知识

本文主要是总结学习pandas过程中用到的函数和方法, 在此记录, 防止遗忘1. 重复值的处理利用drop_duplicates()函数删除数据表中重复多余的记录, 比如删除重复多余的ID.1 import pandas as pd2 df
2023-01-30

MySql数据库基础知识点总结

本文实例讲述了MySql数据库基础知识点。分享给大家供大家参考,具体如下:数据库基本操作1)创建数据库基本语法: create database 数据库名称 ;创建应该名称为itcast的数据库。sql语法如下:``create datab
2022-05-19

pandas知识点(基本功能)

1.重新索引如果reindex会根据新索引重新排序,不存在的则引入缺省:In [3]: obj = Series([4.5,7.2,-5.3,3.6], index=["d","b","a","c"])In [4]: objOut[4]:d
2023-01-30

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录