Python数据分析库pandas ------ pandas

数据转换

 删除重复元素

  DataFrame对象的duplicated()函数可用来检测重复的行,返回元素为布尔型的Series对象。 每个元素对

应一行,如果该行与其他行重复(也就是说该行不是第一次出现),则元素为True; 如果跟前面不重复,则元

素就为False。

  返回元素为布尔值的Series对象用处很大,特别适用于过滤操作。通常,所有重复的行都需要从DataFrame

对象中删除。pandas库的drop_duplicates()函数实现了删除功能,该函数返回的是删除重复行后的DataFmme对

象。

 1 dframe = pd.DataFrame({ ‘color‘: [‘white‘,‘white‘,‘red‘,‘red‘,‘white‘],‘value‘: [2,1,3,3,2]})
 2 print(dframe)
 3 print(dframe.duplicated())
 4 # 返回元素为布尔值的Series对象用处很大,特别适用于过滤操作。
 5 print( dframe[dframe.duplicated()])
 6 print(dframe.drop_duplicates())
 7 输出:
 8    color  value
 9 0  white      2
10 1  white      1
11 2    red      3
12 3    red      3
13 4  white      2
14 0    False
15 1    False
16 2    False
17 3     True
18 4     True
19 dtype: bool
20    color  value
21 3    red      3
22 4  white      2
23    color  value
24 0  white      2
25 1  white      1
26 2    red      3

 用映射替换元素

  要用新元素替换不正确的元素,需要定义一组映射关系。在映射关系中,旧元素作为键,新元素作为值。

  DataFrame对象中两种旧颜色被替换为正确的元素。还有一种常见情况,是把NaN替换为其他值,比如0。

这种情况下,仍然可以用replace()函数,它能优雅地完成该项操作。

 1 frame8 = pd.DataFrame({
 2     ‘item‘: [‘ball‘, ‘mug‘, ‘pen‘, ‘pencil‘, ‘ashtray‘],
 3     ‘color‘: [‘white‘, ‘rosso‘, ‘verde‘, ‘black‘, ‘yellow‘],
 4     ‘price‘: [5.56, 4.20, 1.30, 0.56, 2.75]
 5 })
 6 print(frame8)
 7 newcolors = {
 8     ‘rosso‘: ‘red‘,
 9     ‘verde‘: ‘green‘
10 }
11 print(frame8.replace(newcolors))
12
13 ser = pd.Series([13, np.nan, 4, 6, np.nan, 3])
14 print(ser.replace(np.nan, 0))

  输出结果:

  

 用映射添加元素

  下面只是部分功能的展示,详情请参考官方文档

 1 frame9  = pd.DataFrame({
 2     ‘item‘:[‘ball‘,‘mug‘,‘pen‘,‘pencil‘,‘ashtray‘],
 3     ‘color‘:[‘white‘,‘red‘,‘green‘,‘black‘,‘yellow‘]
 4 })
 5 print(frame9)
 6 price = {
 7     ‘ball‘ : 5.56,
 8     ‘mug‘ : 4.20,
 9     ‘bottle1‘ : 1.30,
10     ‘scissors‘ : 3.41,
11     ‘pen‘ : 1.30,
12     ‘pencil‘ : 0.56,
13     ‘ashtray‘ : 2.75
14 }
15 frame9[‘price‘] = frame9[‘item‘].map(price)  # 这里是按‘item’的对应关系添加
16 print(frame9)

  输出结果:

  

  官方文档案例:

1 df = pd.DataFrame({
2     ‘A‘: [‘bat‘, ‘foo‘, ‘ibat‘],
3     ‘B‘: [‘abc‘, ‘bar‘, ‘xyz‘]
4 })
5 # r‘^ba.$‘是匹配最后三个字符中前面量为ba的;$匹配结尾的
6 print(df.replace(to_replace=r‘^ba.$‘, value=‘new‘, regex=True))

  输出结果:(上面关于正则的知识点请点击参考博客

  

 重命名轴索引

原文地址:https://www.cnblogs.com/dan-baishucaizi/p/9413165.html

时间: 2024-10-08 04:23:44

Python数据分析库pandas ------ pandas的相关文章

Python——数据分析,Numpy,Pandas,matplotlib

由于图片内容太多,请拖动至新标签页再查看 Python--数据分析,Numpy,Pandas,matplotlib 原文地址:https://www.cnblogs.com/Jery-9527/p/10804069.html

python 数据分析--数据处理工具Pandas(1)

说明: 本文用到的数据集下载地址: 链接:https://pan.baidu.com/s/1zSOypUVoYlGcs-z2pT2t0w 提取码:z95a Pands模块可以帮助数据分析师轻松地解决数据的预处理问题,如数据类型的转换.缺失值的处理.描述性统计分析.数据的汇总等.Pandas模块的核心操作对象就是序列(Series)和数据框(DataFrame).序列可以理解为数据集中的一个字段,数据框是指含有至少两个字段(或序列)的数据集. 1. 序列和数据框的构造 1.1 构造序列 构造一个序

《Python 数据分析》笔记——pandas

Pandas pandas是一个流行的开源Python项目,其名称取panel data(面板数据)与Python data analysis(Python 数据分析)之意. pandas有两个重要的数据结构:DataFrame和Series pandas数据结构之DataFrame pandas的DataFrame数据结构是一种带标签的二维对象,与Excel的电子表格或者关系型数据表非常相似. 可以用下列方式来创建DataFrame: 1.从另一个DataFrame创建DataFrame 2.

python 数据分析库介绍

1 引言 高效处理数据的python工具: 与外界进行交互: 读写各种文件格式和数据库 准备: 对数据进行清理.修整.整合.规范化.重塑.切片切换.变形等处理以便进行分析 转换: 对数据集做一些数学和统计运算以产生新的数据集.你如说,根据分组变量对一个大表进行聚合 建模和计算: 将数据进行统计模型.机器学习或其他计算工具联系起来 展示: 创建交互式或静态的图片或文字摘要 2 重要的库 (1)NumPy(Numerical Python) 菜鸟教程 numerical 英 /nju?'mer?k(

Python数据分析库pandas ------ merge、concatenation 、pd.concat合并与拼接

对于合并操作,熟悉SQL的读者可以将其理解为JOIN操作,它使用一个或多个键把多行数据 结合在一起. 事实上,跟关系型数据库打交道的开发人员通常使用SQL的JOIN查询,用几个表共有的引用 值(键)从不同 的表获取数据.以这些键为基础,我们能够获取到列表形式的新数据,这些数据是对几个表中的数据进行组合 得到的.pandas库中这类操作叫作合并,执行合并操作的函数为 merge(). 1 import pandas as pd 2 import numpy as np 3 4 frame1 = p

Python数据分析库pandas ------ 初识 matpoltlib:matplotliab画图怎么显示中文;设置坐标标签;主题;画子图;pandas时间数据格式转化;图例;

打开画布,传入x,y的值,可以简单的画出曲线图 1 import matplotlib.pyplot as plt 2 3 c = [ 4 0.9012051747628913, 0.9012051747628913, 0.9012051747628913, 0.9012051747628913, 5 0.9012051747628913, 0.9012051747628913, 0.9012051747628913, 0.9012051747628913, 6 0.90120517476289

python 数据分析--数据处理工具Pandas(2)

在前面的学习中主要了解了Pandas如何构造序列和数据框,如何读取和写入各种格式的数据,以及如何对数据进行初步描述,本文将进一步了解Pandas如何处理字符串和日期数据,数据清洗,获取数据子集,透视表,分组聚合操作等内容. 4. Pandas处理字符串和日期数据 待处理的数据表 数据处理要求: 更改出生日期birthday和手机号tel两个字段的数据类型. 根据出生日期birthday和开始工作日期start_work两个字段新增年龄和工龄两个字段. 将手机号tel的中间四位隐藏起来. 根据邮箱

python数据分析之numpy+pandas+scipy+matplotlib+scikit-learn安装

摘要 利用python来进行数据分析的时候,需要安装一些常见的工具包,如numpy,pandas,scipy等等,在安装的过程中,经常遇到一些安装细节的问题,如版本不匹配,需要依赖包没有正确安装等等,本文汇总梳理了下几个必要安装包的安装步骤,希望对读者有帮助,环境是windows 64 bit+python2.7.11. 一.安装python2.7.11 进入官网:https://www.python.org/downloads/release/python-2711/ 下载如下的连接: 下载之

Python 数据分析包:pandas 基础

pandas 是基于 Numpy 构建的含有更高级数据结构和工具的数据分析包 类似于 Numpy 的核心是 ndarray,pandas 也是围绕着 Series 和 DataFrame 两个核心数据结构展开的 .Series 和 DataFrame 分别对应于一维的序列和二维的表结构.pandas 约定俗成的导入方法如下: from pandas import Series,DataFrame import pandas as pd Series Series 可以看做一个定长的有序字典.基本